Problem mit bool initializing



  • @Swordfish Vielen Dank für deine Hilfe!
    und ein Gute Nacht 😞



  • @HeavyStrike sagte in Problem mit bool initializing:

    😞

    Nicht den Kopf hängen lassen. Mach jetzt hinne und probiers aus. Wenns nicht tut Zeig nochmal deinen Code.



  • @Swordfish Die Ausgabe sieht so aus:
    Sie haben den Umwandler Von Hexadezimal zu Dezimal ausgewaehlt
    Hex in Dez - Umrechnung
    Geben Sie Ihre Hexadezimalzahl ein
    1b
    Laenge2
    11
    1
    67

    Ergebnis:17179

    Process exited after 2.532 seconds with return value 0
    Drücken Sie eine beliebige Taste . . .

    code ist derzeit (Empfehlung es ist in case 3, damit du nicht suchen musst):

    #include <iostream>
    #include <cstdlib>
    #include <String>
    using namespace std;
    
    int main(int argc, char** argv) 
    {
     char Antwort;
     int zahl;
     int count = 0, rest[32];
     						
    //---------Ausgabe der Vorinformationen-------------------------------
    cout <<"Dies ist der Multiumrechner."<<endl ;
    cout <<"Waehlen sie Ihre gewuenschte Umrechnungsart aus.";
    cout <<"\nVon Dezimal zu Hexadezimal 	: 1" << endl;
    cout <<"Von Dezimal zu Binaer      	: 2" << endl;
    cout <<"Von Hexadezimal zu Dezimal 	: 3" << endl;
    cout <<"Von Hexadezimal zu Binaer  	: 4" << endl;
    cout <<"Von Binaer zu Hexadezimal  	: 5" << endl;
    cout <<"Von Binaer zu Dezimal     	: 6\n \n \n" << endl;
    cout <<"Bitte geben sie Ihre Antwort ein"<< endl;
    //-------- EInelesen der Antwort---------------------------
    cin >>Antwort;
    //----------------Switch zur Antwortsunterscheidung----------------------------
    switch(Antwort)
    {
    //***********Von Dezimal zu Hexadezimal    ****************
    	case'1':
    	{
    		system("cls");
    		cout << "\nSie haben den Umwandler ``Von Dezimal zu Hexadezimal`` ausgewaehlt";
    
        	cout << "\n\n\nBitte geben Sie eine Dezimal Zahl ein: ";
       		cin >> zahl;
       		
        
       	 // Berechnung / Ausgabe Hexadezimal
      		cout << "Umgerechnet in eine Hexadezimal Zahl lautet diese: "; 
       		cout << endl;
       		while (zahl!=0) 
    		{
           		cout << (zahl%16) <<endl;
            	zahl = zahl / 16;
        	}    
            
    	}
    		break;
    
    //*********** Von Dezimal zu Binaer   ****************
    
    	case'2':
    		{
    		system("cls");										//Leeren der Bildschirmes
    		cout <<"\nSie haben den Umwandler ``Von Dezimal zu Binaer`` ausgewaehlt"<< endl;				//Titel der gewaehlten Option
    	//--------Integer----------	--------------------------	
    	
    	bool go = true;
    	string run;
    	
    
    	
    	while(go == true)										//Beginn der Schleife
    	{
    		cout <<"Bitte geben Sie eine Dezimalzahl ein\n";
    		cin >>zahl;
    //-----------Schleifenbeginn-----------------
    		for(int i= 0;i<32; i++)                               //Bedingung der Berechnung
    			{
    				rest[i] = zahl%2;
    				zahl = zahl / 2;
    				count++;
    					
    				if(zahl==0)									// Outbreak aus der Schleife
    				{
    					break;	
    				}
    			}
    //-----------Schleifenbeginn fuer Berechnung-----------------
    			while(count > 0)								//Zaehler
    			{
    				cout << rest[count - 1];
    				count--;
    			}
    			cout <<"\nNeue Berechnung? (y/n)";				//abfrage
    			cin >>run;
    			if(run=="n")
    			{
    				break;
    			}
    			else if(run == "y")	
    			{
    				go = true;
    			}
    			else
    			{	
    				cout<<"Fehlerhafte Eingabe. Bitte wiederholen Sie die Eingabe";				// Bei Fehlerhaften Einagebe
    				cout <<"\nNeue Berechnung? (y/n)";
    				cin >> run;
    			}
    			if(run=="n")
    			{
    				break;
    			}
    				else if(run == "y")	
    				{
    					go = true;
    				}
    				else
    				{	
    					break;
    				}
    	}
    	
    	
    	cin.get();
    		}
    		break;
    		
    //*********** Von Hexadezimal zu Dezimal   ****************
    				
    	case'3':
    		{
    			system("cls");										//Leeren der Bildschirmes
    			cout <<"\nSie haben den Umwandler ``Von Hexadezimal zu Dezimal`` ausgewaehlt"<< endl;				//Titel der gewaehlten Option
    			int i=0, s=0, laenge; 											//i und s f¨¹r das Array
    			int dezWerte=0;													//um Falsche Ausgaben zu verhindern
    			string HexEingabe;
    			int HexArray[4];												//[4] f¨¹r die 4 Eingaben/Zeichen
    			int HexVorgabe [4] ={1, 16, 256, 4096};							// 16 hoch 0-3 Ergebnisse
    			cout <<"Hex in Dez - Umrechnung" <<endl;
    			cout <<"Geben Sie Ihre Hexadezimalzahl ein\n";						
    			cin >> HexEingabe;
    			laenge = HexEingabe.length();									//Analyse der L?nge f¨¹r sp?tere Verwendung
    			cout <<"Laenge" << laenge << endl;
    			for(i=laenge-1; i>=0; i--)										//Beginn des Case
    				{
    					switch (HexEingabe[i])
    						{
    		
    							case'A':
    							case'a': HexArray[s]=10; break;
    							case'B':
    							case'b': HexArray[s]=11; break;
    							case'C':
    							case'c': HexArray[s]=12; break;
    							case'D':
    							case'd': HexArray[s]=13; break;
    							case'E':
    							case'e': HexArray[s]=14; break;
    							case'F':
    							case'f': HexArray[s]=15; break;
    							default : HexArray[s]= HexEingabe[i]-48;
    						}
    					cout <<HexArray[s]<<endl;
    					dezWerte = dezWerte+ HexVorgabe[s]*HexArray[s];s = s+1;	
    				}		
    			cout <<HexArray[s]<<endl;
    			dezWerte = dezWerte+ HexVorgabe[s]*HexArray[s];s = s+1;
    	
    	
    
    			cout << endl<< "Ergebnis:" << dezWerte;
    		}
    		break;
    
    //*********** Von Hexadezimal zu Binaer   ****************
    		
    	case'4':
    		{
    						
    		
    		cout<<"Antwort"<<endl;	
    		
    		
    		
    		}
    		break;
    		
    //*********** Von Binaer zu Hexadezimal   ****************
    		
    				
    	case'5':
    		{
    						
    		
    		
    		cout<<"Antwort"<<endl;	
    		
    		
    		}
    		break;
    			
    //*********** Von Binaer zu Dezimal   ****************
    				
    	case'6':
    		{
    						
    		
    		cout<<"Antwort"<<endl;	
    		
    		
    		
    		}
    		break;
    
    
    
    }
    	
    }
    


  • @Swordfish sagte in Problem mit bool initializing:

    Dann packst Du Zeilen 38 und 39 so wie sie sind unter das switch in die for-Schleife.

    Damit war gemeint verschieben, nicht kopieren.



  • @Swordfish oops , habe die kopie von zeile 157 und 158 entfernt

    jetzt die Ausgabe :
    Sie haben den Umwandler Von Hexadezimal zu Dezimal ausgewaehlt
    Hex in Dez - Umrechnung
    Geben Sie Ihre Hexadezimalzahl ein
    1b
    Laenge2
    11
    1

    Ergebnis:27



  • @HeavyStrike sagte in Problem mit bool initializing:

    Ergebnis:27

    Na, das stimmt doch 👍



  • @Swordfish Vielen Dank für deine Hilfe und deine Geduld
    Mir Fehlen noch 3 Umrechner, jedoch schreibe ich morgen zeitgleich ne Klausur und brauche Schlaf (nach dem Structorizer)
    also beende ich das Structogramm und gehe schlafen.

    Vielen Dank, mit Glück rettet das meine Note!



  • @Swordfish Oder haste zufälligerweise nen mit Grundkenntnissen geschriebennen Rechnern rumliegen:
    Hex zu Binär
    Binär zu Hex
    Binär zu Dezimal



  • Leider nein. Und das wäre auch nicht fair deinen Kommilitonen gegenüber.



  • die haben in 80% der fällen 3 Jahre vorerfahrung aber naja , das muss reichen , Vielen Dank nochmal und noch eine Gute Nacht/Guten Morgen 😃


Anmelden zum Antworten