Раздел: Задачи / Простейшие /
Найдите сопротивление параллельного соединения
Основы программирования Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее... |
Условие задачи 6.1.2.23
Задача 6.1.2.23
Три сопротивления R1, R2, R3 соединены параллельно. Найдите сопротивление соединения.
Вообще задача довольно простая, если знать формулу расчёта параллельно соединённых резисторов. Но я всё-таки решил эту задачу рассмотреть, поскольку она лежит в практической плоскости и её решение может пригодиться начинающим электронщикам и электрикам.
Три сопротивления R1, R2, R3 соединены параллельно
Для начала для тех, кто совершенно далёк от электротехники, расскажу и покажу, что такое параллельное соединение.
Формула для вычисления сопротивления цепи из параллельно соединённых резисторов следующая:
1/R = (1/R1) + (1/R2) + … + (1/Rn)
где R - общее сопротивление цепи.
Отсюда общее сопротивление трёх резисторов будет равно:
R = 1 / [(1/R1) + (1/R2) + (1/R3)]
Вот, в общем то, и всё. Остаётся только в программный код вставить эту формулу на нужном языке программирования. Ну а чтобы было немного поинтереснее, давайте сделаем так, чтобы сопротивления резисторов мог вводить пользователь.
То, что у меня получилось на Паскале и С++, приведено ниже.
program resistors; //**************************************************************** // ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ //**************************************************************** var R, R1, R2, R3 : single; //**************************************************************** // ОСНОВНАЯ ПРОГРАММА //**************************************************************** begin Write('R1 = '); ReadLn(R1); Write('R2 = '); ReadLn(R2); Write('R3 = '); ReadLn(R3); R := 1 / ( (1/R1) + (1/R2) + (1/R3) ); WriteLn('R = ', R:0:2); WriteLn('The end. Press ENTER...'); ReadLn; end.
#include <cstdlib> #include <iostream> using namespace std; //**************************************************************** // ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ //**************************************************************** float R, R1, R2, R3; //**************************************************************** // ОСНОВНАЯ ПРОГРАММА //**************************************************************** int main(int argc, char *argv[]) { cout << "R1 = "; cin >> R1; cout << "R2 = "; cin >> R2; cout << "R3 = "; cin >> R3; R = 1 / ( (1/R1) + (1/R2) + (1/R3) ); cout << "R = " << R << endl; system("PAUSE"); return EXIT_SUCCESS; }
Вступить в группу "Основы программирования"
Подписаться на канал в РУТУБ Подписаться на Дзен-канал Подписаться на рассылки по программированию |
Как стать программистом 2.0
Эта книга для тех, кто хочет стать программистом. На самом деле хочет, а не просто мечтает. И хочет именно стать программистом с большой буквы, а не просто научиться кулебякать какие-то примитивные программки… Подробнее... |
Помощь в технических вопросах
Помощь студентам. Курсовые, дипломы, чертежи (КОМПАС), задачи по программированию: Pascal/Delphi/Lazarus; С/С++; Ассемблер; языки программирования ПЛК; JavaScript; VBScript; Fortran; Python и др. Разработка (доработка) ПО ПЛК (предпочтение - ОВЕН, CoDeSys 2 и 3), а также программирование панелей оператора, программируемых реле и других приборов систем автоматизации. Подробнее... |