Задание: Составить схему алгоритма и программу на языке С++ для вычисления значений функции y = f(x) при произвольных значениях x. Получить результат работы программы для двух заданных значений x.
Решение:
Блок-схема алгоритма
a =1,9 b = 3,4 |
x<5 |
Ввод x |
Начало |
Вывод x, y |
Конец |
да |
нет |
Текст программы
#include"stdafx.h" // библиотека для ускорения компеляции проекта
#include <iostream> // подключение библиотеки для операторов cout, cin
#include<math.h> // библиотека для использования арифметических операций
#include<cstdlib> // подключение библиотеки для использования system(“pause”)
#include<locale.h> // подключение библиотеки для установки пользовательских настроек
using namespace std; // для функций, которые являются частью стандартной библиотеки std
int main() // начало главной функции(главной программы)
{
setlocale(0,""); // для вывода на экран в консоли русского текста
double a, b, x, y; // объявление переменных вещественного типа
a=1.9; // присвоение значения переменной
b=3.4; // присвоение значения переменной
cout<< "введитеX: "; // вывод на экран текста в «»
cin>>x; // ввод х, сохранение в памяти введённого значения
if (x<5) //условный оператор if … else
y=pow(sin(a+x),3); //если x<5, то у вычисляется по первой формуле,
else // иначе – по второй
y=log(sqrt(abs(b-x)));
cout<< "ЕслиX = " <<x<< ", тогдаY = " <<y<< "\n"; // вывод на экран х и у
system("PAUSE"); // задержка результата на экране
return 0; // сообщает ОС об успешном выполнении программы и разрешает её закрытие
}
3. Результат
Задание 2. Вложенные ветвления
Задание: Составить схему алгоритма и два варианта программы на языке С++ для вычисления значений функции y=f(x) при произвольных значениях x.
Решение:
Блок-схема алгоритма
Начало |
y= |
y= |
а=2,7; b=-3,59 |
Конец |
x<=-1 |
x>2 |
Вывод х, у |
Ввод х |
нет |
нет |
да |
да |
Текст программы
2.1.
#include"stdafx.h" // библиотека для ускорения компеляции проекта
#include <iostream> // подключение библиотеки для операторов cout, cin
#include<math.h> // библиотека для использования арифметических операций
#include<cstdlib> // подключение библиотеки для использования system (“pause”)
#include<locale.h> // подключение библиотеки для установки пользовательских настроек
using namespace std; // для функций, которые являются частью стандартной библиотеки std
int main() // начало главной функции(главной программы)
{
setlocale(0,""); // для вывода на экран в консоли русского текста
float a=2.7, b=-3.59, x, y; // объявление переменных вещественного типа
cout << "Введите x: "; // вывод на экран текста в «»
cin >> x; // ввод х, сохранение в памяти введённого значения
if (x>2) // если x>2, то у считается по первой формуле
y=pow(cos((a*x)*(a*x)),3);
else if (x<=-1) // при х>5, у считается по второй
y=sin(x)*sin(x)+b/x;
else y=pow((2-x*x),3); // иначе - по третьей
cout << "Если x = " << x << "\nТогда y = " << y<<"\n"; // вывод на экран х и у
system ("PAUSE"); // задержка результата на экране
return 0; // сообщает ОС об успешном выполнении программы и разрешает её закрытие
}
2.2.
{
setlocale(0,""); // для вывода на экран в консоли русского текста
float a=2.7, b=-3.59, x, y; // объявление переменных вещественного типа
cout << "Введите x: "; // вывод на экран текста в «»
cin >> x; // ввод х, сохранение в памяти введённого значения
if ((x>-1)&&(x<=2))
y= pow((2-x*x),3);// если х удовлетворяет двум условиям, то у считается по первой формуле
else if (x>2)
y=pow(cos((a*x)*(a*x)),3);// при х>2, по второй
else y=sin(x)*sin(x)+b/x; // иначе – по третьей
cout << "Если x = " << x << "\nТогда y = " << y<<"\n"; // вывод на экран х и у
system ("PAUSE"); // задержка результата на экране
return 0; // сообщает ОС об успешном выполнении программы и разрешает её закрытие
}
Результат