Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Цикл с параметром (for)



Данный цикл имеет такую конструкцию;

for (начальные_присваивания; выражение; приращение) оператор;

Начальные_присваивания — оператор или группа операторов, применяемые для присвоения начальных значений величинам используемым в цикле. Выражение -определяет условие выполнения цикла, если оно истинно, то цикл выполняется. П риращение — оператор, который выполняется после каждого шага (прохода) по телу цикла. О ператор — любой оператор.

Пример. Нужно посчитать сумму чисел от 1 до 500. Делаем:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include "stdafx.h" #include <iostream> using namespace std; int main () { int i; //определяем переменную int sum = 0; for (i=1; i<=500; i=i+1) // задаем начальное значение, конечное 500, шаг цикла { sum = sum + i; } cout << "The sum of the numbers from 1 to 500 = " <<sum<<endl; system ("pause"); return 0; }

Выполнение работы.

При выполнение работы студент выбирает из таблицы вариант, указанный преподавателем. При выполнении работы для заданного варианта необходимо составить программу, провести ее компилирование; исправить все выявленные ошибки, запустить программу на исполнение.

Практическая часть.

1) Задание: Доказать (путем перебора возможных значений), что для любых величин А, В, С типа Boolean следующие пары логических выражений имеют одинаковые значения (эквивалентны):

a) А ОR в и в ОR A;

б) A and BИ В АND A;

в) (A OR B) OR C И А ОR C;

г) (А AND B) AND C И А AND (B AND C);

д) A AND (A OR B) И A;

е) A OR (A AND B) И A;

ж) A AND (B OR C) И (А AND B) OR (A AND C);

з) А OR (B AND C) И (A OR B) AND (A OR C);

При выполнении первого задания лабораторной работы была разработана блок-схема приведенная на рис.1.

 
 


Рис 1.

#include "stdafx.h"

#include "conio.h"

#include "stdio.h"

#include <iostream>

#include <math.h>

#include <cmath>

using namespace std;

int main()

{

std::cout << "Task 1:\n";

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

for (int j = 0; j <= 1; j++)

std::cout << "A = " << i << ", B = " << j << " A || B = " << (i || j) << ", B || A = " << (j || i) << "\n";

std::cout << "\n\nTask 2:\n";

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

for (int j = 0; j <= 1; j++)

std::cout << "A = " << i << ", B = " << j << " A && B = " << (i && j) << ", B && A = " << (j && i) << "\n";

std::cout << "\n\nTask 3:\n";

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

for (int j = 0; j <= 1; j++)

for (int k = 0; k <= 1; k++)

std::cout << "A = " << i << ", B = " << j << ", C = " << k << " (A || B) || C = " << ((i || j) || k) << ", A || C = " << (i || k) << "\n";

std::cout << "\n\nTask 4:\n";

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

for (int j = 0; j <= 1; j++)

for (int k = 0; k <= 1; k++)

std::cout << "A = " << i << ", B = " << j << ", C = " << k << " (A && B) && C = " << ((i && j) && k) << ", A && (B && C) = " << (i && (j && k)) << "\n";

std::cout << "\n\nTask 5:\n";

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

for (int j = 0; j <= 1; j++)

std::cout << "A = " << i << ", B = " << j << " A && (A || B) = " << (i && (i || j)) << ", A = " << (i) << "\n";

std::cout << "\n\nTask 6:\n";

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

for (int j = 0; j <= 1; j++)

std::cout << "A = " << i << ", B = " << j << " A || (A && B) = " << (i || (i && j)) << ", A = " << (i) << "\n";

std::cout << "\n\nTask 7:\n";

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

for (int j = 0; j <= 1; j++)

for (int k = 0; k <= 1; k++)

std::cout << "A = " << i << ", B = " << j << ", C = " << k << " A && (B || C) = " << (i && (j || k)) << ", (A && B) || (A && C) = " << ((i && j) || (i && k)) << "\n";

std::cout << "\n\nTask 8:\n";

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

for (int j = 0; j <= 1; j++)

for (int k = 0; k <= 1; k++)

std::cout << "A = " << i << ", B = " << j << ", C = " << k << " A || (B && C) = " << (i || (j && k)) << ", (A && B) || (A && C) = " << ((i || j) && (i || k)) << "\n";

getch();

return 0;

}

2) Задание: составить программу для проверки утверждения: <<Результатами вычеслений по формуле являются простые числа>>. Все результаты вывести на экран.

При выполнении второго задания лабораторной работы была разработана блок-схема приведенная на рис.2.

 
 


Рис 2.

#include "stdafx.h"

#include "conio.h"

#include "stdio.h"

#include <iostream>

#include <math.h>

#include <cmath>

using namespace std;

void main ()

{

int y,x;

int d=2;

for (x=1,y=0;x<15;y=(x*2)+x+17,x++)

{

for(; d<=y / 2; d++)

{

if(y%d == 0)

break;

}

if(d>y/2)

cout<<"Prostoe"<<y<<endl;

else

cout<<"Ne prostoe"<<y<<endl;

}

getchar();

}

Вывод: В данной лабораторной работе я поработал с операторами циклов в с++ и написал 2 простые программы для разных условий.





Дата публикования: 2015-11-01; Прочитано: 321 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...