Форум программистов, компьютерный форум, киберфорум
Наши страницы

Pascal (Паскаль)

Войти
Регистрация
Восстановить пароль
 
Fuel
1 / 1 / 0
Регистрация: 04.01.2010
Сообщений: 6
#1

Записи. - Pascal

19.02.2010, 11:33. Просмотров 347. Ответов 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):

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

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

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

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

Записи - Pascal
1)Ввести в массив данные о междугородных телефонных разговорах, состоящие из пункта назначения, даты и времени начала и окончания...

Записи - Pascal
Помогите пожалуйста исходным текстом программы (сводной ведомости отличников курса). Требуется просто вывести на экран табличку, которая во...

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

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

Записи - Pascal
type name = (Mary, Jane, Kim, Bob, Jan, Pit, Tom, Sara, Bill, Pol); data = record male : boolean; {пол: true - мужской, false -...

Записи - Pascal
Народ никогда не умел решать с записями задачи, вот нужна помощь. Три простых задачки 1) Даны оценки группы студентов на экзаменах по 4...

Записи - Pascal
Описать запись с данными по таблице. Все программы составлять для N записей. N вводится с клавиатуры. Ввод исходных данных задать с...


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

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

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