Другие языки программирования и технологии

Нужно составить программу в паскале!!

Дано N чисел. Нужно подчитать сумму чисел, которые в шеснадцатиричном представлении имеют ровно две цифры и последня не буква (A, B, C, D, E, F).
Вот я сделал, но не получается, пишет ошибка. Помогите!
var
k,N:integer;
s,i:real;
a:byte;
begin
assign(input,'input.txt') ;reset(input);
assign(output,'output.txt') ;rewrite(output);
read(k);
for k:= 1 to N do
if (a[i]>15) and (a[i]<256) and (a[i] mod 16) then
s:= 0;
s:=s+a[i];
a[i]:=1/16;
s:=s+a;
write(s);
close(output);
end.
var n, s, i, x :integer;
begin
{создание файла с числами наугад}
assign(output,'input.txt');
rewrite(output);
n:=5 + random (10);
writeln (output, n);
for i:=1 to n do
write (output, random (1000),' '); {здесь конечно вместо 1000 необходимо написать 10 001, так как (0<=x<=10000).}
close (output);

{подсчет данных и вывод в отдельный файл}
assign(input,'input.txt');
reset(input);
assign(output,'output.txt');
rewrite(output);
read(n);
for i:= 1 to n do
begin
read (x);
if (x > 15) and (x < 256) and (x mod 16 < 10) then s:=s+x;
end;
writeln(s);
close(output);
close(input);
end.
SS
Sergei Sudarev
20 124
Лучший ответ
Александр Пузач И вам спасибо!)
1. a - byte, а обращаешься ты к переменой как к массиву.

2. Ты нигде не вводишь числа, которые надо обработать.

3. if (a[i]>15) and (a[i]<256) and (a[i] mod 16 < 10) then

4. Индекс массива не может быть вещественным числом.

4. s := 0; должно быть ДО цикла. И s - целое число. В твоей программе вообще не должно быть вещественных чисел - ТОЛЬКО ЦЕЛЫЕ.

5. s:=s+a[i]; a[i]:=1/16; - абсолютно лишнее и ошибочное.

Весь код вычислений:

s := 0;
readln(n);
for i := 1 to n do begin
read(k);
if (k >= 16) and (k <= 255) and (k mod 16 < 10) then inc(s, k)
end;
writeln(s)
Александр Пузач Спасибо вам большое))!!!
Что пишет ошибка то? По ошибке и можно сказать в чём проблема.
Даймер Даймер Файл похоже не закрывает, отсутствует "close (input);" Выдает ошибку
Александр Пузач Нет свойства по умолчанию для типа 'byte',тоже самое и с real и integer