Функция
y = f1(x)
|
Функция
z = f2(y,a,b)
|
Рабочий
набор
|
|
|
|
x
|
a
|
b
|
|
2,556,1
|
|
|
|
|
|
Блок схема:
Код Программы:
#include <iostream>
#include <math.h>
#include <conio.h>
main ()
{a,b,x;z,y; //создаем нужные нам переменные
вещественного типа.("Vvedite znachenia x =
\n");("%f",&x);("Vvedite znachenia a = \n");("%f",&a);("Vvedite
znachenia b = \n");("%f",&b); //вводим исходные данные.=
(sin(x)*sin(x)*sin(x) + 3.7)/5; //вычисляем функцию у.=
(sqrt(14*y+2)+6)/(sqrt(14*y+2)+cos(b)+a); // вычесляем функцию
z("Resultat: y = %f; z = %f;", y, z);
//cout «"Resultat: \n";
//cout « "y = " « y «"\n";
//cout « "z = " « z «"\n";
// выводим результат на экран.();();
}
Скрин результатов:
Задание 2
Разветвляющиеся вычислительные процессы
Вычисления значения функции y=f (x), при х
=19,8
Блок схема:
Код программы:
#include <iostream>
#include <math.h>
#include <conio.h>main ()
{x;y; //создаем нужные нам переменные
вещественного типа.("Vvedite znachenia x =
\n");("%f",&x);(x>20)
{y=sin(x)*sin(x)/2;}((x<=20)&&(x>=6))
{y = pow(x,1/3);}((x<6)&&(x>-4))
{y=sin(x)*sin(x);}{y=0;}
printf("Resultat: y:%f",
y);
getchar();();
}
Скрин результата:
Задание 3
Циклические вычислительные процессы. Задача
табулирования
Необходимо решить на ЭВМ задачу вычисления N
значений функции y = f(x) для ряда равноотстоящих значений аргумента x, начиная
от значения x = xнач вплоть до значения x = xкон. Функция y = f(x) зависит от
параметра a. Результаты вычислений следует оформить в виде таблицы, снабженной
заголовком.
Вид
функции y = f(x)
|
Рабочий
набор исходных данных
|
|
N
|
a
|
xнач
|
xкон
|
181,523,5
|
|
|
|
|
Блок схема:
Код программы:
#include <iostream>
#include <conio.h>main ()
{x,x0,x_kon,det_x,a;N;y; //создаем нужные нам
переменные вещественного типа.("Vvedite znachenia N =
\n");("%d",&N);("Vvedite znachenia a =
\n");("%f",&a);("Vvedite znachenia x0 =
\n");("%f",&x0);("Vvedite znachenia x_kon=
\n");("%f",&x_kon);_x = ((x_kon-x0)/N); //вычисляем шаг для
х= x0; //вводим переменную x для цикла("N x y\n"); //выводим на экран
заголовок таблицы("%f\n",det_x);(int i =0; i < N; i++) //запускаем
цикл по i, изменяемое от 0 до N-1, с шагом 1
{= log(x*x*x*x +a*a)/(a*a*a*a+28); //вычисляем
у("%d %f %f \n",i+1,x, y); //выводим на экран текущее значение х и
у=x+det_x; //делаем шаг
}
// погрешность в х из-за того что 0,8333333
бесконечно();();
}
Скрин результата:
Задание 4
Циклические вычислительные процессы. Вычисления
по рекуррентным формулам
Решить задачу вычисления значения функции,
содержащей сумму или (и) произведение. Варианты заданий приведены в табл. 4.1.
В этой таблице приведены вид функции и рабочий набор исходных данных. Задание:
по рекуррентным формулам необходимо вычислить сумму или произведение,
Функция
|
Рабочий
набор
|
|
n
|
х
|
4010
|
|
|
Блок схема:
Код программы:
#include <iostream>
#include <math.h>
#include <conio.h>namespace std;main ()
{n;i,x;double y; //создаем нужные нам переменные
вещественного типа.("Vvedite znachenia n =
\n");("%d",&n);("Vvedite znachenia x =
\n");("%f",&x);= 2;//вводим исходные данные.= 1; //
приравниваем изначально у = 1(i<=n) // пока i меньше либо равно n выполняем
{= (x/(x+4) - x*sqrt((float)1+1/i))*y;
//вычисляем произведение.++; // делаем шаг
}=4*y; //вычислляем итоговое значение у("Resultat:
y = %f", y); //выводим результат();();
}
Скрин результата:
Задание 5
Программирование вложенных циклов
В работе необходимо вычислять значение (я)
функции y = f(x). Варианты заданий отличаются видом функции (табл.5.1). В
нечетных вариантах заданий необходимо вычислять значение функции для одного
значения аргумента x, а в четных следует решать задачу табулирования. При
вычислении значения функции оказывается необходимым вычислять несколько сумм
(произведений). Вычисление некоторых сумм (произведений) может потребовать
организации вложенных циклов.
Функция
|
Рабочий
набор
|
|
x
|
m
|
Xнач
|
xкон
|
n
|
-121015
|
|
|
|
|
|
Блок схема:
Код программы:
#include <iostream>
#include <math.h>
#include <conio.h>namespace std;main ()
{n;x,x0,x_kon,det_x,s1,s2,y,m; //создаем нужные
нам переменные вещественного типа.("Vvedite znachenia n =
\n");("%d",&n);("Vvedite znachenia x0 =
\n");("%f",&x0);("Vvedite znachenia x_kon=
\n");("%f",&x_kon);("Vvedite znachenia m= \n");("%f",&m);=0;=0;
//вводим исходные данные._x=(x_kon-x0)/n;
//вычисляем шаг х=x0;("n x y \n");(int i = 1; i<=m;i++)
{s1=s1 + i*i;} //считаем 1 сумму отдельног т.к.
она не зависит от х(int j =0; j<n;j++) // делаем n шагов
{(int i = 1; i<=m;i++) // вычисляем сумму s2
{+=(1+i*x)*(1+i*x);
}= pow((1+(2+s1+s2)*(2+s1+s2)),(float)0.25);
//вычисляем у. (сделали привидение типов)("%d %f %f \n", j+1,x,y);
//выводим на экран+=det_x; // делаем шаг=0; //обнуляем 2 сумму
}();();
}
Скрин программы:
Задание 6
Одномерные массивы
Найти количество отрицательных элементов
массива.
Блок схема:
Код программы:
#include <iostream>
#include <math.h>
#include <conio.h>namespace std;main ()
{ const int n =
10;massiv[n];sum=0;("Vvedite znachenia massiva: \n");(int i = 0;
i<n;i++)
{("%d:
",i+1);("%d",&massiv[i]);(massiv[i]<0)
{sum+=1;}
}
("Resultat: %d", sum); //выводим
результат();();
}
Задание 7
Двумерные массивы
функция вычислительный матрица цикл
Найти сумму всех элементов матрицы.
Блок схема:
Код программы:
#include <iostream>
#include <math.h>
#include <conio.h>namespace std;main ()
{ const int n = 4, m =
3;massiv[n][m];sum=0;("Vvedite znachenia massiva: \n");(int i = 0;
i<m;i++)(int j = 0; j<n;j++)
{("[%d,%d]:
",i+1,j+1);("%d",&massiv[i][j]);+=massiv[i][j];
}
printf("Resultat: summa =
%d", sum); //выводим
результат
getchar();();
}
Скрин результата:
Задание 8
Работа с квадратными массивами
Квадратную матрицу 5-го порядка заполнить
единицами и нулями в шахматном порядке.
Блок схема:
Код программы:
#include <iostream>
#include <math.h>
#include <conio.h>namespace std;main ()
{ const int n = 5;
int massiv[n][n];
(int i
= 0; i<n;i++)
// идем по строкам массива(int j = 0; j<n;j++) //идем по столбцам
{((i+j)%2==0) // если сумма индексов четна, то
ставим 0 (для того чтобы начать с 1 нужно поменять условие на (i+j)%2!=0
massiv[i][j]=1;[i][j]=0;
}("Resultat: \n");(int i =
0; i<n;i++)
{ for (int j = 0;
j<n;j++)("%d ",massiv[i][j]);//выводим
массив("\n");
}();
}
Скрин результата: