Консультация № 202991
14.06.2022, 09:17
0.00 руб.
1 9 1
Уважаемые эксперты! Пожалуйста, ответьте на вопрос: составить блок-схему, написать программу на языке Pascal
Прикрепленные файлы:
2022-06-14_09-21-42.png

Обсуждение

давно
Посетитель
406067
18
14.06.2022, 12:55
общий
образец решения
Прикрепленные файлы:
2022-06-14_12-59-30.png
2022-06-14_13-00-04.png
давно
Мастер-Эксперт
259041
7459
19.06.2022, 09:17
общий
19.06.2022, 15:22
это ответ
Здравствуйте, missyska !
Условие: y = 2,8 , z = 1 , 5,1 [$8804$] x [$8804$] 10,5 с шагом h = 2,5 , u = ez·sin(x + y + z) - x / [$8730$](y·z)
Вычислить минимальное значение Umin = Min(u) в программе на языке Pascal , составить блок-схему.

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

Строки кода N2 и N3 снизу позволяют запускать программу 202991.exe двойным кликом по её значку в окне Проводника.
Если Вы запускаете прогу в окне Комстроки, то упомянутые код-строки можно удалить либо закомментировать.
Прикрепленные файлы:
5
спасибо большое!
давно
Мастер-Эксперт
259041
7459
19.06.2022, 15:23
общий
Адресаты:
Блок-схему добавляю.

давно
Посетитель
406067
18
19.06.2022, 16:56
общий
Адресаты:
спасибо!
давно
Мастер-Эксперт
259041
7459
20.06.2022, 00:27
общий
Адресаты:
НаЗдоровье Вам! Заходите, когда будет нужно.
давно
Посетитель
406067
18
22.06.2022, 21:14
общий
Адресаты:
можете помочь, пожалуйста!
Прикрепленные файлы:
DF4D9F2E-6C8E-4276-B449-D5BCB22FAE3C.png
давно
Посетитель
406067
18
23.06.2022, 06:32
общий
Адресаты:
вот ещё
Прикрепленные файлы:
711D2115-AFBB-4FCF-8088-F44D024B78F6.png
7786AE48-E14B-4316-85E2-431670ACD046.png
F4CF948A-073A-4560-B2BA-82F260E1F34D.png
давно
Мастер-Эксперт
259041
7459
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
Исправляйте. И будьте внимательны в программировании, иначе Вам удачи не видать.
давно
Посетитель
406067
18
23.06.2022, 11:38
общий
Адресаты:
спасибо Вам большое!
Форма ответа