Dezimal in Hexadezimal

Andreas703

Mitglied
Hy Leute!

Ich hab ein wirklich dringendes Prob da ich nun am Montag nen Test hab! Und ich muss unbedingt wissen wie man Dezimal in Hexadezimal umrechnen kann!


Hier mal der Code den ich bis jetzt hab!


Code:
#include <stdio.h>
  #include <conio.h>
  #include <iostream.h>
  int main()
  {
  int a,b,z;
  do
  	{  cout<<"Gib eine Zahl an\n";
  	   cin>>a;
  	   b=a/16;
  	   z=b%a;
  	   cout<<"\nErgebnis= "<<z;
  	   getch();
  	  
  	}
  	while(a!=-1); 
  	return 0;
  }

Diese Form sollte es auch beibehalten da ich noch nicht allzuviele andere Befehle kenne!
Ich kann erst die paar und sowas wie Switch,for,if, und ja das wars auch schon im großen und ganzen! Außer eben dem was da in dem noch drinsteht!
http://[/CODE] <br /> <br /> Diese ...en" smilieid="50" class="inlineimg" />)<br />
http://[/CODE] <br /> <br /> Dies...en" smilieid="50" class="inlineimg" />)<br />
 
Zuletzt bearbeitet:
moin


Muss es umgerechnet werden oder einfach nur in hexadezimaler Form ausgegeben werden?
Code:
#include <iostream.h>

int main()
{
	int zahl;
	do
	{
		cout<<"\nGib eine Zahl an\n";
		cin>> zahl;
		cout<< "\n" << hex << zahl;
		
		cin.get();
	}
	while(zahl!=-1); 

	return 0;
}


mfg
umbrasaxum
 
so darf es leider nicht sein! Ich muss nämlich leider dieses a%b einbauen!
Mich nervt es schon recht lang und ich versuchs jetzt schon über 2Wochen hinzubekommen, schaffs aber nicht!
 
moin


Erstmal vorweg:
Wir sind nciht da um deine Hausaufgaben zu machen.

Zum Thema:
Such per Suchfunktion mal nach "hexadezimal" oder nach "dezimal", ein paar Anregungen lassen sich da finden.


mfg
umbrasaxum
 
also mal zu dem das ihr nicht da seid meine Aufgaben zu machen!
Es ist keine Aufgabe sondern dies kommt zu nem Test(das weiß ich da unsere Parallelklasse genau die gleiche Aufgabenstellung hatte) und da will ich dies eben schaffen! Und gelernt haben wirs noch nicht!

Und bei der Suchfunktion hab ich leider nix passendes gefunden :(
 
naja da erkennt er sofort das das nicht aus eigenen Stücken geschrieben wurde! Denn da kann ich die Hälfte überhaupt nicht verstehen bei dem Prog dort!
 
moin


Hab per Google auch was gutes gefunden:
Kommen wir nun zur Umrechnung von Dezimalzahlen in die anderen Systeme. Hierzu gibt es eine Vorgehensweise, die für alle Systeme gleich ist. Man ermittelt zuerst die Anzahl der Zeichen für das Zielsystem und kann dann gleich loslegen.
Ich wähle hier einfach mal 13677 als Dezimalzahl und rechne diese erst mal in eine Hexadezimalzahl um. Hier hat das Zielsystem also 16 Zeichen und jetzt kann man rechnen:


13677:16=854 Rest 13
854:16=53 Rest 6
53:16=3 Rest 5
3:16=0 Rest 3

Jetzt nimmt man die Zahlen, die als Rest übrig geblieben sind und zwar in der Reihenfolge von unten nach oben und erhält in diesem Beispiel als Ergebnis 3 5 6 13. Diese Zeichen werden einfach hintereinander weggeschrieben, wobei allerdings die Zahlen von 10 bis 15 nochmals umgesetzt werden müssen; und zwar:
10 als A,
11 als B,
12 als C,
13 als D,
14 als E und
15 als F.
Wenn wir das auf dieses Beispiel anwenden erhalten wir als Ergebnis 356D.
Nehmen Sie doch mal Ihren Taschenrechner und prüfen das Ergebnis nach!

So, den Rest erhällst du mit "rest = zahl / 16", und dann immer so weiter.

Werde das auch mal eben selber machen.


mfg
umbrasaxum
 
moin


Und ich denk ja garnicht dran!
Das machst du mal schön selber, aber ich helfe natürlich gerne....

Ich hab im ganzen Programm einmal % (modulu) und einmal / (geteilt) gebraucht.


mfg
umbrasaxum
 

Anhänge

  • test.zip
    1,8 KB · Aufrufe: 675
Zurück