Программы с использованием операторов цикла

 

Отчет по лабораторной работе № 4

Вариант 45

 

по дисциплине Программирование и алгоритмизация

наименование учебной дисциплины

 

 

Выполнил

Студент гр. КТбз-16-2                                                   С.А. Морозов

 

06.01.2018

 

Принял

Доцент                                                                       Т.В. Зарак

 

16.01.2018

 

 

Иркутск –2018


Цель работы: научиться использовать различные операторы циклов в программах.

Задание №24: (использовать оператор while…)

Написать программу для вычисления функции F, при этом, если не указано количество шагов (бесконечность), то вычисления производить с точностью 10-4 (точность считается достигнутой, если очередное слагаемое или сомножитель по модулю меньше чем точность).

Текстпрограммы:

#include<iostream.h>

#include <math.h>

#include <windows.h>

char bufRus[256];

char* Rus(const char* text)

{

CharToOem(text,bufRus);

return bufRus;

}

void main (void)

{

double p=9, k, F=1, Z, fact=1;

k=1;

while (k<=p)

{

fact*= k;

Z=k/2*1/fact;

F=F*Z;

k++;

}

cout<<Rus("Значение функции F=")<<F<<endl;

system ("pause");

}

Результат:

Задание №25: (использовать оператор do…while)

Дана последовательность чисел a1, a2, a3, …. Количество элементов в последовательности заранее неизвестно. Написать программу с запросом продолжения ввода:

Получить произведение членов последовательности, кратных P

Текстпрограммы:

#include<iostream.h>

#include <windows.h>

charbufRus[256];

char* Rus(const char* text)

{

CharToOem(text,bufRus);

returnbufRus;

}

int main (void)

{

inti,n,a[100]; char zapros; int sum=0, kol=0;

do

{

       cout<<Rus("Введите количество элементов последовательности n = "); cin>>n;

       for (i=0;i<n;i++)                                

       {                                                                                                                              

                   a[i] = rand() % 200;

                   cout<<a[i]<< " ";

       }

       cout<< "\n";

       for (int i = 0; i < n; i++)

        {

if ((a[i] % 5 == 0) && (a[i] % 7!= 0))

                                          {

                                                      sum+= a[i];  

                                                      kol++;  

                                          }

        }

                   cout<< "\n";

                   cout<<Rus("Сумма кратных 5 и не кратных 7: ")<<sum<<endl;

cout<<Rus("Количество кратных 5 и не кратных 7: ") <<kol<<endl<<endl;

                   cout<<Rus("Продолжить работу (y, Y)?"); cin>>zapros;

}

while ((zapros == 'y') || (zapros == 'Y'));

return 0;

}

Результат:

Задание № 63: (использовать оператор for…)

Написать программу с использованием хранения последовательности чисел в памяти компьютера (количество чисел в последовательности считать известным): Дана последовательность: а1 … аn. Получить:

Получить: min(a2, a4….) + max(a1, a3….)

Текстпрограммы:

#include<iostream.h>

#include <windows.h>

charbufRus[256];

char* Rus(const char* text)

{

CharToOem(text,bufRus);

returnbufRus;

}

int main ()

{

inti,n,a[20]={71,16,1,32,19,54,31,12,19,2,3,14,23,8,4,9,6,13,8,7};

       int min = 2147483647, max = 0, P;

       cout<<Rus("Введите количество элементов последовательности (не более 20) n = "); cin>>n;

       {

                   for (i=0; i < n; i++)

                   cout<<Rus("a[") << i<< "] = "<<a[i]<<"\n";

                   }

       cout<< "\n"; 

       for (i = 0; i < n; i++)

       {

if (i % 2 == 0)

   {

if (a[i]<min)

min = a[i];

   }

else

if (a[i]>max)

max = a[i];

}

P=min+max;

       cout<<"min(a2, a4...) + max(a1, a3...) = "<<P<<endl;

       system ("pause");

return 0;

}

 

Результат:

Ответы на вопросы:


Что такое цикл?

Циклом называют такую форму организации действий, при которой одна и та же последовательность операторов выполняется несколько раз, пока выполняется некоторое условие.

2. Формы записи операторов цикла в С++.

Основная форма оператора цикла while (цикл с предусловием) имеет следующий вид:

while (<условие>) <оператор>;

Основная форма оператора do … while (цикл с постусловием)следующая:

do {

<последовательность операторов>;

} while (<условие>);

Основная форма цикла for (цикл «для каждого») имеет вид:

for (<инициализация>; <проверка условия>; <изменение>) <оператор>;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: