Лабораторная работа № 3
Студент(ы) Смирнова К. А.
Группа РН12-72
Дата выполнения 1.04.08
Преподаватель Кудашов А. Г.
Отметка о защите
Задание №1. В данном задании требовалось проанализировать и исполнить программы Murka-2007 разделов for, while и examples (часть Циклы). На приведенных примерах освоить синтаксис операторов циклов и особенности их использования.
Задание №2. В данном задании требуется разработать программу для расчета сумм и произведения
; ; .
Входные данные: x; тип - doublе(вещественные переменные);
K, n; тип – int(целые переменные).
Выходные данные: S1, S2, P; тип – doublе(вещественные переменные).
Текст программы:
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
double S1,S2,P,fact,x;
int k,n;
clrscr();
cout<<"int n =";
cin>>n;
cout<<"x=";
cin>>x;
S1=0;
S2=0;
P=1.5;
fact=1;
for (k=1; k<=n; k++)
{
S1=S1+1.0/(k*k);
fact=fact*k;
S2=S2+pow(x,k)/fact;
if (k>1) P=P*(1+1/pow(2,k));
}
cout<<"S1="<<S1<<endl;
cout<<"S2="<<S2<<endl;
cout<<"P="<<P<<endl;
getch();
}
Результаты исполнения работы:
Набор 1. int n =4
x=2
S1=1.423611
S2=6
P=2.241211
Набор 2. int n =5
x=1
S1=1.463611
S2=1.716667
P=2.311249
Набор 3. int n =7
x=2
S1=1.511797
S2=6.380952
P=2.365701
Вывод: Для расчета расчета сумм и произведения
; ; .
разработана программа с циклами. При написании использовали оператор for. Результаты исполнения работы приведены после текста программы. Программа успешно работает.
Задание №3. В данном задании требуется разработать программу для вывода на дисплей всех простых чисел, находящихся в интервале от n до m и нахождения их суммы.
Входные данные: n, m, x, k; тип – int(целые переменные).
Выходные данные: summa; тип – int(целые переменные).
Текст программы:
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
int k,n,m,x,summa;
clrscr();
cout<<"n =";
cin>>n;
cout<<"m=";
cin>>m;
summa=0;
for (k=n; k<=m; k++)
{
for (x=2; x<=m; x++)
{
if (x==k)
{cout<<k<<endl;
summa=summa+k; }
if (k%x==0)
break;
}
}
cout<<"summa="<<summa<<endl;
getch();
}
Результаты исполнения работы:
Набор 1. n =1
m=5
2
3
5
summa=10
Набор 2. n =1
m=55
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
summa=381
Набор 3. n =1
m=16
2
3
5
7
11
13
summa=41
Вывод: Для вывода на дисплей всех простых чисел, находящихся в интервале от n до m и нахождения их суммы разработана программа с ветвлением. При написании использовали операторы if, for. Результаты исполнения работы приведены после текста программы. Программа успешно работает.
Задание №4. В данном задании требовалосьразработать программу для расчета по заданному целому n > 0 суммы
, где
Модифицировать программу для расчета зависимости S от значения верхнего предела суммы, изменяющегося от до .
Входные данные: i, n1,n2; тип – int(целые переменные).
x, y; тип – doublе(вещественные переменные).
Выходные данные: S; тип – doublе(вещественные переменные).
n; тип – int(целые переменные).
Текст программы:
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
int n,i,n1,n2;
double x,y,S;
clrscr();
cout<<"n1=";
cin>>n1;
cout<<"n2=";
cin>>n2;
x=1;
y=1;
S=0;
for (n=n1; n<=n2; n++)
{
for (i=1; i<=n; i++);
{
S=S+x/(1+y);
y=x+y;
x=0.3*x;
}
cout<<"n="<<n<<" S="<<S<<endl;
}
getch();
}
Результаты исполнения работы:
Набор 1. n1=1
n2=7
n=1 S=0.5
n=2 S=0.6
n=3 S=0.627273
n=4 S=0.635237
n=5 S=0.637608
n=6 S=0.638317
n=7 S=0.63853
Набор 2. n1=1
n2=20
n=1 S=0.5
n=2 S=0.6
n=3 S=0.627273
n=4 S=0.635237
n=5 S=0.637608
n=6 S=0.638317
n=7 S=0.63853
n=8 S=0.638594
n=9 S=0.638613
n=10 S=0.638619
n=11 S=0.63862
n=12 S=0.638621
n=13 S=0.638621
n=14 S=0.638621
n=15 S=0.638621
n=16 S=0.638621
n=17 S=0.638621
n=18 S=0.638621
n=19 S=0.638621
n=20 S=0.638621
Вывод: Для расчета по заданному целому n > 0 суммы
, где разработана программа с ветвлением. В дальнейшем программа была модифицирована для расчета зависимости S от значения верхнего предела суммы, изменяющегося от до .При написании использовали оператор for. Результаты исполнения работы приведены после текста программы. Программа успешно работает.
Задание № 5. В данном задании требуетсяразработать программу для расчета бесконечной суммы . Суммирование следует прекращать, когда очередное слагаемое по абсолютной величине станет меньше заданной погрешности .
Входные данные: k; тип – int(целые переменные).
Fact, eps; тип – long doublе(вещественные переменные).
Выходные данные: S; тип – long doublе(вещественные переменные).
Текст программы:
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
int k;
long double S,fact,eps;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.