-=Файлы=- Решите 2 задачки)
Пожалуйста, решите задачу....выручайте!!!!Простые задачи, но блин я просто вкурить не могу как они решаются...препод лох!)))
короче:
1)Дан символьный файл f. Получить копию файла в файле g
2)Cведения об автомобиле состоят из его марки, номера и фамилии владельца. Дан файл f, содержащий сведения о нескольких автомобилях. Найти кол-во автомобилей каждой марки
народ, выручайте...
короче:
1)Дан символьный файл f. Получить копию файла в файле g
2)Cведения об автомобиле состоят из его марки, номера и фамилии владельца. Дан файл f, содержащий сведения о нескольких автомобилях. Найти кол-во автомобилей каждой марки
народ, выручайте...
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Увы, какой препод - такие получаются и студенты 
Какая версия Pascal?
Эти задачи по-разному решаются в разных версиях.

Какая версия Pascal?
Эти задачи по-разному решаются в разных версиях.
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
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.
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
2)
файл уже дан или надо еще написать программу, котороая этот файл создает?
файл уже дан или надо еще написать программу, котороая этот файл создает?
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Ну так надо его приложить.
вот и файл
- Вложения
-
[Расширение txt было запрещено, вложение больше недоступно.]
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Вот только теперь понятно, что это не задача на записи, а просто на текстовые файлы!
Код: Выделить всё
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.