Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ плохо читает с файла

Автор: maksimla 17.02.2008 15:39

задачу решите пожалуйста .
сделаете программу
если выстрелить N раз. если попадет премия 2 дополнительных патрона. в файле tiras.txt в первой строчке написана число N. В других N строчках вписан ноль (0) если непонял, а если попал (1). если выстрел был удачный в этой же строчке о дополнительных точности выстрела.
пример семь выстрелов удачных
5
0
1 0 0
1 1 0 0 0
0
1 0 1 1 1 0 0 0 0
напишите программу которая в фаил taikyk.txt написала скока выстрелов удачных.
в программе нельзя применять eoln и eof функций вместо их пишите циклы.

program tiras;
var n,
b,a, i,c,d,m,e,o: integer;
pradDuom,
rezult: text;
begin
assign (pradDuom, 'tiras.TXT');
assign (rezult, 'taikyk.TXT');
reset (pradDuom);
rewrite (rezult);
read (pradDuom, n);
for i := 1 to n do
begin
read (pradDuom, a);
writeln(a);
readln;
b := b + a;
end;
writeln (rezult, b);
close (pradDuom);
close (rezult)
end.

Автор: andriano 17.02.2008 18:57

Варианта 2:
1. Читаешь символьную строку целиком, после чего ее разбираешь (оптимально по скорости выполнения).
2. После чтения числа из файла проверяешь его и при необходимости дочитываешь из этой же строки следующие числа (короче текст программы).

Автор: maksimla 17.02.2008 20:05

а как это сделать и где можна о этом почитать

Автор: Ozzя 18.02.2008 11:49


var
f: text;
s: string;
...
while not eof(f) do
begin
...
ReadLn(f,s);
...
end;

Автор: maksimla 18.02.2008 13:40

Цитата(Ozzя @ 18.02.2008 6:49) *


var
f: text;
s: string;
...
while not eof(f) do
begin
...
ReadLn(f,s);
...
end;


ты хоть читал что написал я вот что нильзя в программе нельзя применять eoln и eof функций вместо их пишите циклы.

Автор: volvo 18.02.2008 15:31

Цитата
а как это сделать и где можна о этом почитать
Чего "как сделать"? Прочесть первое число в файле, и потом в цикле ровно столько же раз прочесть из файла строку, и посчитать, сколько раз в этих строках встречается символ '1'? В чем проблема вообще?

Автор: maksimla 19.02.2008 13:42

но я и в цикл зделал все но толко первую цифру читает в цикле и все

Автор: volvo 19.02.2008 13:56

Цитата
толко первую цифру читает в цикле и все
Ты читаешь в цикле числа, а надо читать строки. "Чувствуешь разницу?" (С)