Вопрос задан 27.04.2019 в 10:03. Предмет Информатика. Спрашивает Соловей Ваня.

(c++)Покажите, что приведенная программа не всегда верно определяет максимальное из трёх чисел,

записанных в переменные a, b и c: if (a > b) M = a; else M = b; if (с > b) M = с; else M = b; Приведите контрпример, то есть значения переменных, при котором в переменной M будет получен неверный ответ. Как нужно доработать программу, чтобы она всегда работала правильно?
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Аракелян Валерия.
А=10 b=8 c=9
доработать примерно так: if (a > b) and (a>c) M = a; 
else 
if (b > c) and (b>a)  M = b;
else 
if (с > b) and (c>a) M = с;
0 0
Отвечает Чурсина Юля.
A=3, b=2, c=1  
if (a > b) M = a; else  if (с > b) M = с; else   M = b; 

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Программа, которая была представлена, не всегда верно определяет максимальное из трех чисел, записанных в переменные `a`, `b` и `c`. Это происходит из-за ошибки в логике программы.

Контрпример:

Давайте рассмотрим следующие значения переменных: - `a = 5` - `b = 3` - `c = 4`

Согласно представленной программе, она будет выполнять следующие шаги: 1. Сравнить `a` и `b`. Поскольку `a` больше `b`, присвоить `M` значение `a` (теперь `M = 5`). 2. Сравнить `c` и `b`. Поскольку `c` больше `b`, присвоить `M` значение `c` (теперь `M = 4`).

Однако, в результате `M` будет равно 4, что является неверным ответом, поскольку максимальное число из трех заданных - это 5.

Доработка программы:

Чтобы программа всегда работала правильно и определяла максимальное число из трех, можно внести следующие изменения в логику программы:

```c++ if (a > b && a > c) M = a; else if (b > a && b > c) M = b; else M = c; ```

В этой доработанной версии программы мы сравниваем каждое число с двумя другими числами и выбираем максимальное из них. Таким образом, программа всегда будет правильно определять максимальное число.

Например, для значений переменных `a = 5`, `b = 3` и `c = 4`, программа будет выполнять следующие шаги: 1. Сравнить `a` с `b` и `c`. Поскольку `a` больше обоих, присвоить `M` значение `a` (теперь `M = 5`).

Теперь программа правильно определяет максимальное число и возвращает ожидаемый результат.

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

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос