0 / 0 / 0
Регистрация: 03.11.2015
Сообщений: 3
1

Составить программу для вычисления значений заданной функции, используя исходные данные

21.01.2016, 19:32. Показов 1696. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Составить программу для вычисления значений заданной функции, используя исходные данные. Выполнить проверку работы программы, значения аргумента выбрать самостоятельно.

https://www.cyberforum.ru/cgi-bin/latex.cgi?<br />
y=\begin{cases}ae^{\sin x}+0.7 & \text{ if } x\,<\,0.3\\\\ a\sqrt[3\,]{x^2+4} & \text{ if } x=0.3 \\\\ \frac{\sin x}{a+e^x} & \text{ if } x\,>\,0.3 \end{cases}<br />

a=1.5
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.01.2016, 19:32
Ответы с готовыми решениями:

Составить программу для вычисления значений заданной функции, используя исходные данные.
Составить программу для вычисления значений заданной функции, используя исходные данные. Выполнить...

Составить программу для вычисления значений заданной функции, используя исходные данные
1. Составить программу для вычисления значений заданной функции, используя исходные данные....

Составить программу для вычисления значений заданной функции, используя исходные данные 2
Составить программу для вычисления значений заданной функции, используя исходные данные. Выполнить...

Составить программу для вычисления значений заданной функции, используя исходные данные
Составить программу для вычисления значений заданной функции, используя исходные данные. Выполнить...

1
Модератор
9998 / 5356 / 3337
Регистрация: 17.08.2012
Сообщений: 16,325
22.01.2016, 13:31 2
Лучший ответ Сообщение было отмечено Garik1234 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
const a = 1.5;
var x, y: real;
begin
  write('x = ');
  readln(x);
  if x < 0.3
    then y := a * exp(sin(x)) + 0.7
    else if x > 0.3
      then y := sin(x) / (a + exp(x))
      else y := a * exp(ln(x * x + 4) / 3);
  write('y = ', y:0:10);
  readln
end.
Прогоны:

x = -1
y = 1.3466139260

x = 0.3
y = 2.7157378656

x = 1
y = 0.1994819263


При сдаче помните: при x = 0.3 программа выдаёт неверный результат. Должно быть

x = 0.3
y = 2.3988275523


Это потому, что число 0.3 не может быть отображено точно в разрядной сетке компьютера из-за того, что количество разрядов мантиссы ограничено, а число представляет из себя бесконечную двоичную дробь:

0.310 = 0.1001100110011001100110011001...2

При усечении получится ошибка.

Это Вам чтобы при сдаче не плавать. Обходится это следующим образом: для сравнения используется не 0.3, а уже усечённое число c := 0.3 (паскаль скрывает, что это на самом деле c := 0.299999 с чем-то, считать неохота):
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
const a = 1.5;
var x, y, c: real;
begin
  c := 0.3;
  write('x = ');
  readln(x);
  if x < c
    then y := a * exp(sin(x)) + 0.7
    else if x > c
      then y := sin(x) / (a + exp(x))
      else y := a * exp(ln(x * x + 4) / 3);
  writeln('y = ', y:0:10);
  readln
end.
Прогоны:

x = -1
y = 1.3466139260

x = 0.3
y = 2.3988275523

x = 1
y = 0.1994819263
1
22.01.2016, 13:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.01.2016, 13:31
Помогаю со студенческими работами здесь

Составить программу для вычисления значений заданной функции, используя исходные данные.
помогите пожалуйста сделать к/р http://192.168.51.110/ заранее спасибо!

Составить программу для вычисления значений заданной функции, используя исходные данные
само задание

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

Составить программу для вычисления значений заданной функции
Задал лабораторные, но некоторые задания вызывают у меня затруднения (вроде и легкие, но не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru