Решить по ! создать файлы: фамилия автолюбителя, марка его машины, её цвет, номер машины( буква, за ней 3 цифры, затем еще две буквы). вывести на экран фамилии, марку машины и цвет машин тех автолюбителей, чьи номера начинаются и заканчиваются одной буквой или сообщить об отсутствии таковых. далее вывести на экран фамилии и номера машин тех автолюбителей, которые имеют машину заданной марки и цвета. марку и цвет запросить у пользователя. если таких автомобилей нет, сообщить об этом. всем заранее за : )
129
191
Ответы на вопрос:
Uses crt; const n = 10; type car = record drivername: string[20]; mark: string[20]; number: string[6]; color: string[20]; end; var cars: array[1..n] of car; i: integer; function cartostring(c: car): string; begin cartostring : = c.drivername + ' ' + c.mark + ' ' + c.number + ' ' + c.color; end; procedure writetofile(data, file_name: string); var f: text; begin assign(f, file_name); rewrite(f); write(f, data); close(f); end; procedure openfiletoread(file_name: string; var f: text); begin assign(f, file_name); reset(f); end; procedure createfileswithdata(drivers, marks, numbers, colors: string); var c: car; s1, s2, s3, s4: string; i: integer; begin for i : = 1 to n do begin {c.drivername : = random(9).tostring; } write('имя водителя = '); readln(c.drivername); s1 : = s1 + c.drivername + chr(13); {c.mark : = random(9).tostring; } write('марка = '); readln(c.mark); s2 : = s2 + c.mark + chr(13); {c.number : = random(100, 999).tostring + random(100, 999).tostring; } write('номер = '); readln(c.number); s3 : = s3 + c.number + chr(13); {c.color : = random(9).tostring; } write('цвет = '); readln(c.color); s4 : = s4 + c.color + chr(13); end; writetofile(s1, drivers); writetofile(s2, marks); writetofile(s3, numbers); writetofile(s4, colors); end; procedure readfiles(drivers, marks, numbers, colors: string); var f1, f2, f3, f4: text; i: integer; begin openfiletoread(drivers, f1); openfiletoread(marks, f2); openfiletoread(numbers, f3); openfiletoread(colors, f4); i : = 0; while not eof(f1) do begin i : = i + 1; readln(f1, cars[i].drivername); readln(f2, cars[i].mark); readln(f3, cars[i].number); readln(f4, cars[i].color); {не учитывается вариант что кол-во строк может быть разным} end; close(f1); close(f2); close(f3); close(f4); end; function query1(mark, color: string): string; var s: string; i: integer; begin for i : = 1 to n do if (cars[i].mark = mark) and (cars[i].color = color) then s : = s + cars[i].drivername + ' ' + cars[i].number + chr(13); if s = '' then query1 : = 'ничего не найдено' else query1 : = s; end; function query2(): string; var s: string; i: integer; begin for i : = 1 to n do if (cars[i].number[1] = cars[i].number[length(cars[i].number)]) then s : = s + cars[i].drivername + ' ' + cars[i].mark + ' ' + cars[i].color + chr(13); if s = '' then query2 : = 'ничего не найдено' else query2 : = s; end; var mark, color: string; begin createfileswithdata('f1.txt', 'f2.txt', 'f3.txt', 'f4.txt'); readfiles('f1.txt', 'f2.txt', 'f3.txt', 'f4.txt'); for i : = 1 to n do writeln(cartostring(cars[i])); write('искомая марка = '); readln(mark); write('искомый цвет = '); readln(color); writeln(query1(mark, color)); writeln('hомера начинаются и заканчиваются одной буквой'); writeln(; end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
AcidSmile30.06.2022 00:15
-
AgentDaleCoop05.11.2020 13:19
-
suv161217.05.2020 04:28
-
ivettapopova04521.12.2020 06:54
-
daniilanya201722.05.2023 15:30
-
Кунілінгус16.02.2022 07:38
-
булати10.03.2022 08:03
-
maltsevaalbina200605.08.2020 12:09
-
Панель1110.06.2023 01:19
-
ХЕЕЕЛПАНИТЕ07.12.2021 17:23
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.