Использование основных операторов языка С++. Дана последовательность из n целых чисел. Найти сумму минимального и максимального элементов в этой последовательности.

Подробнее

Размер

1.79M

Добавлен

09.12.2020

Скачиваний

21

Добавил

Евгения
Текстовая версия:

Министерство науки и высшего образования Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего образования

«Саратовский государственный технический университет имени Гагарина Ю.А.»

Саратовский колледж машиностроения и энергетики

ОТЧЁТ

по лабораторной работе №2

Саратов

2020г

Цель задания

Постановка задачи

Решить указанные в варианте задачи, используя основные операторы языка С++. При решении задачи, использовать все типы циклов (for, while, do while).

Задача 1.

Дана последовательность из n целых чисел. Найти сумму минимального и максимального элементов в этой последовательности.

Блок-схема

Код программы

#include <iostream>

#include <locale>

#include <cmath>

using namespace std;

int main()

{

setlocale(LC_ALL, "Russian");

cout << "Введите n\n";

int n, a;

int max = INT_MIN;

int min = INT_MAX;

cin >> n;

if (n <= 0) cout << "n должно быть больше 0";

else

{

cout << "Заполните последовательность \n";

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

{

cin >> a;

if (a > max) max = a;

if (a < min) min = a;

}

int sum = max + min;

cout << "Сумма максимального и минимального элемента = " << sum;

}

return 0;

}

Тестирование

Номер теста

Проверяемый случай

Коэффициенты

Результаты

n

a

1

n>0

5

-5, -1, 5, 11, -8

Сумма максимального и минимального элемента = 3

2

n>0

1

5

Сумма максимального и минимального элемента = 10

3

n=0

0

-

n должно быть больше 0

Тест 1.

Тест 2.

Тест 3.

Задача 2.

Дана последовательность целых чисел, за которой следует 0. Найти номер минимального элемента в этой последовательности.

Блок-схема

Код программы

#include <iostream>

#include <locale>

#include <cmath>

using namespace std;

int main()

{

int a, i, imin, amin;

setlocale(LC_ALL, "Russian");

cout << "Введите числа: ";

i = 0;

amin = INT_MAX;

imin = 0;

do {

i++;

cin >> a;

if (a < amin && a != 0) {

amin = a;

imin = i;

}

} while (a != 0);

if (i > 1)

cout << "\n№ минимального элемента = " << imin;

else

cout << "\nПоследовательность пустая";

return 0;

}

Тестирование

Номер теста

Проверяемый случай

Коэффициенты

Результаты

i

a

1

i>0

2

-11, 5

№ минимального элемента =1

2

i>0

3

3, -5, -5

№ минимального элемента =2

3

i=0

0

-

Последовательность пустая

Тест 1.

Тест 2.

Тест 3.

Задача 3.

Определить является ли число k степенью 3.

Блок-схема

Код программы

#include <iostream>

#include <locale>

#include <cmath>

using namespace std;

int main()

{

setlocale(LC_ALL, "Russian");

cout << "Введите число\n";

int k;

int n = 0;

cin >> k;

if (k <= 0) cout << "k должно быть больше 0";

else

{

while (pow(3, n) <= k)

{

n++;

}

if (pow(3,n)==k) cout << k <<" является степенью 3";

else cout << k << " не является степенью 3";

}

return 0;

}

Тестирование

Номер теста

Проверяемый случай

Коэффициенты

Результаты

k

1

k>0

1

1 является степенью 3

2

k>0

81

81 является степенью 3

3

k>0

15

15 не является степенью 3

4

k=0

0

k должно быть больше 0

Тест 1.

Тест 2.

Тест 3.

Тест 4.