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

(желательно на C++) Написать программу. У нас имеется социальная сеть, где записи о пользователях и отношения дружбы задаются в двух файлах. файл 1 (файл с анкетами) содержит идентификатор пользователя, Имя, Фамилию, дату рождения и имеет следующий вид:

id123; Егор Васильев; 11.05.2001 id354; Петр Васин; 13.06.2005 id923; Антон Кулаков; 05.01.1996

Файл 2 содержит записи отношений дружбы. В каждой строке на первом месте стоит идентификатор пользователя, далее через разделитель его друзья. Отношения дружбы однонаправленные (как в примере файла) пример

id123; id354 id354; id123; id923 id923; id354; id123

Функционал программы:

вывести Имена/фамилия всех пользователей и возраст (не дату рождения)
По запросу пользователя, который указывает двух пользователей соцсети (вводит фамилию), проверить возможность отправки письма от одного пользователя другому. если напрямую отправить нельзя, рассчитать последовательность отправки сообщений через цепочку знакомств (вывести данную последовательность).
Сообщения можно отправить только подтверждённым (взаимным) друзьям. Если при вводе фамилии есть несколько однофамильцев в базе, предложить выбрать из имеющихся.

👇
Открыть все ответы
Ответ:
larjon
larjon
14.02.2023
Const
  problems : array [0..9] of String = ('x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10', 'x1+5=10','x1+5=10', 'x1+5=10', 'x1+5=10');
  answers : array [0..9] of String = ('-5', '-5', '-5', '-5', '-5', '-5', '-5', '-5', '-5', '-5');
var
  countOfAnswers, counter: integer;
  userAnswer: String;
begin
  countOfAnswers := 0;
  for counter:=0 to 9 do
    begin
      write('Введите ответ уравнения ', problems[counter], ' : ');
      readln(userAnswer);
      if userAnswer = answers[counter] then Inc(countOfAnswers);
    end;
if countOfAnswers > 8 then writeln('Отлично')
    else if countOfAnswers > 5 then writeln('Хорошо')
    else writeln('Плохо');
end.
4,4(82 оценок)
Ответ:
nastyaozernova
nastyaozernova
14.02.2023
// PascalABC.NET 3.0, сборка 1073
const
  nn=30;
  mm=30;
var
  a:array[1..mm,1..nn] of integer;
  m,n,i,j,imax,imin,jmax,jmin:integer;
begin
  Writeln('Введите число строк и столбцов массива: '); Read(m,n);
  Randomize;
  Writeln('*** Исходный массив ***');
  imin:=1; jmin:=1; imax:=1; jmax:=1;
  for i:=1 to m do begin
    for j:=1 to n do begin
      a[i,j]:=Random(51)-25;
      Write(a[i,j]:4);
      if a[i,j] mod 2 = 0 then begin
        if a[i,j]<a[imin,jmin] then
          begin imin:=i; jmin:=j end
        else
          if a[i,j]>a[imax,jmax] then
            begin imax:=i; jmax:=j end
      end
    end;
    Writeln
  end;
  Writeln('*** Результирующий массив ***');
  for i:=1 to m do begin
    for j:=1 to n do begin
      if (i=imin) and (j=jmin) or (i=imax) and (j=jmax) then a[i,j]:=2*a[i,j]
      else a[i,j]:=3*a[i,j];
      Write(a[i,j]:4)
    end;
    Writeln
  end
end.

Тестовое решение:
Введите число строк и столбцов массива:
10 8
*** Исходный массив ***
 -18   9  23 -18  -3  12   4 -22
  16 -24   7  -1  11   5  21 -25
  20 -11  14 -13  13 -21  13  -2
 -20   2  10 -19  -4   5  -7 -21
  16  17 -11   1   2 -18  21   0
  -2 -10  -6   3  25  16   5  -9
 -12   9   7 -21  22  -1 -25 -23
  22   0 -24  21 -23  -3   7 -15
   8   3   8  20 -10  -5  -2  13
  -6 -12  15  -3  11 -16  -1 -10
*** Результирующий массив ***
 -54  27  69 -54  -9  36  12 -66
  48 -48  21  -3  33  15  63 -75
  60 -33  42 -39  39 -63  39  -6
 -60   6  30 -57 -12  15 -21 -63
  48  51 -33   3   6 -54  63   0
  -6 -30 -18   9  75  48  15 -27
 -36  27  21 -63  44  -3 -75 -69
  66   0 -72  63 -69  -9  21 -45
  24   9  24  60 -30 -15  -6  39
 -18 -36  45  -9  33 -48  -3 -30
4,6(26 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ