![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Дан файл целых чисел. Создать файл действительных чисел , компонентами которого будут среднее арифметическое каждых 5 подряд записаных чисел.
В чем ошибка? Код:
var f,g:textfile;
i,k,s:integer;
begin
assignFile(f,'C:\input.txt');
reset(f);
assignFile(g,'C:\output.txt');
rewrite(g);
k:=0;
s:=0;
while (not eof(f))do
begin
readln(f,i);
if k<5 then
begin
s:=s+i;
k:=k+1;
end
else
begin
writeln(g,s/5:3);
s:=0;
k:=0;
end;
end;
closefile(f);
closefile(g);
end; |
|
#2
|
|||
|
|||
|
1. Не плохо было бы написать более подробно в чем проблема. Ну или хотя бы присоединить тестовый входной файл.
2. А если кол-во цифр во входном файле не кратно 5? Тогда у тебя на конце код потеряет одну группу чисел. 3. Я что-то не совсем уверен, что из текстового файла можно читать Integer. Попробуй чиать через строку, а потом конвертировать с помощью функции StrToInt. |
|
#3
|
|||
|
|||
|
Все разобрался.Сори за неудобства. Просто во входящем файле числа подряд записаны были , а не через пробел.
Последний раз редактировалось aerosm, 01.03.2011 в 16:15. |