Предмет: Информатика, автор: Dushzhanov987

Создать программу на c++ по Блок-схеме.
Условие задания проложил.

Приложения:

Dushzhanov987: f(x)=(sin(x-N))/(x-N)+e^{x-N}
Ввод данных: Любой отрезок, который в себе содержит число 10.
Шагов обязательно: 10

Ответы

Автор ответа: petyaGavrikov
1

Программа:

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

setlocale(LC_ALL, "rus");

int N; float A, B, d, x, f;

do{

cout << "Введи кол-во шагов="; cin >> N;

} while (N <= 2);

do{

cout << "Введите левую границу отрезка="; cin >> A;

cout << "Введите правую границу отрезка="; cin >> B;

if (A == B)

{

 cout << "Вы ввели точку, а не отрезок" << endl;

 cout << "Введите ещё раз A и B:" << endl;

 cout << "A="; cin >> A;

 cout << "B="; cin >> B;

}

} while (A == B);

x = A;

d = (B - A) / (N-1);

while (x<=B+d/10){

 if (x-N == 0)

 cout << "x=" << x << " " << "f(x) - Нет значения"<< endl;

else

{

 f = ((sin(x - N)) / (x - N)) + exp(x - N);

 cout << "x=" << x << " " << "f(x)=" << f << endl;

}

x = x+d;

}

return 0;

}

Пример:

Введи кол-во шагов=10

Введите левую границу отрезка=9

Введите правую границу отрезка=11

x=9 f(x)=1.20935

x=9.22222 f(x)=1.36161

x=9.44444 f(x)=1.5231

x=9.66667 f(x)=1.69812

x=9.88889 f(x)=1.89278

x=10.1111 f(x)=2.11546

x=10.3333 f(x)=2.3772

x=10.5556 f(x)=2.69226

x=10.7778 f(x)=3.07881

x=11 f(x)=3.55976


Dushzhanov987: Прочитайте, пожалуйста, условие, которое ниже. И переделайте.
Dushzhanov987: При вводе: 10, 9.2, 11
консоль для x=10 выводит значение f(x)=2
petyaGavrikov: Строку if (x-N == 0) замените на if (fabs(x-N) < 1e-5)
Похожие вопросы
Предмет: Биология, автор: katerinatrus59