Лабораторная работа: Модульное программирование
Разбиение программы на функции
#include <stdio. h>
voidmain ()
{
inta, b, div, mod;
printf (“Введите два целых числа”);
scanf (“%d%d”, &a, &b);
div = a/b;
mod = a%b;
printf (“\n%d /%d =%d”, a, b, div);
printf (“\n%d%%%d =%d", a, b, mod);
}
Выделите в три отдельных функции фрагменты, связанные с вводом данных, с вычислениями и с организацией вывода результатов. Вычислительная функция должна быть одна. Глобальные переменные не использовать.
5.5 Тестирование функции
5.5.1 Сортировка массива
Следующий прототип функции сортирует массив А размером n по возрастанию на месте оригинального массива voidsort (intA [], intn);
Напишите тест этой функции для трех различных вариантов исходных данных.
5.5.2 МиниМакс
Функция находит минимальное и максимальное из двух чисел типа int и имеет прототип
voidMinMax (inta, intb, int *pmin, int *pmax);
Напишите тест для этой функции.
6. Лабораторные задания
6.1 Линейное уравнение
Написать функцию, которая решает линейное уравнение a∙ x+ b= 0 с проверкой выхода за диапазон типа float. Прототип функции
intlinur (floata, floatb, float *px);
Функция получает: a и b- коэффициенты уравнения, px- указатель на ячейку, в которую будет помещен единственный корень уравнения.
Функция возвращает:
0 - нет решения,
1 - найдено единственное решение,
2 - любое число является решением,
3 - решение единственное, но не входит в диапазон типа переменной x.
Вывод текстовой информации с результатами решения организовать с использованием оператора switch. Выход из программы должен быть единственным. Организовать тестирование функции linur.
6.2 Четные элементы массива
Напишите функцию, которая находит все четные элементы одномерного массива элементов типа int. Организовать тестирование функции.
Прототип функции