1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Array auffüllen

  • Reute
  • 29. November 2007 um 13:12
  • Unerledigt
  • Reute
    2
    Reute
    Mitglied
    Punkte
    25
    Beiträge
    4
    • 29. November 2007 um 13:12
    • #1

    :wave: hallo erst mal an alle,
    habe von einem Freund den Tip erhalten, dass wen man fragen hat, sie hier stellen kann und auch hier kompetente ratschläge bekommt

    Zitat


    public class Test{


    public static void toSingle(double n){

    int i;
    int[] Ergebnis=new int[32];

    for (i = 1; i < 31; i++){ //Feld mit Nullen fuellen
    Ergebnis[i] = 0;}

    if (n < 0)
    Ergebnis[0]=1;
    else
    Ergebnis[0]=0;


    System.out.println(Ergebnis);
    }
    }

    Alles anzeigen

    ich habe ein kleines Porblem bei meiner Aufgabe und zwar möchte ich mein array welches länge 32 hat mit lauter nullen auffüllen und dieses ausgeben, jedoch soll meine nullte position wenn eingebae Zahl n<0 = 1 sein wenn n>0 =0, danach soll dieses array ausggeben werden...
    jedoch gibt er mit ganz komische buchstaben und zahlen aus
    am besten uppe ich mal meinen code und vielleicht findet ihr ja meinen fehler (s.o.)

  • AntiBit
    13
    AntiBit
    Mitglied
    Reaktionen
    2
    Punkte
    1.712
    Beiträge
    297
    • 29. November 2007 um 13:32
    • #2

    Den Array-Inhalt musst du in ner Schleife ausgeben:

    Code
    for(int i=0;i<ergebnis.length;i++)
            System.out.println("Element "+i+" hat den Wert: "+ergebnis[i]);

    Sonst passt dein Code.

    Hätten uns Spiele wie Pac-Man in unserer Jugend beeinflusst, würden wir heute durch dunkle Räume irren, elektronische Musik hören und Pillen fressen.

  • Reute
    2
    Reute
    Mitglied
    Punkte
    25
    Beiträge
    4
    • 29. November 2007 um 13:42
    • #3

    hmm danke für deine antwort,
    aber er gibt mir nichts das aus was ich da haben will...
    also ich möchte nachher einfach sowas da stehen haben

    [1,0,0,0,0,0,0,0,0,....,0] und das mit der länge 32,
    aber so gibt er mir nur die einzelnen werte aus für jede position des arrays

  • Paulchen
    1
    Paulchen
    Gast
    • 29. November 2007 um 13:50
    • #4
    • Gib als erstes die öffnende Klammer aus:

      Code
      System.out.print("[");
    • Dann musst du über alle Elemente im Array iterieren, wie von AntiBit bereits angesprochen:

      Code
      for(int i=0;i<ergebnis.length;i++)
    • In der Schleife gibst du dann jeweils den Wert des i-ten Elements aus:

      Code
      System.out.print(ergebnis[i]);
    • Wenn wir nicht beim letzten Element sind, geben wir danach ein Komma aus (noch in der Schleife):

      Code
      if(i<ergebnis.length()-1) {
          System.out.print(",");
      }
    • Und nach der Schleife müssen wir dann noch die schließende Klammer ausgeben.

    Um ein Array mit lauter gleichen Werten zu befüllen, kann man übrigens Arrays.fill verwenden (siehe Java API).

  • Reute
    2
    Reute
    Mitglied
    Punkte
    25
    Beiträge
    4
    • 29. November 2007 um 13:56
    • #5

    hmm danke für deine antwort,
    aber er gibt mir nichts das aus was ich da haben will...
    also ich möchte nachher einfach sowas da stehen haben

    [1,0,0,0,0,0,0,0,0,....,0] und das mit der länge 32,
    aber so gibt er mir nur die einzelnen werte aus für jede position des arrays
    habe das nun mal so gemacht

    Zitat


    public class Test{

    public static void toSingle(double n){

    int j;
    int[] Ergebnis=new int[32];
    int[] result=new int[31];

    for (j = 1; j < 31; j++){ //Feld mit Nullen fuellen
    Ergebnis[j] = 0;
    }

    if (n < 0)
    Ergebnis[0]=1;
    else
    Ergebnis[0]=0;


    while(n > 0 && j < 32){
    result[31-j]=n%2;
    n=floor(n/2);
    j++;}

    System.out.print("[");
    for(int i=0;i<Ergebnis.length;i++)
    System.out.print(Ergebnis[i]+",");
    System.out.print("]");
    }
    }

    Alles anzeigen


    was ich im endeeffekt will, ist das er mit die Zahl ins binärsystem umwandelt und die einzelnen Ziffern in ein array speichert welches halt bis zur länge 32
    warum gerade 32 weiß ich nicht, vielleicht kommt da mal noch was,
    ich hoffe dass auch mein lösungansatz richtig ist??
    jedoch habe ich da sicher ein kleines Problem und zwar was mache ich wenn ich z.b. 0,2 ins binärstystem umwandle, dann muss er ja mir irgendwo ein komma ausgeben, aber wie soll ich das in das araay dann einbinden??

  • Reute
    2
    Reute
    Mitglied
    Punkte
    25
    Beiträge
    4
    • 29. November 2007 um 16:06
    • #6

    Kann mir vielleicht jemadn sagen warum diese Methode nicht meine double zahl in eine binärzahl umwandelt??

    Kommt immer ein fehler und zwar dass die Präzision verloren ginge

  • java-girl
    14
    java-girl
    Mitglied
    Reaktionen
    7
    Punkte
    2.037
    Beiträge
    357
    • 29. November 2007 um 19:21
    • #7
    Zitat von Reute

    Kann mir vielleicht jemadn sagen warum diese Methode nicht meine double zahl in eine binärzahl umwandelt??

    Welche Methode?


    Zitat von Reute


    Kommt immer ein fehler und zwar dass die Präzision verloren ginge

    Also das wundert mich nicht...

    There's no better place than 127.0.0.1!

  • a9bejo
    21
    a9bejo
    Mitglied
    Reaktionen
    42
    Punkte
    4.697
    Beiträge
    913
    • 2. Dezember 2007 um 11:04
    • #8

    Ein Array mit primitiven Werten befuellen:
    ,%20int)"]java.util.Arrays#fill()

    Eine Instanz von Integer in einen Binary String umwandeln:
    java.lang.Integer#toBinaryString()


    Einen String in ein Array aus chars umwandeln:
    java.lang.String#toCharArray()

    Einen String zusammenbauen:
    java.lang.StringBuilder


    => Zusammensetzen.

    lg, Benjamin Ferrari, bookworm.at

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung