Академический Документы
Профессиональный Документы
Культура Документы
1. Цель работы
Изучение принципов алгоритмизации и структуры алгоритмов
циклических вычислительных процессов и задач, связанных с
обработкой массивов. Изучение структурированного типа данных –
массива. Освоение методики пошаговой детализации задачи.
2. Ход работы
Вариант 10: задание 178в
(в)
Лист
10
Изм. Лист № докум. Подпись Дата
2.3. Алгоритм:
Лист
11
Изм. Лист № докум. Подпись Дата
2.4. Реализация:
#include <iostream>
#include <vector>
#include <cmath>
int main()
{
size_t arrayLength;
unsigned int countOfSquareOfAnEvenNumber = 0;
srand(time(0));
std::vector<unsigned> arrayOfNaturalNums;
double iterparant;
if (arrayLength)
{
bool type;
arrayOfNaturalNums.resize(arrayLength);
if (type)
{
for (auto& elm : arrayOfNaturalNums)
{
elm = 1 + rand() % 20;
countOfSquareOfAnEvenNumber +=
modf(sqrt(elm), &iterparant) == 0 && static_cast<int>(sqrt(elm)) % 2
== 0;
Лист
12
Изм. Лист № докум. Подпись Дата
}
}
else {
for (auto& elm : arrayOfNaturalNums)
{
std::cout << "Enter array elm -> ";
std::cin >> elm;
countOfSquareOfAnEvenNumber +=
modf(sqrt(elm), &iterparant) == 0 && static_cast<int>(sqrt(elm)) % 2
== 0;
}
}
}
else
{
unsigned int arrayElm;
std::cout << "For stop input set 0\n -> Enter array elm: ";
std::cin >> arrayElm;
while (arrayElm)
{
std::cout << " -> Enter array elm: ";
arrayOfNaturalNums.push_back(arrayElm);
countOfSquareOfAnEvenNumber +=
modf(sqrt(arrayElm), &iterparant) == 0 &&
static_cast<int>(sqrt(arrayElm)) % 2 == 0;
return 0;
}
Лист
13
Изм. Лист № докум. Подпись Дата
2.5. Тестирование:
Input Output Ручной
результат
16 2 13 20 15 11 2 2
11 1 16 1 9 18
14 5 0
16 10 10 8 15 15 1 1
20 20 20 15 0
4 5 3 18 16 0 2 2
6 16 2 9 5 4 0 2 2
3. Контрольные вопросы
3.1. Функциональная схема цикла и назначение ее отдельных частей.
Цикл состоит из тела цикла и условия. При выполнении условия
выполняется тело цикла.
14
Изм. Лист № докум. Подпись Дата
3.6. Можно ли вне тела цикла использовать значение параметра
цикла?
Нет.
Лист
15
Изм. Лист № докум. Подпись Дата