Помощь - Поиск - Пользователи - Календарь
Полная версия: Сформировать файл тестовых данных целого типа.
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Romka
Сформировать файл тестовых данных целого типа.Найти сумму элементов файла,принадлежащего интервалу [-10,10] .И блок схему к этой программе.
Помогите решить,а то я с этой задачей запарился уже :molitva:
volvo
Тебе сюда (такие задачи уже решались):
http://forum.pascal.net.ru/index.php?act=Search&f=
Romka
volvo что-то я не нашёл.Решите эту программу.Пожалуйста :molitva:
Romka
Укажите ошибку в этой программе:
Program Lab_9;
Uses Crt;
var:longint;a:array[-10;10] of integer;
f1,f2:file of integer;
begin
clrscr;
For i:=-10 to 10 do begin
Write('a[',i,']=');
readln(a[i]);
end;
assign(f1,'prev.bin');
assign(f2,'vtor.bin');
rewrite(f1);
For i:=-10 to 10 do
Write(f1,a[i]);
close(f1);
rewrite(f2);
resert(f1);
For i:=-10 to filesize(f1) do
begin
read(f1,a[i]);
If a[i]>0 then
Write(f2,a[i]);
end;
close(f2);
assign(f2,'vtor.bin');
resert(f2);
For i:=-10 to filesize(f2)
do begin
read(f2,a[i]);
writeln(a[i]);
end;
close(f2);
End.

Какая здесь ошибка и сделайте пожалуйста блок схему к этой программе.
hiv
Ошибки:
1) Определи глобальную переменную i типа integer;
2) Разве бывает размер файла -9 или -3? :no:
Тогда зачем это:
For i:=-10 to filesize(f1) do

И распиши поподробней задачу, а то написано одно решаешь другое...
У тебя интервал [-10,10] задан для значений чисел?
Может вначале с алгоритмом разберемся, а то по твоему решению видно что ты не понимаешь что делаешь?
Romka
hiv задание такое которое я выше написал.А вот решать я незнаю как.Решил,значит неправильно.Помоги решить?
volvo
Program Lab_9;
Uses Crt;
Var
f: text;
x, s: integer;

begin
clrscr;
assign(f, 'my_file.txt');
rewrite(f);
repeat
Writeln('Введите очередной элемент (-9999 для окончания ввода данных):');
readln(x);
if x <> -9999 then writeln(f, x);
until x = -9999; { условие окончания ввода в файл }

reset(f); s := 0;
while not eof(f) do begin
readln(f, x);
if (x >= -10) and (x =< 10) then inc(s, x);
end;
writeln('Сумма элементов попадающих в интервал [-10, 10] = ', s);
close(f)
readln;
end.


Никакого второго файла не нужно (по крайней мере, в задании про него не сказано)...
Romka
Сделайте блок схему к программе выше :molitva:
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.