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

Раздел: Информатика
Автор вопроса: missyska (Посетитель)
Дата: 14.06.2022, 09:12 Консультация неактивна
Поступило ответов: 1
Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос: составить блок-схему и программу для вычисления значения Y по заданным значениям a и x

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

Здравствуйте, missyska !
Функция arcsin() отсутствует в Паскале. Заменяем её АркТангенсом по школьной формуле
arcsin(x) = arctg[x / √(1 - x2)]

Функция вычисления корня n-ной степени и возведения в n-ную степень тоже отсутствует в Паскале.
Заменяем xy на exp(ln(x)·y)

Исходный код Вы можете зачитать, открыв исходник 202989.pas в каком-нибудь текстовом редакторе (Блокнот, Notepad++ …)
Чтобы исполняемый файл 202989.exe можно было открывать удобным дубль-кликом в окне Проводника (без поиска и предвари-открытия окна Командной строке), я добавил в конце программы стоп-запрос "Жми клавишу "Enter" закрыть окно программы."
Блок-схему и программу прилагаю. Я добавил в код подробные комментарии, чтоб Вам было всё понятно. =Удачи!

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


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

Мастер-Эксперт
17.06.2022, 15:58
5
спасибо Вам большое!

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

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

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

ID: 259041

326510

= общий =    14.06.2022, 12:40
Вы не указали желаемый Вами язык программирования , а в Ваших соседних консультациях rfpro.ru/question/202990 (Ссылка) и rfpro.ru/question/202991 Вы явно указали "написать программу на языке Pascal" .

Я люблю прог-язык VBScript Ссылка3 за его простоту и необычайное удобство в пользовании : VBScript не требует ни компиляторов, ни Среды программирования, его код сразу после написания готов к работе!
Я написал скрипт-прогу, выполняющую вычисления, затребованные в Условии Вашей задачи.
Но я сомневаюсь, нужно ли мне тратить время на вёрстку Ответа, если VBScript не принесёт Вам пользы?
missyska

Посетитель

ID: 406067

326511

= общий =    14.06.2022, 12:48
вот пример выполнения этого задания
Алексеев Владимир Николаевич

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

ID: 259041

326514

= общий =    14.06.2022, 13:01
Хороший пример. Спасибо!
Но Вы не ответили на мой выше-вопрос. Поэтому я остаюсь в ожидании.
А Вам я советую тоже подождать Ответов экспертов, умеющих писать на нужном Вам прог-языке. А моё предложение пусть побудет Вам для страховки в случае Pascal-неответов.
missyska

Посетитель

ID: 406067

326515

= общий =    14.06.2022, 13:10
желательно, использовать язык - Pascal
Алексеев Владимир Николаевич

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

ID: 259041

326519

= общий =    14.06.2022, 15:24
Ваш термин "желательно" - слишком неконкретный и не побуждает к активным действиям. В таком случае нам остаётся просто желать и ждать ответ Pascal-знатоков.

Можно представить другой случай: Вы где-то учитесь, в школе / в ВУЗе ? Вам дали уроки программирования на языке Pascal. Вы должны усвоить учебный материал, написать алгоритм и код программы. Написать алгоритм Вы можете уже сейчас, имея готовый пример, который легко подкорректировать под Ваш Вариант.

Написать код программы Вы тоже можете попытаться сейчас, если посещали лекции и изучали "Методичку". Но у начинающих программистов код обычно содержит ошибки, которые чтобы выявить и исправить, надо компилировать исходник и запустить программу на исполнение. Таким образом, я полагаю, что у Вас есть СредаПрограммирования для языка Pascal (компилятор, редактор кода, отладчик…).
Опубликуйте сюда ссылку, чтоб я мог скачать такую же СредуПрограммирования и решить Вашу задачу в Паскале.
missyska

Посетитель

ID: 406067

326540

= общий =    15.06.2022, 21:33
Free Pascal (Turbo Pascal)
Алексеев Владимир Николаевич

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

ID: 259041

326544

= общий =    16.06.2022, 18:10
Сегодня я учился паскалить по Вашим примерам. Показываю код программы и отправляю Вам полученный Test1.exe . Запускать его надо в окне "Командная строка". Код Pascal :
Код
Program lab;
var y , a , x : real ; // Объявление переменных.

begin
write ('Vvedite a , x :'); // Вывод сообщения на экран.
readln(a,x); // Оператор ввода по одному числу в строке (будет запрос на 2х строках).
	//В десятичных дробях используем разделитель-символ - точку (не запятую).
y := sin(x+a) + 5*exp(2*x); // Вычислитель.
writeln ('Otvet : y =' , y) ; // Вывод сообщения на экран.
end.
Мой Pascal возвратил Ответ y = 1.3111…E+001 , что означает 1.3111*10^1 = 13,111
Маткад-вычислитель подтвердил правильность этого ответа. В Вашем примере "Результат : y = 1257.965" - НЕправильный.
Потренируйтесь : Скомпилируйте мой код, запустите полученный exe-файл в окне КомСтроки.
Завтра перейдём от Примера к Задаче.

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


ПримерПробный.rar
скачать (22.9 кб)
missyska

Посетитель

ID: 406067

326545

= общий =    16.06.2022, 18:30
спасибо Вам большое!
Алексеев Владимир Николаевич

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

ID: 259041

326549

= общий =    17.06.2022, 04:17
Я написал нужную Вам программу, опробовал её в работе. Вам осталось выбрать вариант для обхода разногласий Условия задачи с Вашим Примером. В примере присутствует неприятный оператор
readln(a; x); с предвари-пояснением 'Vvod a, x' , вынуждающий пользователя ввести значения переменных "a", "x" с клавиатуры. Этот оператор предполагает, будто можно ввести ЛЮБЫЕ числовые значения. Но эти любые значения, НЕ совпавшие с данными Вашего варианта
a = 0.5 , x = 0.45 , приведут к НЕправильному Ответу! Что будем делать?

1) Откажемся от диалогового запроса данных и введём "a", x-значения в коде программы (простейший вариант кода!);
2) Выполним диалоговый запрос данных с клавиатуры, выведем их на экран и проигнорим их. В ниже-вычислениях используем "a" , x-значения, заданные в коде согласно Условию.
3) Выполним диалоговый запрос, но прекратим выполнение с сообщением о вводе чисел, НЕсоответсвующих Условию.
Я жду Ваше выбор-решение.
missyska

Посетитель

ID: 406067

326550

= общий =    17.06.2022, 08:37
первый вариант: откажемся от диалогового запроса данных и введём "a", x-значения в коде программы
Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.