I möchte euch hier zeigen wie man Dezimalzahlen mit C++ zu Hexerdezimalzahlen wandelt.
Zuerst benötigen wir 4 Variablen (einen Array).
Danach muss eine Ganzzahl eingegeben werden.
Jetzt brauchen wir eine Schleife. In der Schleife wird die Dezimalzahl durch 16 geteilt.
Zur Erinnerung: Hexerdezimal (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) besteht aus 16 Zeichen deshalb durch 16.
Außerdem wird der Rest berechnet der übrig bleibt. Dieser wird in dem Array abgespeichert.
Die Schleife läuft solange wie die Dezimal nicht 0 ist.
Danch benötigen wir eine weitere Schleife.
In dieser werden alle Werte die in dem Array abgepeichet wurden aufgerufen.
Wenn ein Wert zwischen 10 und 15 liegt wird A,B,C,D,E oder F ausgegeben.
Sonst wird der Wert augegeben.
Und schon haben wir die Dezimalzahl zu einer Hexerdezimalzahl gemacht.
Enjoy
Credits: NikM
Zuerst benötigen wir 4 Variablen (einen Array).
Danach muss eine Ganzzahl eingegeben werden.
Code:
int iDezimal = 0; int iRest; int i_a_ToHex [100]; int i = 0; cout << "Enter a Number: "; cin >> iDezimal;
Zur Erinnerung: Hexerdezimal (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) besteht aus 16 Zeichen deshalb durch 16.
Außerdem wird der Rest berechnet der übrig bleibt. Dieser wird in dem Array abgespeichert.
Die Schleife läuft solange wie die Dezimal nicht 0 ist.
Code:
do
{
iRest = 0;
iRest = iDezimal%16;
i_a_ToHex[i] = iRest;
iDezimal = iDezimal / 16;
i++;
}while (iDezimal != 0);
In dieser werden alle Werte die in dem Array abgepeichet wurden aufgerufen.
Wenn ein Wert zwischen 10 und 15 liegt wird A,B,C,D,E oder F ausgegeben.
Sonst wird der Wert augegeben.
Und schon haben wir die Dezimalzahl zu einer Hexerdezimalzahl gemacht.
Code:
for (int j = i-1; j != -1; j--)
{
if (i_a_ToHex[j] == 10)
cout << "A";
else if (i_a_ToHex[j] == 11)
cout << "B";
else if (i_a_ToHex[j] == 12)
cout << "C";
else if (i_a_ToHex[j] == 13)
cout << "D";
else if (i_a_ToHex[j] == 14)
cout << "E";
else if (i_a_ToHex[j] == 15)
cout << "F";
else
cout << i_a_ToHex[j];
}
Credits: NikM