Sample-Useful-Cpp/resistenze.cpp

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;
}