ShurenkoPasha12
30.10.2022 13:09

Написать программу на PROLOG 0

Пусть имеется информация обо всех парах некоторого ряда городов, имеющих прямое сообщение. Требуется: написать программу, которая для любых двух городов сможет определить, можно ли попасть из одного города в другой.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ggez2
28.10.2020 05:29
Для простоты обьяснения выберем тройку кораблей которая будет заходить в ответвление. Пускай это будет  "Обь", "Восток" и "Петропавловск" -  далее А1, А2, А3

Вторая група кораблей будет только ездить туда сюда "Мир", "Енисей" и "Россия" - далее группа В
0) Если надо, корабли группы В задним ходом возвращаются на места, чтоб дать кораблю из группы А заплыть в ответвление 
1) Корабль А1 заходит в ответвление
2) Корабли группы В плывут вперед, так чтоб зайти за ответвление и выпустить корабль оттуда
3) Корабль А1 выплывает из ответвления и уплывает 

Шаги 0-3 повторяются для всех кораблей группы А

4) Корабли групы В проплывают дальше по освободившемуся каналу
0,0(0 оценок)
Ответ:
5655к
09.04.2023 11:08
//Pascal ABC.NET v3.1 сборка 1172

var
  ar: array of integer;
  n, k2, k3, k4, k5, i: integer;
  r: real;

begin
  write('Сколько учеников?');
  readln(n);
  setlength(ar, n);
  writeln('Введите оценки:');
  for i := 0 to n - 1 do
  begin
    readln(ar[i]);
    case ar[i] of
      2: inc(k2);
      3: inc(k3);
      4: inc(k4);
      5: inc(k5);
    else
      writeln('Не оценка');
      exit;
    end;
  end;
  writeln('2:', k2);
  writeln('3:', k3);
  writeln('4:', k4);
  writeln('5:', k5);
  write('Успеваемость=', (k3 + k4 + k5) / n * 100:0:1);
end.

Пример ввода:
Сколько учеников?6
Введите оценки:
2
2
3
4
5
5
Пример вывода:
2:2
3:1
4:1
5:2
Успеваемость=66.7
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота