% function echo_filter:
%     1) υπολογίζει και επιστρέφει την κρουστική απόκριση h του ΓΧΑ συστήματος
%     2) φιλτράρει το σήμα εισόδου signal και παράγει την έξοδο y_echo
%
% ΕΙΣΟΔΟΣ:
% signal = σήμα εισόδου
% times = διάνυσμα που περιέχει τις χρονικές στιγμές που θέλουμε να ξεκινά η ηχώ (σε δευτερόλεπτα)
% attenuations = διάνυσμα που περιέχει τα πλάτη της ηχούς στις αντίστοιχες χρονικές
%                στιγμές που έχετε ορίσει στο διάνυσμα times
% fs = συχνότητα δειγματοληψίας του σήματος
%
% ΕΞΟΔΟΙ:
% y_echo = έξοδος του ΓΧΑ συστήματος (σήμα με ηχώ)
% h = κρουστική απόκριση του ΓΧΑ συστήματος που υλοποιεί την ηχώ

function [y_echo, h] = echo_filter_tostudents(signal, times, attenuations, fs)

h(1) = ?????  % Ο πρώτος συντελεστής του φίλτρου h(t)

% Υπολογισμός της κρουστικής απόκρισης h(t) = δ(t) + Σ a_i δ(t - t_i)
for i = 1:length(times) % για όσες χρονικές στιγμές έχετε ορίσει στο διάνυσμα times
    samples(i) = ???????; % μετατρέψτε τις χρονικές στιγμές σε δείγματα
    h(floor(samples(i))) = ???????????????????; % Θέστε τα σωστά πλάτη
end

y_echo = filter(h, 1, signal); % φιλτράρισμα του σήματος - παραγωγή της εξόδου
