77 lines
2.1 KiB
C++
77 lines
2.1 KiB
C++
/*
|
|
Autore: Manuel Vichi
|
|
Programma che calcola le resistenze in serie e in parallelo
|
|
*/
|
|
#include <iostream>
|
|
#include <cstdlib>
|
|
using namespace std;
|
|
int main(void) {
|
|
unsigned int scelta = 3;
|
|
unsigned int numresistenze = 0;
|
|
float r1,r2;
|
|
float valoreResistenza;
|
|
float risultato = 0;
|
|
unsigned int i = 0;
|
|
while (scelta != 0) {
|
|
while (scelta>2) {
|
|
cout << "Scegli un opzione" << endl << "1) Calcola resistenze in serie" << endl << "2) Calcola resistenze in parallelo" << endl << "0) Esci" << endl;
|
|
cin >> scelta;
|
|
cout << endl;
|
|
if (scelta>2)
|
|
cerr << "ERRORE! Scelta non valida" << endl;
|
|
}
|
|
switch (scelta) {
|
|
case 1:
|
|
while (numresistenze == 0) {
|
|
cout << "Inserisci il numero di resistenze: ";
|
|
cin >> numresistenze;
|
|
cout << endl;
|
|
}
|
|
while (i < numresistenze) {
|
|
i++;
|
|
cout << "Inserisci il valore della resistenza in Ohm: ";
|
|
cin >> valoreResistenza;
|
|
cout << endl;
|
|
risultato = risultato + valoreResistenza;
|
|
}
|
|
cout << "Il valore calcolato R equivalente e': " << risultato << endl;
|
|
system("pause");
|
|
return 0;
|
|
case 2:
|
|
while (numresistenze < 2) {
|
|
cout << "Inserisci il numero di resistenze: ";
|
|
cin >> numresistenze;
|
|
cout << endl;
|
|
if (numresistenze < 2)
|
|
cout << "Il numero di resistenze deve essere almeno 2!" << endl;
|
|
}
|
|
if (numresistenze == 2) {
|
|
cout << "Inserisci il valore della resistenza in Ohm: ";
|
|
cin >> r1;
|
|
cout << endl;
|
|
cout << "Inserisci il valore della resistenza in Ohm: ";
|
|
cin >> r2;
|
|
cout << endl;
|
|
risultato = (r1 * r2) / (r1 + r2);
|
|
} else {
|
|
while (i < numresistenze) {
|
|
i++;
|
|
cout << "Inserisci il valore della resistenza in Ohm: ";
|
|
cin >> valoreResistenza;
|
|
cout << endl;
|
|
risultato = risultato + (1 / valoreResistenza);
|
|
}
|
|
risultato = 1 / risultato;
|
|
}
|
|
cout << "Il valore calcolato R equivalente e': " << risultato << endl;
|
|
system("pause");
|
|
return 0;
|
|
case 0:
|
|
return 0;
|
|
default:
|
|
return 0;
|
|
}
|
|
}
|
|
return 0;
|
|
}
|