Страница 1 из 1
-=Файлы=- Решите 2 задачки)
Добавлено: 05 апр 2009, 19:32
Worlok
Пожалуйста, решите задачу....выручайте!!!!Простые задачи, но блин я просто вкурить не могу как они решаются...препод лох!)))
короче:
1)Дан символьный файл f. Получить копию файла в файле g
2)Cведения об автомобиле состоят из его марки, номера и фамилии владельца. Дан файл f, содержащий сведения о нескольких автомобилях. Найти кол-во автомобилей каждой марки
народ, выручайте...
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 05 апр 2009, 22:50
Naeel Maqsudov
Увы, какой препод - такие получаются и студенты

Какая версия Pascal?
Эти задачи по-разному решаются в разных версиях.
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 05 апр 2009, 23:20
Worlok
Turbo Pascal 7.0
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 05 апр 2009, 23:58
Naeel Maqsudov
1)
Код: Выделить всё
var
f,g:file of byte;
b:byte;
begin
assign(f,'c:\source.dat');
reset(f);
assign(g,'c:\source copy.dat');
rewrite(g);
while not eof(f) do begin
read(f,b);
write(g,b);
end;
close(f);
close(g);
end.
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 06 апр 2009, 00:01
Worlok
спасибо бальшое)))
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 06 апр 2009, 00:04
Naeel Maqsudov
2)
файл уже дан или надо еще написать программу, котороая этот файл создает?
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 06 апр 2009, 00:10
Worlok
файл дан)))
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 06 апр 2009, 07:51
Naeel Maqsudov
Ну так надо его приложить.
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 06 апр 2009, 14:21
Worlok
вот и файл
Re: -=Файлы=- Решите 2 задачки)
Добавлено: 06 апр 2009, 15:22
Naeel Maqsudov
Вот только теперь понятно, что это не задача на записи, а просто на текстовые файлы!
Код: Выделить всё
var
f:text;
names:array[1..100] of string;
counts:array[1..100] of integer;
i,n:integer;
s:string;
begin
assign(f,'c:\auto.txt');
reset(f);
n:=0;
while not eof(f) do begin
readln(f,s);
if pos(' ',s) > 0 then s:=copy(s,1,pos(' ',s)-1);
i:=n;
while (i>0) and (names[i]<>s) do dec(i);
if i=0 then begin
inc(n);
names[n]:=s;
counts[n]:=1;
end else begin
inc(counts[i]);
end;
end;
for i:=1 to n do writeln('Марка ',names[i],' количество ',counts[i]);
end.