Erstellen Sie ein C++-Programm, das Dualzahlen in das Dezimalsystem umrechnen kann

Neue Frage »

Auf diesen Beitrag antworten »
N.S Erstellen Sie ein C++-Programm, das Dualzahlen in das Dezimalsystem umrechnen kann

Meine Frage:
Erstellen Sie ein C++-Programm, das Dualzahlen in das Dezimalsystem umrechnen kann.

Zwei Tipps zur Lösung:
Die letzte Ziffer einer beliebigen Zahl erhalten Sie, wenn Sie die Zahl durch 10 dividieren und den Rest dieser Division ermitteln.
Die letzte Ziffer einer Zahl können Sie löschen, wenn Sie die Zahl durch 10 dividieren und nur das ganzzahlige Ergebnis berücksichtigen.

#include <iostream>

using namespace std;

int main()
{
long zahl;
int potenzzahl = 1, position = 0, ergebnis = 0;

// das Feld zum Speichern der Ziffern
int ziffer[16];

// das Feld wird mit 0 besetzt
for (int index = 0; index < 16; index++)
ziffer[index] = 0;
// Dualzahl eingeben
do {
cout << "Geben Sie die Dualzahl ein (max 16 bit): " << endl;
cin >> zahl;
} while (zahl > 1111111111111111);

do {
// die letzte Ziffer ablegen
ziffer[position] = zahl % 10;
//zur nächsten Position gehen
position++;
// durch 10 dividieren um die letzte Ziffer zu löschen
zahl = zahl / 10;
} while (zahl!=0);
for (int schleife = 0; schleife < 16; schleife++)
{ergebnis = ergebnis + ziffer[schleife] * potenzzahl;
potenzzahl = potenzzahl * 2;}

cout <<"Im Dezimalsystem hat die Zahl folgende Darstellung: "<< ergebnis << endl;


return 0;
}



Meine Ideen:
Hi, ich möchte nur wissen, ob ich die Lösung richtig gelöst habe.
Wäre über Hilfe sehr dankbar.
 
Auf diesen Beitrag antworten »
eulerscheZahl RE: Erstellen Sie ein C++-Programm, das Dualzahlen in das Dezimalsystem umrechnen kann

Es funktioniert schonmal.
Du kannst den Code aber etwas kürzen:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
#include <iostream> 

using namespace std; 

int main() 
{ 
    long zahl; 
    int ergebnis = 0, potenz = 1; 

    // Dualzahl eingeben 
    do { 
	    cout << "Geben Sie die Dualzahl ein (max 16 bit): "; 
    	cin >> zahl; 
    } while (zahl > 1111111111111111); 

	while (zahl > 0) {
		ergebnis += potenz * (zahl % 10);
		zahl /= 10;
		potenz *= 2;
	}

    cout <<"Im Dezimalsystem hat die Zahl folgende Darstellung: " << ergebnis << endl; 

    return 0; 
}
Auf diesen Beitrag antworten »
N.S RE: Erstellen Sie ein C++-Programm, das Dualzahlen in das Dezimalsystem umrechnen kann

Vielen vielen Dank!
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »