Zum Inhalt springen

antenne

Mitglieder
  • Gesamte Inhalte

    34
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von antenne

  1. antenne

    java bubblesort

    public class BubbleSort { public static void sortiere(int[] x) { boolean unsortiert=true; int temp; while (unsortiert){ unsortiert = false; for (int i=0; i < x.length-1; i++) if (x > x[i+1]) { temp = x; x = x[i+1]; x[i+1] = temp; unsortiert = true; } } } public static void main(String[] args) { int[] liste = {0,9,4,6,2,8,5,1,7,3}; sortiere(liste); for (int i=0; i<liste.length; i++) System.out.print(liste+" "); } }Der Originalquellcode. Habe nur rote X'e geändert, je nachdem was Eclipse vorgeschlagen hat. War aber bestimmt totaler murks. Mich wundert ja , dass keine Fehler angezeigt werden aber beim Ausführen dann dieser Fehler kommt: Exception in thread "main" java.lang.NullPointerException at BubbleSort.main(BubbleSort.java:23) (nicht beim orignialen Code sondern bei meinem Abgeänderten)
  2. antenne

    java bubblesort

    Hallo an alle. Kurz zu mir. Ich bin 27 Jahre alt und musste nach einer Berufskrankheit den Job wechseln. Deshalb mache ich jetzt eine Umschulung zum FISI. Dadurch das es eine Umschulung ist, steige ich ins 2. Lehrjahr ein. Und habe ziemliche Probleme beim Java Unterricht. Das liegt nicht unbedingt daran, dass ich es nicht verstehe, sondern eher das der Lehrer wohl selbst nicht viel Ahnung von Java hat und daher jedes mal nur Übungen am Beamer zeigt und die Schüler es lösen sollen. Jegliche Fragen werden mit einem "hmmmm" und anschließendem langsamen entfernen von meinem Platz beantwortet... Daher versuche ich in Eigenregie Java zu lernen. Eine Gute Übung erschien mir Zahlen zu sortieren. Bei 3 Zahlen hat es mich schon gut eine Stunde gekostet und nur mit viel Hilfe durch Google hat es geklappt. Bei 4 Zahlen geht allerdings gar nichts mehr. Ich habe dann etwas geschaut und bin immer wieder auf den Algorithmus "Bubblesort" gestoßen. Ich werde allerdings überhaupt nicht schlau daraus....leider. Mit vorgegebenen Zahlen macht er dank copy und paste was er soll. Wie krieg ich es aber hin, dass er von Hand eingegebene Zahlen sortiert? Hier erstmal mein erster kläglicher entwurf ( Habe nur etwas abgeändert,der Rest ist kopiert) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class BubbleSort { private static int[] xs; public static void main(String[] args) throws IOException { InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); System.out.print("Erste Zahl: "); String eingabe1 = br.readLine(); System.out.print("Zweite Zahl: "); String eingabe2 = br.readLine(); System.out.print("Dritte Zahl: "); String eingabe3 = br.readLine(); { boolean unsortiert=true; int temp; while (unsortiert){ unsortiert = false; xs = null; for (int i=0; i < xs.length-1; i++) if (xs > xs[i+1]) { temp = xs; xs = xs[i+1]; xs[i+1] = temp; unsortiert = true; } } } { int zahl1 = Integer.parseInt(eingabe1); int zahl2 = Integer.parseInt(eingabe2); int zahl3 = Integer.parseInt(eingabe3); sortiere(zahl1,zahl2,zahl3); } } private static void sortiere(int zahl1, int zahl2, int zahl3) { // TODO Auto-generated method stub } } Die Javabegapten unter euch werden sich jetzt wahrscheinlich fragen wie man nur so ein Käse schreiben kann, ich bitte daher um etwas Verständnis Achja ich schreibe das ganze Java Zeug mit Eclipse weil wir das auch in der Schule haben. Und Eclipse gibt keine Fehler aus.
  3. antenne

    punkte berechnung

    achso. offen bleibt es wenn ich es mit cmd ausführe sowieso. nur wenn ich normal im windows die exe starte fragt es nach der punktzahl und wenn ich als beispeil 93 eingebe und enter drücke, schließt sich das prog ohne jegliche ausgabe. auch jetzt mit deinen 2 befehlen.
  4. antenne

    punkte berechnung

    habe ich gemacht. was bewirkt es? sehe keinen unterschied.
  5. antenne

    punkte berechnung

    erstmal vielen dank für die hilfe ! klappt einwandfrei. eine kleine frage noch. wenn ich die exe normal im windows starte und es mich nach der punktzahl fragt, gebe ich dann eine zahl ein drücke enter und das programm schließt sich gleich wieder. wenn ich die exe per cmd öffne funktioniert es ohne probleme. muss ich da noch irgendwas umschreiben oder ist das normal? und @ 127.0.0.1 - natürlich wurde die main funktion beschrieben und wie sie funktioniert. aber jemanden der noch nie auch nur ein wort programmiersprache beherrscht, schreibt es eben so ab wie es im buch steht. ich habe mir alles vor dem beispiel durchgelesen. und nur, dass return 0 verursacht, dass alles was danach kommt ignoriert wird hab ich so richtig verstanden. ich hatte es hier allerdings so gepostet wie es im buch steht. also mit return 0 vor diesem switch befehl. jetzt geht es und ich kann erstmal weiter lernen. Danke nochmal ! edit: hab jetzt nochmal nachgeschaut zwecks main. Es steht im groben da, dass main die funktion des hauptprogramms übernimmt. als absoluter neuling verstehe ich darunter aber nicht, dass alles was ich schreiben möchte innerhalb von main stehen muss.
  6. antenne

    punkte berechnung

    Also hat er es im Buch ungeschickt beschrieben? Weil im Buch steht switch und danach diese { Klammer. Ich probiere es morgen auf Arbeit mal aus und melde mich dann ob es geklappt hat. Vielen dank schon mal
  7. antenne

    punkte berechnung

    kann ich dir nicht sagen. so ist es im buch abgebildet. bzw. der erste teil steht im buch und der zweite teil für sich auch im buch. und man soll wohl den zweiten teil mit dem ersten verbinden.
  8. hallo leute. ich hab ein problem. ich lerne gerade von grund auf programmieren und habe mir dazu ein buch gekauft. in diesem buch stand folgendes Beispiel #include <stdio.h> int main () { int punkte; int note; printf ("Ihre Punktzahl, bitte: "); scanf ("%d", &punkte); if (punkte < 30) note = 6; else if (punkte < 50) note = 5; else if (punkte < 67) note = 4; else if (punkte < 81) note = 3; else if (punkte < 92) note = 2; else note = 1; printf ("Sie haben die Note %d erreicht.\n", note); return 0; } switch (note) { case 6: printf ("ungenügend\n"); break; case 5: printf ("mangelhaft\n"); break; case 4: printf ("ausreichend\n"); break; case 3: printf ("befriedigen\n"); break; case 2: printf ("gut\n"); break; case 1: printf ("sehr gut\n"); break; default: printf ("unzulässige Eingabe\n"); } wenn ich mit der cmd.exe gcc noten.c eingebe kommt folgende Fehlermeldung: error: expected identifier or '(' before 'switch' switch (note) { kann mir jemand sagen was genau falsch ist? vielen dank

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...