ich muss mit cpp ein programm schreiben, dass eine zahl einliest und daraus die binär zahl ausgibt,
die schwirigkeit bestaht darin, dass für mich alle normalen möglichkeiten gestrichen wurde.
verboten sind der gebrauch von;
arrays, vecotrs, lists etc
funktionen zu definieren ausser der main etc,
meine idee besteht darin, das mit modulo 2 zu machen und nem loop, was soweit auch geht nur LSB und so steht an der falschen stelle, es kommt also genau die verkehrte binärzahl raus bei 6 kommt 011 anstelle von 0110
es kann ja nicht sein, dass ich die alle zuerst in ints speichern muss danach ausgeben?
nun hat wer ne idee dazu?
hey
sizeof als funktion ist leider nicht zugelassen
zugelassen sind nur
loops, variablen, cin, cout solche sachen halt
so hab ichs versucht, aber problem wie geschildert
Code:
#include <iostream>
using namespace std;
int main ()
{
int n;
cout << "gib eine zahl n an ";
cin >> n ;
int var = (n);
cout << var;
while(var != 0){
cout << var%2;
var = var/2;
}
return 0;
}
und was wenns keine 4 bit ist ? dann mit if und fallunterscheidungen ?
ich mag mich entsinnen, dass man das iwie mit dem negativen + 1 machen kann sieht jemand da ne möglichkeit ?
c++ ordentlich mit einem buch lernen.
dich in einem verständlichem satz auszudrücken könnte auch helfen.
die größe ist durch den typ und den compilerdefinitionen fest vorgegeben.
int main()
{
int a, b, c;
printf("Enter an integer in decimal number system\n");
scanf("%d", &a);
printf("%d in binary number system is:\n", a);
for (b = 31; b >= 0; b--)
{
c = a >> b;
if (c & 1)
printf("1");
else
printf("0");
}
printf("\n");
return 0;
}
Die 31 kannst du auch für jede Zahl errechnen in dem du schaust wie oft sie sich /2 teilen lässt + 1 ^^
int main()
{
int a, b, c;
printf("Enter an integer in decimal number system\n");
scanf("%d", &a);
printf("%d in binary number system is:\n", a);
for (b = 31; b >= 0; b--)
{
c = a >> b;
if (c & 1)
printf("1");
else
printf("0");
}
printf("\n");
return 0;
}
Die 31 kannst du auch für jede Zahl errechnen in dem du schaust wie oft sie sich /2 teilen lässt + 1 ^^
Nicht ganz perfekt, aber wir wollen ja nicht seine ganzen Hausaufgaben machen
Deine Vorgaben sind jetzt keine wirklichen Einschränkungen, wie du es direkt als String ausgibst würde dir ja schon gezeigt, was du machen kannst um sie zwischen zu speichern, du erstellst eine struct bestehend aus einem Byte für die Länge, und einen boolpointer auf die Ziffern
Dann trägst du über eine schleife in den pointer wahr oder falsch ein, increased den pointer, und erhost die Länge um eins, und am Ende setzt du den pointer wieder auf die erste Ziffer
Und wo ist genau der unterschied zu meiner lösung, außer dass se wesentlich unperfomanter ist?
Man darf kein sizeof brauchen und wie er die 31 weg bekommt hab ich ihm ja gesagt also macht es alles was es soll.
Quote:
Originally Posted by warfley
Deine Vorgaben sind jetzt keine wirklichen Einschränkungen, wie du es direkt als String ausgibst würde dir ja schon gezeigt, was du machen kannst um sie zwischen zu speichern, du erstellst eine struct bestehend aus einem Byte für die Länge, und einen boolpointer auf die Ziffern
Dann trägst du über eine schleife in den pointer wahr oder falsch ein, increased den pointer, und erhost die Länge um eins, und am Ende setzt du den pointer wieder auf die erste Ziffer
und du bist dir sicher das du so einen Aufwand für sowas simples betreiben willst? ^^ Nicht das es nicht funktionieren würde. Man könnte das ganze auch mit ganz anderen Rechenmethoden machen die noch viel effizienter sind aber am ende muss die Aufgabe erfüllt sein und da ist der einfachste weg der richtige weg.
und du bist dir sicher das du so einen Aufwand für sowas simples betreiben willst? ^^ Nicht das es nicht funktionieren würde. Man könnte das ganze auch mit ganz anderen Rechenmethoden machen die noch viel effizienter sind aber am ende muss die Aufgabe erfüllt sein und da ist der einfachste weg der richtige weg.
Naja wenn die aufgabe nur ist das es ausgegeben werden soll ist das natürlich kompletter overkill, aber wenn damit im nachinein weiter gerechnet werden soll ist das wohl die einfachste möglichkeit das ganze zwischen zu speichern, ohne arrays und listen zu verwenden
Naja wenn die aufgabe nur ist das es ausgegeben werden soll ist das natürlich kompletter overkill, aber wenn damit im nachinein weiter gerechnet werden soll ist das wohl die einfachste möglichkeit das ganze zwischen zu speichern, ohne arrays und listen zu verwenden
Jo das meinte ich ^^
Habe auch immer viel zu viel gemacht bis einmal eine Prüfung kam die so gross war das du einfach keine Zeit hattest etwas schön zu machen. Sobald es für etwas Noten gibt muss man einfach schauen das man die Vorgaben erfüllt, wenn das nicht geht muss es wenigstens irgendwie laufen, aber nie zu viel Machen. Gibt sowieso nie plus Punkte ^^ Meiner Meinung nach der falsche Weg aber so ist es halt.
Hexadezimal ~ Binär ~ Dezimal 09/11/2013 - Tutorials - 24 Replies Hallo liebe Community,
heute will ich mich mal nützlich machen und euch etwas beibringen. Das hier gibt es bestimmt xtausend mal im Internet. Aber noch nicht auf Elitepvpers. Daher wollte ich mich darum kümmern. Ich hoffe einigen wird dieses Tutorial etwas bringen.
Dann fangen wir mit der Erklärung an, was ich euch hier beibringen will.
Es geht um die Zahlensysteme: Hexadezimal - Binär - Dezimal
Ich erkläre euch, wie man diese umrechnet, und wie man mit ihnen umgeht und wo sie...
[VB.NET] Zahl > 50 elseif Zahl > 70 then... 02/25/2013 - .NET Languages - 5 Replies Hi,
hab mal ein Problem und weiß nicht wie ich dazu bei google suchen soll.
Und zwar hab ich eine Zahl als STRING -.- und wollte mit dieser nun eine if Abfrage machen.
If Zahl > 50 then
....
Programme Binär darstellen 07/09/2011 - General Coding - 10 Replies So... Aufgrund meiner Fächerübergreifenden Kompetenzprüfung in den Fächern Mathe und Technik (Allgemeine Computertechnik mit Binärcode (Programmierung)) sollte ich für den letzen Punkt, ein Programm als Binärcode darstellen.
Ich hab google schon benutzt und auch WinHex und Hex Editor Neo runtergeladen und probiert, habs aber nicht hingekriegt.
Von welcher Sprache aus das Programm geschrieben werden muss ist mir egal, da es nur was einfaches sein soll (cmd öffnen, shutdown Befehl eintippen),...
Binär Code Entziffern 12/12/2010 - General Coding - 23 Replies Hallo,
Ich bräuchte dringent hilfe beim entschlüsseln dieses binär-codes oder so etwas in der art ich weiß es einfach nicht wie ich ihn entzifffern soll vielleicht kann mir ja einer helfen
Hier diese komische code:
0111
0110
1011
0010
0110
1101
Binär Code Entschlüssler 10/30/2010 - S4 League - 14 Replies Hallo...
ein freund von mir hat mir diese seite gegeben:
Binary to Text (ASCII) Conversion
Was kann Diese seite so?
Text In Binärcodes
Text: