matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Mathe
  Status Schulmathe
    Status Primarstufe
    Status Mathe Klassen 5-7
    Status Mathe Klassen 8-10
    Status Oberstufenmathe
    Status Mathe-Wettbewerbe
    Status Sonstiges
  Status Hochschulmathe
    Status Uni-Analysis
    Status Uni-Lin. Algebra
    Status Algebra+Zahlentheo.
    Status Diskrete Mathematik
    Status Fachdidaktik
    Status Finanz+Versicherung
    Status Logik+Mengenlehre
    Status Numerik
    Status Uni-Stochastik
    Status Topologie+Geometrie
    Status Uni-Sonstiges
  Status Mathe-Vorkurse
    Status Organisatorisches
    Status Schule
    Status Universität
  Status Mathe-Software
    Status Derive
    Status DynaGeo
    Status FunkyPlot
    Status GeoGebra
    Status LaTeX
    Status Maple
    Status MathCad
    Status Mathematica
    Status Matlab
    Status Maxima
    Status MuPad
    Status Taschenrechner

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenAlgorithmen und DatenstrukturenUmstellung auf Binär
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Deutsch • Englisch • Französisch • Latein • Spanisch • Russisch • Griechisch
Forum "Algorithmen und Datenstrukturen" - Umstellung auf Binär
Umstellung auf Binär < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Algorithmen und Datenstrukturen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Umstellung auf Binär: Übungsaufgabe
Status: (Frage) beantwortet Status 
Datum: 15:20 Di 25.04.2006
Autor: Fahnder

Aufgabe
Schreiben Sie ein Java- Programm, welches als Eingabe einen Zahl z in Hexadeximaldarstellung (ohne führende Nullen) erhält und als Ausgabe z in (nicht ZKD-) Binärstellung (ohne führende Nullen) liefert, derart, dass das am wenigsten signifikante Bit rechts steht. Nennen Sie ihre Klasse aufgabe7.  

Hi,
also ich habe einen entwurf, weiss aber nicht, ob der überhaupt funktionieren wird.
es handelt sich um eine Übungsaufgabe, die ich morgen abgeben muss.

Hier mein entwurf:
public class aufgabe7{
// Compute the binary representation of a hexadecimal number
// Print z as a binary number
public static void main (String[] args){
int z = "0123456789ABCDEF"; //z is a hexadecimal number
System.out.println("binär: " + Integer.toBinaryString(z));
}
}

Ich weiss, dass sich bei int z ein fehler versteckt, da fehlt noch was. leider komme ich da nicht weiter.
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

Fahnder

        
Bezug
Umstellung auf Binär: Zeit
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 23:08 Di 25.04.2006
Autor: Fahnder

Die Fälligkeit ist nicht ganz richitg, ich brauche das bis spätestens 14 Uhr morgen, falls es jemand schafft, mir zu antworten. Wäre schön

Bezug
        
Bezug
Umstellung auf Binär: Antwort
Status: (Antwort) fertig Status 
Datum: 00:28 Mi 26.04.2006
Autor: Frank05


> Hi,

Hallo,

>  also ich habe einen entwurf, weiss aber nicht, ob der
> überhaupt funktionieren wird.
>  es handelt sich um eine Übungsaufgabe, die ich morgen
> abgeben muss.
>  
> Hier mein entwurf:
>  public class aufgabe7{
>  // Compute the binary representation of a hexadecimal
> number
>  // Print z as a binary number
>  public static void main (String[] args){
>  int z = "0123456789ABCDEF"; //z is a hexadecimal number
>  System.out.println("binär: " +
> Integer.toBinaryString(z));
>  }
>  }
>  
> Ich weiss, dass sich bei int z ein fehler versteckt, da
> fehlt noch was. leider komme ich da nicht weiter.
>  Ich habe diese Frage in keinem Forum auf anderen
> Internetseiten gestellt.

1. Du kannst nicht einer Variablen vom Typ int einfach so einen String zuweisen. Dafür gibts Integer.parseInt

2. Hexadezimalzahlen werden in Java durch ein vorangestelltes 0x gekennzeichnet,
also z.B. int z = 0xDEADBEEF;

3. Ich kann mir kaum vorstellen, dass die Übungsaufgabe mit Integer.toBinaryString gelöst werden soll.. auf der anderen Seite brauchen sich die Übungsleiter nicht wundern wenn es so gemacht wird, da bekanntlich die meisten Studenten versuchen den Weg des geringsten Widerstandes zu gehen.

PS: Wenn du bei dem Ganzen noch was lernen willst solltest du im eigenen Interesse die toBinaryString Method mal selber schreiben.


Bezug
                
Bezug
Umstellung auf Binär: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 10:15 Mi 26.04.2006
Autor: Fahnder

Hi,
ich habe das jetzt mal ausprobiert, mit deinem Beispiel, es geht, aber sowas ähnliches hatte ich schon, worauf es ankommt, ist, dass ich eine beliebige Zahl in Hexadezimal eingeben kann und deren umwandlung im Binärcoe wird angeben. So wie du das Int beschrieben hast, bekommt man immmer das selbe raus. Bei der Definiton von Int für alles Hexadezimalzahlen, da komme ich nicht weiter.
Fahnder

Bezug
                        
Bezug
Umstellung auf Binär: Antwort
Status: (Antwort) fertig Status 
Datum: 11:10 Mi 26.04.2006
Autor: kretschmer

Hallo,

also konkret möchtest Du doch folgendes: Benutzer gibt in Hexadezimaldarstellung eine Zahl an und dann wird sie umgewandelt in eine Binärdarstellung. Das besteht prinzipiell aus 3 Schritten:

1. Zahl einlesen -> man erhält einen String bestehend aus den Zeichen 0-9 und A-F (oder gar a-f)
2. Zahl in Binärdarstellung umwandeln (da je eine Hexadezimalstelle durch genau 4 Binärstellen abgedeckt werden, ist eine direkte Umwandlung ohne vorherige Konvertierung in einen int oder ähnliches leicht möglich) -> String mit Binärdarstellung
3. Binärdarstellung ausgeben (und führende Nullen entfernen, wie in der Aufgabe verlangt. Dies würde ich persönlich erst hier machen in einer Programmieraufgabe, weil es dann übersichtlicher ist und auch einfacher)


Ich bin jetzt nicht so ganz drinne in Java, bzw. kenne jetzt jede einzelne Klasse/Methode auswendig und kann Dir keinen vernünftigen Anhaltspunkt geben, ausser dass man zum Einlesen vielleicht einfach System.in verwenden sollte, da dort einfachen String lesen dabei sein sollte. Die Konvertierung kannst Du zeichen für Zeichen machen und dann einfach Stringkonkatenation durchführen (Du brauchst ja für jedes Zeichen in Hexadezimaldarstellung genau 4 Binärstellen). Führende Nullen entfernen sollte dadurch realisierbar sein, dass man den String entsprechend verkleinert (oder Zeichen für Zeichen ausgibt und entsprechende Zeichen einfach weglässt am Anfang).

--
Gruß
Matthias

Bezug
                        
Bezug
Umstellung auf Binär: Antwort
Status: (Antwort) fertig Status 
Datum: 09:32 Do 27.04.2006
Autor: Frank05


>  ich habe das jetzt mal ausprobiert, mit deinem Beispiel,
> es geht, aber sowas ähnliches hatte ich schon, worauf es
> ankommt, ist, dass ich eine beliebige Zahl in Hexadezimal
> eingeben kann und deren umwandlung im Binärcoe wird
> angeben. So wie du das Int beschrieben hast, bekommt man
> immmer das selbe raus. Bei der Definiton von Int für alles
> Hexadezimalzahlen, da komme ich nicht weiter.

Du kannst es entweder so probieren wie es Matthias vorgeschlagen hat, oder falls es dir lieber ist wenn du die eingegeben Zahl als int zur Verfügung hast kannst du mit Integer.parseInt(String, int) arbeiten. Dabei ist das zweite Argument ein Radix, den du für das Umwandeln von Hexadezimalzahlen mit 16 belegst. Damit reduziert sich das ganze Programm auf:
Integer.toBinaryString(Integer.parseInt(eingabe, 16));
Aber das nur der Vollständigkeit halber.. der eigentliche Übungseffekt geht natürlich bei Verwendung dieser Methoden verloren.

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Algorithmen und Datenstrukturen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.matheraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]