Консультация онлайн # 202991

Раздел: Информатика
Автор вопроса: missyska (Посетитель)
Дата: 14.06.2022, 09:17 Консультация неактивна
Поступило ответов: 1
Уважаемые эксперты! Пожалуйста, ответьте на вопрос: составить блок-схему, написать программу на языке Pascal

-----
Прикрепленные файлы:

Здравствуйте, missyska !
Условие: y = 2,8 , z = 1 , 5,1 ≤ x ≤ 10,5 с шагом h = 2,5 , u = ez·sin(x + y + z) - x / √(y·z)
Вычислить минимальное значение Umin = Min(u) в программе на языке Pascal , составить блок-схему.

Решение: Присвоим в переменную Umin бесконечно-большое число.
Затем используем цикл, в котором переменная x изменяется в указанных пределах с шагом h = 2,5.
В каждом цикл-шаге вычисляем функцию "u" и присваиваем Umin := u при условии, если u < Umin .
Таким образом получаем
Ответ : Umin = -7,041
Проверка сделана в популярном приложении Маткад (ссылка) . Маткад избавляет меня от ошибок.
Прилагаю скриншот программы, скрин результата и Маткад-скрин с графиком. Я добавил в код и в скрины скрины подробные комментарии, чтоб Вам было всё понятно. Блок-схему я добавлю позже (надо передохнуть).

Строки кода N2 и N3 снизу позволяют запускать программу 202991.exe двойным кликом по её значку в окне Проводника.
Если Вы запускаете прогу в окне Комстроки, то упомянутые код-строки можно удалить либо закомментировать.

Последнее редактирование 19.06.2022, 15:22 Алексеев Владимир Николаевич (Мастер-Эксперт)

-----
Прикрепленные файлы:


Алексеев Владимир Николаевич

Мастер-Эксперт
19.06.2022, 09:17
5
спасибо большое!

Мини-форум консультации # 202991

missyska

Посетитель

ID: 406067

326513

= общий =    14.06.2022, 12:55
Экспертам раздела
образец решения
Алексеев Владимир Николаевич

Мастер-Эксперт

ID: 259041

326581

= общий =    19.06.2022, 15:23
Блок-схему добавляю.
missyska

Посетитель

ID: 406067

326582

= общий =    19.06.2022, 16:56
спасибо!
Алексеев Владимир Николаевич

Мастер-Эксперт

ID: 259041

326583

= общий =    20.06.2022, 00:27
НаЗдоровье Вам! Заходите, когда будет нужно. smile
missyska

Посетитель

ID: 406067

326619

= общий =    22.06.2022, 21:14
можете помочь, пожалуйста!

-----
Прикрепленные файлы:

missyska

Посетитель

ID: 406067

326621

= общий =    23.06.2022, 06:32
вот ещё
Алексеев Владимир Николаевич

Мастер-Эксперт

ID: 259041

326622

= общий =    23.06.2022, 10:11
Вы просили: "можете помочь", но НЕ написали, какую именно помощь Вы просите?
Я могу только догадываться, будто Вы совсем не вникаете в смысл программ, которые я для Вас пишу, проверяю у себя перед отправкой к Вам. Вы тупо переписываете мой код, добавляете в него свои ошибки, ленитесь скомпилировать свой изменённый код и проверить работу своей испорченной программы её запуском. При этом Вы отправляете всю эту порчу преподавателю, верно?

Если Вы НЕ хотите вникать в прог-смысл, то отправляйте преподу мой проверенный продукт. А если вносите изменения, то надо обязательно сделать проверку! Иначе зачем Вы учитесь и тратите время?

Читаем правки Вашего преподавателя: "Для Pascal ABC операторы uses crt; clrscr; Readkey; НЕ нужны!" - спасибо, будем знать, что Вы изучаете Pascal ABC . Вы должны были сообщить об этом в самом начале своей консультации.

"Для max задают Ymax = -10000" . Для поиска Ymin в рядом-квадратике вписано "Ymin = 10000" . Вы должны понять отсюда, что в первом предварительном присваивании надо задать такое большое значение для Ymin , которое будет заведомо больше любого Y(x) Вашей функции. Тогда в первом же цикл-шаге произойдёт корректирующая замена фиктивно-завышенного значения на реальное Y(x)-значение.
Оператор Ymin = 10000 по совету Вашего препода будет работать правильно только для фукций, значения которых НЕ превышают 10000 ! Если этим оператором Вы будете решать задачи с бОльшими Y-значениями (по физике например), то Ваша прога вычислит Ymin НЕправильно. Мой оператор
Ymin := 1E30 (= 1*1030) - бесконечно большое число - избавлен от этого недостатка. Но для решения Ваших задач придётся подчиниться Вашему преподу.

"Нет печати в цикле!!! В проге есть!" - это моя недоделка. Вы не прислали методичку, и я не знал, что в Вашем учеб-заведении прямоугольничек с волнистой линией внизу означает "печать" (вывод значений на экран). Я смутно догадывался об этом, и добавил на всяк-случай "Печать" выше овала со словом "Конец". Теперь я буду знать об этом точно (Спасибо Вам!). Сейчас надо просто добавить Печать-прямоугольничек в контур цикла Блок-схемы, где оператор writeln() выводит промежуточные результы на экран. Сами сможете?

"Только что присвоено и сравниваем?" - тут чисто Ваша ошибка. Вы когда копировали мой код, то испортили оператор в ромбике
x <= xk заменой его на бессмысленный оператор x <= x1
Исправляйте. И будьте внимательны в программировании, иначе Вам удачи не видать.
missyska

Посетитель

ID: 406067

326624

= общий =    23.06.2022, 11:38
спасибо Вам большое!
Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.