14
старший преподаватель кафедры «Автоматика и процессы управления» Поповкин Александр Викторович

Progr labrab-6-2013 - c++ - functions

Embed Size (px)

Citation preview

Page 1: Progr labrab-6-2013 - c++ - functions

старший преподаватель

кафедры «Автоматика и

процессы управления»

Поповкин Александр Викторович

Page 2: Progr labrab-6-2013 - c++ - functions

«Работа с функциями»

cout() cin()

int main()

Page 3: Progr labrab-6-2013 - c++ - functions

Синтаксис функции:

тип_результата имя_функции (объявления аргументов)

{

объявления и инструкции

}

Для возврата из функции используется оператор return:

return выражение;

Page 4: Progr labrab-6-2013 - c++ - functions

Примеры функций

/* Возвращает квадрат целого числа */

int sqr(int x)

{

int y;

y = x*x;

return y;

}

Page 5: Progr labrab-6-2013 - c++ - functions

Примеры функций

/* Нахождение среднего

арифметического вещественных чисел */

int average(int a, int b)

{

int r;

r = (a * b) / 2.0;

return r;

}

Page 6: Progr labrab-6-2013 - c++ - functions

Примеры функций

/* Вывод целого числа на экран */

void printint(int num)

{

printf(“%d “, num);

}

Page 7: Progr labrab-6-2013 - c++ - functions

Пример 1 Программа, которая выводит таблицу кубов чисел от 1 до 10 с функцией,

вычисляющей куб целого числа.

#include <stdio.h>

#include <conio.h>

/* Функция вычисляет куб числа */

int cube(int x)

{

int y;

y = x*x*x;

return y;

}

/* С этой функции начинается выполнение программы

*/

void main()

{ int i;

for (i = 1; i <= 10; i++)

printf("%2d %4d\n", i, cube(i));

getch();

}

Page 8: Progr labrab-6-2013 - c++ - functions

ЗАДАЧА 1

Написать программу для расчѐта периметра

прямоугольника с помощью функции

Page 9: Progr labrab-6-2013 - c++ - functions

double perim(double a, double b)

Функция perim вычисляет и возвращает

периметр прямоугольника (тип double –

вещественное число). У этой функции два

аргумента – длины сторон прямоугольника,

переменные a и b типа double.

printf("P = %lf", perim(a, b));

Расчѐт периметра прямоугольника с помощью

вызова функции perim. Результат

передаѐтся функции printf, которая и

выводит его на экран.

Page 10: Progr labrab-6-2013 - c++ - functions

//* Функция вычисляет периметр прямоугольника */

double perim(double a, double b)

{

int p;

p = 2.0*(a+b);

return p;

}

/* Начало программы */

int main()

{ // Инициализация переменных

?????????????? // Ввод a и b

???????????????

// Вычисление периметра и вывод результата

??????????????

}

Page 11: Progr labrab-6-2013 - c++ - functions

ЗАДАЧА 2

Написать программу, выводящую 10 целых случайных

чисел в диапазоне от 0 до n (n вводится с клавиатуры).

В ней должны быть три функции

void randomize() – сброс генератора случайных чисел

int random(int n) – возвращает случайное число от 0 до n

int main() – основная программа

Page 12: Progr labrab-6-2013 - c++ - functions

/*** Функции ***/

/* Сброс генератора случайных чисел */

void randomize()

{

???????????

}

/* Генерация случайного числа от 1 до n */

int random(int n)

{

???????????

}

int main()

{

cout << "Output random numbers from 0 to n\n"; // Ввести диапазон

// Сбросить генератор случайных чисел вызовом функции

// Вывести десять случайных чисел

// Ожидать нажатия клавиши

}

Page 13: Progr labrab-6-2013 - c++ - functions

ЗАДАЧА 3

Объявить два целочисленных массива с разными размерами и написать

функцию, которая заполняет их элементы значениями и показывает на

экран. Функция должна принимать два параметра – массив и его размер

Page 14: Progr labrab-6-2013 - c++ - functions

void fillAndShowArray(int arrayForFilling[], int size);

int main()

{

const int SIZE1 = 8;

const int SIZE2 = 14;

int arrayForFilling1 [SIZE1] = {};

int arrayForFilling2 [SIZE2] = {};

fillAndShowArray(arrayForFilling1, SIZE1);

fillAndShowArray(arrayForFilling2, SIZE2);

return 0;

}

void fillAndShowArray(int arrayForFilling[], int size)

{

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

{

arrayForFilling[i] = i + 1????????????

cout << arrayForFilling[i] << " ";

}

cout << endl;

}