Есть ответ 👍

Почему программа выдает 4312 вместо 4321 в чем я ошиблась? ? procedure swap(var a, b: real); var t: real; begin t : = a; a : = b; b : = t; end; var a, b, c, d: real; begin writeln('введите четыре числа '); readln(a, b, c, d); if (a < b) then swap(a, b); if (b < c) then swap(b, c); if (d < a) then swap(d, a); if (a < d) then swap(a, d); writeln(a, b, c, d) end. : напишите процедуру, которая переставляет 4 числа в порядке убывания. скажите

194
277
Посмотреть ответы 3

Ответы на вопрос:

dariabelka
4,7(71 оценок)

не правильно находится самое максимальное число, рассматриваются не все варианты.

нужно изменить программу.

var a, b, c, d: real;

begin

writeln('введите четыре числа ');

readln(a, b, c, d);

// ищем максимальное число, заносим в а

if (a < b) then swap(a, b);

if (a < c) then swap(a, c);

if (a < d) then swap(a, d);  

// ищем максимальное из оставшихся, заносим в b

if (b < c) then swap(b, c);

if (b < d) then swap(b, d);

// ищем максимальное из c и d

if (c < d) then swap(c, d);

writeln(a,' ', b,' ', c,' ', d)

end.

введите четыре числа  

15 25 13 19

25 19 15 13

amnat5247
4,5(57 оценок)

программа работает так , как ее запрограммировал программист, а не как он хотел.

с процедурой swap нет проблем. давайте рассмотрим алгоритм шаг за шагом.

вводятся 4 числа: 1,2,3,4

a =   1; b = 2; c = 3; d = 4

далее программа делает 4 шага:

1) a < b? (1 < 2)   => true (истина) => результат: 2134

2) b < c? (1 < 3)   => true (истина) => результат: 2314

3) d < a? (4 < 2)   => false (ложь) => результат: 2314

4) a < d? (2 < 4)   => true (истина) => результат: 4312

каков итог? в самом синтаксисе ошибок никаких нет. ошибка в вашем алгоритме.

что сделать? исправить алгоритм


Чтобы-первым-достичь-100-надо-заставить-противника-при-последнем-ходе-назвать-число-90-до-99-прибавив-к-этому-числу-от-10-до-1-мы-выигрываем.

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS