Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metod_uk_k_l_r_3.doc
Скачиваний:
6
Добавлен:
18.12.2018
Размер:
142.34 Кб
Скачать
  1. Лабораторная работа №3. Функции

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

  1. 3.1 Пример программы с использованием функции, не возвращающей значения

Рассмотрим программу, выводящую на экран объем цилиндра. Основная программа запрашивает радиус основания и высоту цилиндра и передает их в функцию. (листинг 8) Функция реализует вычисления и вывод результата на экран (рис.14).

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

#include <iostream>

#include <math.h>

using namespace std;

void func(int h1, int r1)

{ cout << "\n Объем цилиндра: ";

cout << M_PI*r1*r1*h1 << "\n";

}

int main(void)

{ int h; //высота цилиндра

Int r; //радиус основания цилиндра

cout << "Введите высоту цилиндра:";

cin >> h;

cout << "Введите радиус основания цилиндра:";

cin >> r;

func(h, r);

}

Рисунок 14 – Результат выполнения программы

  1. 3.2 Пример программы с использованием функции, возвращающей значения

Рассмотрим следующую задачу: вводится последовательность целых чисел, 0 - конец последовательности. Найти минимальное число среди простых чисел и максимальное среди чисел, не являющихся простыми. Целое число называется простым, если оно делится нацело только на само себя и единицу.

Для решения данной задачи создадим функцию prostoe (листинг 9), которая будет проверять, является ли число N простым. Входным параметром функции будет целое положительное число N. Функция будет возвращать значение 1, если число простое и 0 - в противном случае. Результат работы программы находится на рис. 15.

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

#include <iostream>

using namespace std;

int prostoe(int N)

{ //Функция определяет, является ли число простым

int i, pr = 1;

for(i = 2;i <= N/2;i++)

if (N % i == 0)

{ pr = 0; break;}

return pr;

}

int main(void)

{ int kp = 0; //счетчик простых чисел

int knp = 0; //счетчик не простых чисел

int min, max;

Int n; // элемент последовательности

cout <<"Введите последовательность целых чисел,";

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

cout << "n = "; // ввод первого элемента

cin >> n; // последовательности

while (n!=0)

{

if (prostoe(n))

{ kp++; //увеличиваем счетчик простых чисел

if (kp == 1) // Предполагаем, что первое

min = n; // простое число минимально,

//если найдется меньшее число, сохраняем его

else if (n < min) min = n;

}

else

{ knp++; //увеличиваем счетчик чисел,

// не являющихся простыми

if (knp == 1 ) // Предполагаем, что первое

max = n; // не простое число максимально,

//если найдется большее число, сохраняем его

else if (n > max) max = n;

}

// ввод следующего элемента последовательности

cout << "n = "; cin >> n;

}

if (kp > 0)

cout << "\n Минимальное простое число - " <<min;

else cout << "\nНет простых чисел!\n";

if (knp > 0)

cout << "\n Максимальное не простое число - " << max << "\n";

else cout << "\nНет не простых чисел!\n";

}

Рисунок 15 – Результат выполнения программы

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]