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

Составить программу на Паскале для вычисления указанных выражений. Значение переменных а, b и с (а>0, b>0 и с>0) задайте самостоятельно.


Составить программу на Паскале для вычисления указанных выражений. Значение переменных а, b и с (а&g

👇
Открыть все ответы
Ответ:
Yanaaa13
Yanaaa13
27.01.2022
Вот тебе простой вариант ришение задачи (коментар=пояснение)

PascalВыделить код

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16  program prg;  uses crt;  var  rez,chislo,min,max:integer;  begin  Write('Enter number =  ');readln(chislo);                 //zanosim 1 chislo  max:=chislo;                                              //v max ta min  min:=chislo;                                              //chtobu potom mu soukb sravnivat s drugimi chislamu  while (chislo<>0) do                                      //zapuskaem zikl poka mu ne napishem 0  begin   if (chislo>max)then max:=chislo;                         //sravnivaem s max   if (chislo<min) then min:=chislo;                        //sravnivaem s min   readln(chislo);                                          //snova pihem chislo   end;   rez:=(max-min);                                          //nahodim raznizy   writeln('max(',max,') - min(',min,') = ',rez);           //otvet end.
4,6(18 оценок)
Ответ:
andreyzher777
andreyzher777
27.01.2022
Прикладываю исходник и скрин в приложении к ответу.

Несколько замечаний:

1. Большое количество комментариев внесено в код исключительно в учебных целях. В реальную программу переносить не рекомендуется - признак нехорошего тона.

2. У вас допущены синтаксические ошибки в двух последних циклах, а точнее - в операторах If, в которых стоит три условия (объединённых and), но нет ключевого слова "then" и последующих инструкций. Исправил.

3. Так же, автор вашей программы построил на мой взгляд нелогичную структуру алгоритма. Переменные min, min2 и min3, как я догадался, должны хранить три минимальных значения массива.
А вот что происходит в вашей конструкции: первый цикл безошибочно находит наименьший элемент и записывает его в min, а последующие два цикла записывают в min2 и min3 первые попавшиеся(начиная с первого) элементы, если они больше min. Таким образом, нет никакой закономерности в том, что попадёт в эти переменные и сложно представить, для какой задачи потребовались бы такие случайности.

Одним из вариантов решения предлагаю изначально записывать в эти три переменные не значение первого элемента массива, а какое-то большое число, которое в массиве нам не встретится (например 100). Тогда цикл будет искать значения меньше 100 и перезаписывать им соответствующую переменную, пока не найдёт самое маленькое значение. В таком случае не очень стабильная переменная j нам так же не нужна, я её вычеркнул.

Вам отсылаю уже с учётом поправок, однако если вам требовалась именно первоначальная версия несмотря на её минусы, просто поправьте синтаксис в последних циклах (41 и 34 строчка на скрине) и пользуйтесь ей.

Объясните как работает эта программа по-шагово program lklkjo; uses crt; const n=10; var a: array[1.
4,6(89 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ