Вычисление сопротивления цепи, состоящей из двух резисторов (соединенных последовательно или параллельно) - C (СИ)
Формулировка задачи:
Написать функцию, которая вычисляет сопротивление цепи, состоящей из двух резисторов, которые могут быть соединены последовательно или параллельно. Функция должна проверять корректность параметров: если неверно указан тип соединения, то функция должна возвращать –1.
Решение задачи: «Вычисление сопротивления цепи, состоящей из двух резисторов (соединенных последовательно или параллельно)»
textual
Листинг программы
#include <stdio.h> #define POSL 1 #define PARAL 2 float resist(float a, float b, int type) { if(type !=POSL && type != PARAL)return -1; if(type == POSL) return a+b; if(type == PARAL) return (a*b)/(a+b); return -1; } int main(void) { printf("%f\n", resist(100, 100, POSL)); printf("%f\n", resist(100, 100, PARAL)); return 0; }
Объяснение кода листинга программы
- Подключение заголовочного файла
для работы с функцией вывода. - Определение двух констант POSL и PARAL для указания типов соединения резисторов (последовательное и параллельное).
- Создание функции resist с тремя аргументами (a, b, type) типа float и int.
- Проверка типа соединения резисторов с помощью оператора
не равно
и возврат значения -1 в случае неверного ввода. - В случае последовательного соединения, возврат суммы значений резисторов.
- В случае параллельного соединения, возврат значения, равного произведению резисторов, делённому на их сумму.
- В функции main вывод результатов вызова функции resist с первым аргументом 100, вторым аргументом 100 и третьим аргументом POSL.
- Вывод результатов вызова функции resist с первым аргументом 100, вторым аргументом 100 и третьим аргументом PARAL.
- Возврат 0 в функции main, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д