Программирование на C / C++ / Лабораторные работы2 / УГАТУ АСОИ-136 пр-ние на ЯВУ лаб.№2 вар.№14
.docУфимский государственный авиационный технический университет
Кафедра АСУ
Отчёт
по лабораторной работе №2
по дисциплине ”Программирование на ЯВУ”.
вариант №14.
Выполнил: студент группы АСОИ-136
Макаров М. Проверила: доцент кафедры АПРиС
Фёдорова Н.И.
Уфа 2007.
Тема: Циклические алгоритмы.
Цель работы: Знакомство и получение навыков реализации циклических алгоритмов и обработки одномерных массивов на языке С++.
Вариант №14.
Задание:
а)S=
Решение:
Блок-схема
Текст программы на С++
#include<iostream.h>
#include<conio.h>
#include<math.h>
void main()
{
double s,c,f,x;
int m,n,k,i;
clrscr();
cout<<"Zadacha: vichislit' symmy(sin(n*x))/n!, gde n menyaetsya ot 1 do m\n";
cout<<"vvedite polojitelnoe znachenie m i znachenie x\nm=";
cin>>m;
cout<<"x=";
cin>>x;
cout<<endl;
c=sin(x);s=c;
for(n=2;n<=m;n++)
{c*=(sin(n*x))/(sin((n-1)*x)*n);
s+=c;
}
cout<<" s="<<s;
getch();
}
Проверка:
При m =2 и х=1,57
Получаем:
При m=4 и x=1,57
Получаем:
б) Найти кол-во элементов массива(а1,а2,а3,…,аn), удовлетворяющих условиям
Решение:
Необходимо каждый элемент массива сравнить со значениями b и c. При выполнении заданного условия нужно в некоем “ящике” собирать эти элементы. В нашем случае “ящиком” послужит переменная S т.е. если каждом при сравнении условие будет выполнятся мы к переменной S будем добавлять 1-ку: S=S+1.
Блок-схема
Текст программы на С++
#include<iostream.h>
#include<conio.h>
#include<math.h>
void main()
{double *a,b,c;
int i,n,s;
clrscr();
cout<<"\nZadacha: naiti kol-vo elementov massiva(a1,a2,a3,...,an), ydovletvoriaiyschih ysloviam: b<=a[i]<=c";
cout<<"\n\n\n\n vvedite kol-vo elementov v massive n\nn=";
cin>>n;
cout<<" vvedite chisla b i c\nb=";
cin>>b;
cout<<"c=";
cin>>c;
a=new double[n];
s=0;
cout<<" vveite massiv a[i]>\n";
for(i=0;i<n;i++)
{ cout<<"a["<<i<<"]=";
cin>>a[i];
if((a[i]>=b)&(a[i]<=c)) s++ ;
}
cout<<" kol-vo elementov massiva, ydov-schih ysloviam s="<<s;
delete[]a;
getch();
}
Проверка:
При n=5, b=15, c=89 и a[0]=3, a[1]=89, a[2]=45, a[3]=98, a[4]=26:
Результат – S= 3;
При n=3, b=100, c=247 и a[0]=125, a[1]=-214, a[2]=21.456:
Результат – S=1;