} cout << "3) Середнє Арифметичне числа N:" << sum / count << endl;
return 0;
} int task3(float n)
{
cout << "3) Ви ввели не цiле число!" << endl;
return 0;
} int task3(int n, int m)
{ n = n + m;
int count = 0;
float sum = 0;
if (n < 0)
n = -n;
while (n != 0)
{
sum += (n % 10);
n = n / 10;
count++;
} cout << "Середнє Арифметичне числа N+m:" << sum / count << endl;
return 0;
}
// task 4 | Середнє геометричне
int task4(int n)
{
double product = 1;
int count = 0;
if (n < 0)
n = -n;
int n1 = n;
do
{
n1 /= 10;
count++;
} while (n1 != 0); int* arr = new int[count];
int i = 0;
do
{
arr[i] = n % 10;
n /= 10;
product *= arr[i];
i++;
} while (i < count); cout << "4) Середнє Геометричне числа N:" << pow(product, 1.0 / count) << endl;
return 0;
} // task 5 | Факторіал
int task5(int n)
{ long double fact = 1; if (n < 0) cout << "5) N - від'ємне значення." << endl; else if (n == 0) cout << "5) Факторiaл N!:" << fact << endl; else {
int i = 0;
for (i = 0; i < n; )
{
i++;
fact *= i;
}
cout << "5) Факторiал N!:" << fact << endl;
} return 0;
} // task 6 | Сума всіх парних чисел
int task6(int n) { int sum = 0; int i = 0; while (i <= n)
{ if (i % 2 == 0) sum += i; i++;
} cout << "6) Сума всiх парних чисел вiд 1 до N:" << sum << endl; return 0; } // task 7 | Сума всіх непарних чисел
int task7(int n) { int sum = 0; int i = 0; do
{
if (i % 2 != 0) sum += i; i++;
} while (i <= n); cout << "7) Сума всiх непарних чисел вiд 1 до N:" << sum << endl; return 0; } /*int task8(int n, int m)
{ n = n + m;
int count = 0;
float sum = 0;
if (n < 0)
n = -n;
while (n != 0)
{
sum += (n % 10);
n = n / 10;
count++;
} cout << "Середнє Арифметичне числа N+m:" << sum / count << endl;
return 0;
}*/ // Функція старт
int main()
{
setlocale(LC_ALL, "Rus");
cout << "\tВведiть число N: ";
string number;
cin >> number;
if (any_of(number.begin(), number.end(), isalpha) ||
count(number.begin(), number.end(), '.') > 1)
{
cout << "Bad input.\n";
return 1;
} if (number.find('.') != string::npos)
{
float fl = stof(number);
cout << fl;
//Знайти 1
task1(fl);
//Знайти 2
task2(fl);
//Знайти 3
task3(fl);
//Знайти 4
task4(fl);
//Знайти 5
task5(fl);
//Знайти 6
task6(fl);
//Знайти 7
task7(fl);
}
else
{
istringstream iss(number, istringstream::in); int val;
iss >> val;
cout << val;
//Знайти 1
task1(val);
//Знайти 2
task2(val);
//Знайти 3
task3(val);
//Знайти 4
task4(val);
//Знайти 5
task5(val);
//Знайти 6
task6(val);
//Знайти 7
task7(val);
if (val * 10 / 2 >= 0)
{
int m;
cout << " До пункту 3\nВведiть коригуюче число для знаходження середнього арифметичного:";
cin >> m;
task3(val, m);
}
return 0;
}
return 0;
} Вивід в консоль(на прикладі числа 12):
Вивід в консоль(на прикладі числа 1.2):
Висновок: у ході виконання цієї лабораторної роботи, я удосконалила свої вміння реалізувати програмні рішення за допомогою циклів у програмі Visual Studio 2019. Процес виконання роботи був цікавим, за допомогою такого інструменту як «откладка», я змогла чітко відслідкувати як працюють написані мною цикли, легко знаходити помилки, виправити їх, та побудувати блок схеми.