Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Fuel
1 / 1 / 0
Регистрация: 04.01.2010
Сообщений: 6
#1

Записи. - Pascal

19.02.2010, 11:33. Просмотров 357. Ответов 0
Метки нет (Все метки)

Сведения об автомобиле состоят из его марки, номера и фамилии владельца.
Создать файл, содержащий сведения о нескольких автомобилях, после чего определить количество автомобилей каждой марки.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
 uses 
crt;
type Tauto=record  {тип запись с полями по условию}
          mar:string[15];{марка}
          nom:string[15];{номер}
          fam:string[15];{фамилия}
          end;
var a:Tauto; {переменная типа Tauto для хранения одной записи}
    f:file of Tauto;{типизированный файл того же типа для хранения всех записей}
    i,n,k,m:integer;
    c:char; {символьная переменная для окончания цикла ввода данных}
    s:array[1..50] of string;{строковый массив для хранения названий марок}
begin
clrscr;
assign(f,'auto.dat'); {связываем переменную с файлом на диске}
rewrite(f); {открываем для записи}
n:=1;s[n]:=''; {формируем массив названий марок, первый элемент-пустая строка}
repeat  {заполняем данные}
write('Marka: ');readln(a.mar);{вводим марку}
m:=0;
for i:=1 to n do
if s[i]=a.mar then m:=m+1;{смотрим была ли такая марка раньше}
if m=0 then {если нет}
begin
inc(n);
s[n]:=a.mar;{заносим ее в массив}
end
else if m>0 then {если да}
begin
     inc(n);
     s[n]:=''; {заносим пустую строку}
   end;
write('Nomer: ');readln(a.nom); {вводим номер и фамилию}
write('Familia: ');readln(a.fam);
write(f,a); {заносим звпись в файл}
writeln('press enter dlya sledyuwei zapisi');
writeln('press esc dlya prosmotra informacii o markax auto');
c:=readkey; {ожидаем команды прекратить ввод данных}
until c=#27; {по нажатию Esc прекращаем}
clrscr;  {очищаем экран}
writeln('Informacia o kolichestve auto raznyh marok:');
writeln;
for i:=1 to n do  {идем по массиву названий марок}
if s[i]<>''then  {если не пустая строка}
   begin
     k:=0;
     reset(f); {открываем файл для чтения}
     while not eof(f) do
        begin
          read(f,a); {читаем записи}
          if s[i]=a.mar then k:=k+1; {считаем количество очередной марки}
        end;
     writeln('Kolichestvo auto marki ',s[i],' = ',k);{выводим}
     close(f); {закрываем файл, т.к. он прочитан до конца, и все повторяем со следующей маркой}
  end;
readln
end.
Если не трудно дайте ссылку на задачки, где есть процедуры удаления и коррекции записей.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2010, 11:33
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Записи. (Pascal):

Добавление и удаление записи, поиск записи с максимальной зарплатой, сортировка по алфавиту
Помогите, пожалуйста!:help: Очень нужно сделать до 26!(а если не сложно, то...

Удаление записи из массива записи или файла
Доброго времени суток... Задача стоит такая. Есть массив записей, прочитали из...

Дан файл записей. Одно из полей записи ФИО. Вывести все записи в виде таблицы в алфавитном порядке ФИО
Я сделал ввод файла, а вот как сделать такой вывод не знаю. Помогите...

Записи.Упорядочивание записи.
При решении списка задач который мне был выдан столкнулся с трудностью в...

Записи(2)
Дан массив записей, содержащих дату (число, месяц, год) и время (час, минута,...

записи
Помогите пожалуйста с програмкой оч нужною.Заранее спасибо. распечатать...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.02.2010, 11:33
Привет! Вот еще темы с решениями:

записи
помогите плииз... известны фамилии всех 30 сотрудников фирмы и их...

Записи
Даны результаты переписи населения, которые хранятся в памяти ЭВМ. Напечатать...

Записи
По данным сведениям об учениках класса определить среднюю массу мальчиков и...

Записи
По данным сведениям об учениках класса определить среднюю массу мальчиков и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru