Повторение: Модульный калькулятор
Часть раздела Object Oriented Programming путешествия по C на Coddy — урок 5 из 61.
Задание
ЛегкоДавайте создадим модульный калькулятор, который выполняет основные арифметические операции, распределенный по трем файлам, чтобы закрепить все, что вы узнали о модульном программировании на C.
Вы создадите три файла:
calc.h: Ваш заголовочный файл, объявляющий три функции калькулятора:add,subtractиmultiply. Каждая функция принимает два целых числа и возвращает целое число. Защитите свой заголовочный файл с помощью include guards, используя символCALC_H.calc.c: Ваш исходный файл, содержащий реализации всех трех операций. Не забудьте включить собственный заголовочный файл, чтобы объявления и определения оставались синхронизированными.main.c: Ваш основной файл, который включает заголовочный файл и использует функции калькулятора для выполнения операций на основе входных данных.
Вы получите три целых числа на вход: a, b и c.
В вашей функции main выполните следующие вычисления и выведите каждый результат на отдельной строке:
- Сумма
aиb - Результат вычитания
cизa - Произведение
bиc
Выведите результаты в следующем формате:
Sum: {result}
Difference: {result}
Product: {result}Например, при входных данных 10, 5 и 3 вывод будет следующим:
Sum: 15
Difference: 7
Product: 15Попробуйте сами
#include <stdio.h>
#include "calc.h"
int main() {
int a, b, c;
scanf("%d", &a);
scanf("%d", &b);
scanf("%d", &c);
// TODO: Вычислить сумму a и b, используя функцию add
// TODO: Вычислить разность a минус c, используя функцию subtract
// TODO: Вычислить произведение b и c, используя функцию multiply
// TODO: Вывести результаты в требуемом формате:
// Sum: {result}
// Difference: {result}
// Product: {result}
return 0;
}
Все уроки раздела Object Oriented Programming
1Основы модульного программирования
Заголовочные файлыСтражи включенияИсходные файлыСтатические функцииПовторение: Модульный калькулятор4Инкапсуляция
Концепция непрозрачных указателейОпределение непрозрачных структурГеттеры и сеттерыВалидация в сеттерахИтоги: Секретный ящик2Объекты и методы
Структуры как объектыУказатель 'Self'Константная корректностьУказатель против значенияВспомогательные методыИтоги: Point Manager5Проект: Простой банковский счет
Настройка проектаРеализация счета3Жизненный цикл объекта
Паттерн «Конструктор»Паттерн «Деструктор»Инициализация в стекеГлубокое копированиеПовторение: String Wrapper6Наследование через композицию
Встраивание структурПравило первого элементаДоступ к элементам родителяUpcastingПовторение: Иерархия фигур9Проект: Рисование фигур
Обзор проектаРеализация круга