М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
адам121
адам121
06.03.2023 09:40 •  Информатика

Решить по ! создать файлы: фамилия автолюбителя, марка его машины, её цвет, номер машины( буква, за ней 3 цифры, затем еще две буквы). вывести на экран фамилии, марку машины и цвет машин тех автолюбителей, чьи номера начинаются и заканчиваются одной буквой или сообщить об отсутствии таковых. далее вывести на экран фамилии и номера машин тех автолюбителей, которые имеют машину заданной марки и цвета. марку и цвет запросить у пользователя. если таких автомобилей нет, сообщить об этом. всем заранее за : )

👇
Ответ:
Arisha2544
Arisha2544
06.03.2023
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(Query2());
end.
4,6(95 оценок)
Открыть все ответы
Ответ:
daниил1
daниил1
06.03.2023
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!

№1

begin
  var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
  Writeln('Количество отрицательных значений ',a.Where(t->t<0).Count);
end.

Пример
n= 15
3 39 3 2 43 43 -37 -2 -50 3 -25 15 -7 4 21
Количество отрицательных значений 5

№2

begin
  var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:');
  Writeln('*** Исходный массив ***');
  var a:=MatrRandom(m,n,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var k:=ReadInteger('k=');
  if a.ElementsByRow.Any(t->t>k) then Writeln('Есть')
  else Writeln('Нет')
end.

Пример
Количество строк и столбцов в массиве: 5 8
*** Исходный массив ***
  -9  48 -98 -35 -33 -29  44 -32
 -33 -48 -62  11  45  53  52  90
 -96  -1  68 -21  15 -72 -78 -28
  44  15 -53 -33 -27  89 -60 -49
  28 -73 -99  81  23  -9 -93 -66

k= 92
Нет
4,6(15 оценок)
Ответ:
ksyu5551
ksyu5551
06.03.2023

получения информации

Информация может быть:

· открытой (более или менее доступной);

· полузакрытой (не засекреченной, но контролируемой теми, кого она касается);

· секретной (полагаемой по различным соображениям ключевой в определенных ситуациях).

Главными носителями информации являются:

1. Знающие люди;

К ним относятся:

· Эксперт. Это - индивид, чьи профессиональные знания и контакты (как работа, так и хобби) обеспечивают первоклассную ориентацию в разрабатываемом вопросе.

· Внутренний информатор (осведомитель). - Это - человек из группировки противника, завербованный и поставляющий фактуру по материальным, моральным и иным весомым для него причинам.

4,4(39 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ