/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
#include <iostream> //cpp
#include <stdio.h> //c
#include <stdlib.h> //atoi
#include <string.h> //atoi
#include <stdbool.h>
#include <conio.h>
#include <math.h>
using namespace std; // Namenbereich festlegen
// Funktionsprototypen
char * toleranzwerte(int a) {
if (a == 1) {
return "(Toleranz +/- 1%)";
} else if (a == 2) {
return "(Toleranz +/- 2%)";
} else if (a == 5) {
return "(Toleranz +/- 0.5%)";
} else if (a == 6) {
return "(Toleranz +/- 0.25%)";
} else if (a == 7) {
return "(Toleranz +/- 0.1%)";
} else if (a == 10) {
return "(Toleranz +/- 5%)";
} else if (a == 11) {
return "(Toleranz +/- 10%)";
}
}
// Hauptfunktion
int main(void) // void nicht unbedingt nötig, kein Strichpunkt dahinter (ausnahme)
{
const char * farben[21] = {"Schwarz", "Braun", "Rot", "Orange", "Gelb", "Gruen", "Blau", "Violett", "Grau", "Weiss", "Gold", "Silber","","","","","","","","", "Kein Ring"};
char ausfuehren ='j';
char nausfuehren ='n';
int anz_ringe;
double wert;
short int ring1 = -1;
short int ring2 = -2;
short int ring3 = -3;
short int ring4 = -4;
short int ring5 = -5;
char antwort='n';
int reihe;
int a;
cout << "Farbcode von Widerstaenden berechnen" << endl<<endl;
cout << "0 = schwarz" << endl;
cout << "1 = braun" << endl;
cout << "2 = rot" << endl;
cout << "3 = orange" << endl;
cout << "4 = gelb" << endl;
cout << "5 = gruen" << endl;
cout << "6 = blau" << endl;
cout << "7 = violett" << endl;
cout << "8 = grau" << endl;
cout << "9 = weiss" << endl;
cout << "10 = gold" << endl;
cout << "11 = silber" << endl;
cout << "20 = kein Ring" << endl<<endl;
//Abfrage ob erneute Berechnung erfolgen soll am Schluss
while(ausfuehren =='j') {
//Abfrage ob Eingabe der Ringe korrekt war
//Abfrage Anzahl Ringe pro Widerstand
do {
cout << "Bitte geben Sie die Anzahl Farbringe ein (4 oder 5 Ringe): ";
cin >> anz_ringe;
if (anz_ringe==4 || anz_ringe==5) {
cout << "Sie haben die "<<anz_ringe<<"-er Reihe gewaehlt\n";
} else
cout <<"Bitte waehle eine korrekte Reihe!!!"<<endl<<endl;
} while (reihe ==4 || reihe ==5);
//Abfrage ob Eingabe der Ringe korrekt war
//Abfrage für 4 er Ring
if (anz_ringe==4) {
do // Farbe Ring 1 im 4er Ring
{
do
{
cout <<"geben sie die Farbe des 1. Rings ein (0 bis 9): ";
cin >> ring1;
}while((ring1<0) || (ring1>9));
cout << "Ist " << farben[ring1] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
do //Farbe Ring 2 im 4er Ring
{
do
{
cout <<"geben sie die Farbe des 2. Rings ein (0 bis 9): ";
cin >> ring2;
}while((ring2<0) || (ring2>9));
cout << "Ist " << farben[ring2] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
do //Farbe Ring 3 im 4er Ring
{
do
{
cout <<"geben sie die Farbe des 3. Rings ein (0 bis 6 || 10 oder 11): ";
cin >> ring3;
}while((ring3<0) || (ring3>6) && (ring3!=10) && (ring3!=11));
cout << "Ist " << farben[ring3] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
do // Farbe Ring 4 im 4er Ring
{
do
{
cout <<"geben sie die Farbe des 4. Rings ein (0 bis 9): ";
cin >> ring4;
}while((ring4<0) || (ring4>9));
cout << "Ist " << farben[ring4] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
}
//Abfrage für 5 er Ring
else if (anz_ringe==5)
{
do //Farbe Ring 1 im 5er Ring
{
do
{
cout <<"geben sie die Farbe des 1. Rings ein (0 bis 9): ";
cin >> ring1;
}while((ring1<0) || (ring1>9));
cout << "Ist " << farben[ring1] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
do //Farbe Ring2 im 5er Ring
{
do
{
cout <<"geben sie die Farbe des 2. Rings ein (0 bis 9): ";
cin >> ring2;
}while((ring2<0) || (ring2>9));
cout << "Ist " << farben[ring2] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
do //Farbe Ring3 im 5er Ring
{
do
{
cout <<"geben sie die Farbe des 3. Rings ein (0 bis 6 || 10 oder 11): ";
cin >> ring3;
}while((ring3<0) || (ring3>6) && (ring3!=10) && (ring3!=11));
cout << "Ist " << farben[ring3] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
do //Farbe Ring4 im 5er Ring
{
do
{
cout <<"geben sie die Farbe des 4. Rings ein (0 bis 9): ";
cin >> ring4;
}while((ring4<0) || (ring4>9));
cout << "Ist " << farben[ring4] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
do //Farbe Ring5 im 5er Ring
{
do
{
cout <<"geben sie die Farbe des 5. Rings ein (0 bis 9): ";
cin >> ring5;
}while((ring5<0) || (ring5>9));
cout << "Ist " << farben[ring1] << " korrekt? [y/n]: ";
cin >> antwort;
}while(antwort!='y' && antwort!='Y');
}
if (anz_ringe==4){
wert = (ring1*10+ring2)* pow(10,ring3);
cout << wert <<toleranzwerte(ring3)<< endl;
}
if (anz_ringe==5) {
wert = ((ring1*10+ring2)+ring3)* pow(10, ring4);
cout << wert <<toleranzwerte(ring5);
}
}
//Eingabe ob erneute ausführung?
cout << "Erneute Berechnung? (j/n) > ";
cin >> ausfuehren;
}
fflush(stdin);
getchar();
}
// your code goes here
}
}