ich habe erstmal versucht die sache 1 zu 1 nachzubauen und festegestellt das es nicht klappt. Am ende kam ich durch umwege zu folgenden Code.
Java:
package testprojekt;importjava.util.ArrayList;publicclassTest{publicstaticvoidmain(String[] args){int dezimalzahl =34;int basis =2;ArrayList<Integer> ergebnisListe =newArrayList<>();while(dezimalzahl >0){int rechnung = dezimalzahl % basis;
ergebnisListe.add(rechnung);
dezimalzahl /= basis;}// Um die Liste umzudrehen und auszugebenfor(int i = ergebnisListe.size()-1; i >=0; i--){System.out.print(ergebnisListe.get(i));}}}
Leider funktioniert der code nicht. kann mir jemand sagen was ich falsch mache? und ob ich mein Funktion auch grundsätzlich ohne Biblotheken schreiben kann?
Was funktioniert denn nicht?
34 modulo 2 = 0 -> zur Liste hinzufügen
34 / 2 = 17 -> weiter
17 modulo 2 = 1 -> zur Liste hinzufügen
17 / 2 = 8 -> weiter
8 modulo 2 = 0 -> zur Liste hinzufügen
8 / 2 = 4 -> weiter
usw.
Es funktioniert wie programmiert! Die Ausgabe ist auch richtig, Gegenprobe:
Ich habe auf dem PC mit dem ich Programmiere leider kein Internet. aber ich habe mal den code nochmal ausgefürt. das wird mir angezeigt wenn ich den Code ausführen möchte
Es steht doch alles da. Dem Screenshot zu folge, du verwendest du ein älteres Eclipse. Die Einstellungen für den Compiler sind falsch. Korrigiere die Einstellungen unter
Menü - Window - Preferernces - im Baum - Java - Compiler - Compiler compilance level - ...
oder falls du Einstellungen im Projekt gemacht hast:
Kontextmenü vom Projekt - Java Compiler - Compiler compilance level - ...
Schau dir in der Hilfe das "Project configuration tutorial" an - eine IDE ist kein Texteditor, den man einfach so bedienen kann.
Danke das hilft mir tatsächlich weiter. Mein problem ist das wir auf arbeit 2 PC haben einen zum coden und einen mit dem wir ins Internet können. Wie gesagt war der erste Tag mit Java.
ich bin in der lernphase. ich mache gerade ein Berufliches Training in einer reha Massnahme von der Rentenversicherung. Ich lerne das Programmieren erst noch. aktuell versuche mit Java zurecht zu bekommen deswegen habe ich mich auch im forum angemeldet damit ich auch mal mitlesen kann und mal den ein oder anderen Codeschnipsel testen kann wenn ich was intressantes finde.
Denn in meiner Umschulung die auf den Fachinformatiker für Anwendungsentwicklung hinaus läuft. Werde ich dann 90% Java lernen.
Erst einmal ist mir wichtig zu sagen: Du bist hier herzlich willkommen und wir unterstützen Dich sehr gerne. Unsere Hinweise gehen auch nie gegen Dich als Person aber wir nehmen hier in der Regel kein Blatt vor den Mund.
Bei der Software Entwicklung ist es relativ wichtig, dass man auch Zugriff auf das Internet hat. Die Aussage, dass man bei einer Trennung nicht ernsthaft Software entwickeln kann, teile ich nicht. Solche Szenarien kenne ich und das habe ich teilweise auch. Aber das erschwert Dinge stark und es erschwert die Software Entwicklung enorm. Daher ist dies zum lernen extrem schlecht geeignet. Es gibt genug Dinge, die man anpassen muss oder ähnliches.
Daher wäre mein Ratschlag, das Lernen auf Systemen mit Zugriff auf das Internet zu machen. Dazu braucht es auch keine Admin Rechte oder so. Du kannst Entwicklungsumgebungen, Java und was Du sonst so brauchst ganz ohne Admin Rechte "installieren" und nutzen (Teilweise reicht dazu einfaches entpacken in ein beliebiges Verzeichnis!)
Zusatz: Java ist streng typisiert und verlangt den Einsatz wenigstens einer Klasse (im Gespräch zu Python). Und langfristig sollte man die main-Methode nur zum Starten des Programms verwenden.
Erst einmal ist mir wichtig zu sagen: Du bist hier herzlich willkommen und wir unterstützen Dich sehr gerne. Unsere Hinweise gehen auch nie gegen Dich als Person aber wir nehmen hier in der Regel kein Blatt vor den Mund.
Bei der Software Entwicklung ist es relativ wichtig, dass man auch Zugriff auf das Internet hat. Die Aussage, dass man bei einer Trennung nicht ernsthaft Software entwickeln kann, teile ich nicht. Solche Szenarien kenne ich und das habe ich teilweise auch. Aber das erschwert Dinge stark und es erschwert die Software Entwicklung enorm. Daher ist dies zum lernen extrem schlecht geeignet. Es gibt genug Dinge, die man anpassen muss oder ähnliches.
Daher wäre mein Ratschlag, das Lernen auf Systemen mit Zugriff auf das Internet zu machen. Dazu braucht es auch keine Admin Rechte oder so. Du kannst Entwicklungsumgebungen, Java und was Du sonst so brauchst ganz ohne Admin Rechte "installieren" und nutzen (Teilweise reicht dazu einfaches entpacken in ein beliebiges Verzeichnis!)
Danke. mir war es nur nicht bewusst das die IDE die ich nutze keine aktuelle ist. deswegen stand ich bei dem Fehler auch total auf dem schlau. Java auf dem PC mit Internet zu nutzen ist leider nicht möglich, ich habe es bereits versucht. Eine Alternative wäre einen eigenen Laptop mit eigenen Internet anschluss aber das Funktioniert leider auch nicht weil mir die Mittel fehlen. Daher mache ich das beste aus meiner Situation.
Grundsätzlich habe ich kein Problem mit der Wortwahl, meine ist ähnlich. Dennoch (es betrifft euch bisher nicht, war bei Python der fall) ist es immer wieder witzig wenn man einen Code postet und einen Komplett anderen zurück bekommt nur weil man Regeln (Programmierquitte) die man nicht kennt, nicht eingehalten hat. Das Problem bei solchen sachen ist für mich, wenn ich einen Fremden Code nicht verstehe, kann ich ihn aktuell nicht verwenden.
Ich habe ein Video gefunden das mein Ziel fast 1 zu 1 aufbaut, aber beim Abtippen werde ich es nicht lernen und viel wichtiger verstehen.
Strenggenommen betrifft das nur das eingestellte JDK (1.8 ist veraltet, das aktuellste wäre 21). Eine (vernünftige) Internetverbindung beschleunigt z.B. das Herunterladen eventuell fehlender Bibliotheken (pip, Maven,...) oder das Weiterreichen von Programmen. Die 'Regeln' sind nur Empfehlungen um das Lesen, Verstehen, Verändern (an zentraler Stelle),... von Quellcode zu erleichtern.
Generell geht es in der Programmierung darum wie der Interpreter (Python,..), Compiler (Java,...), ... reagiert, wenn er auf ein bestimmtes Schlüsselwort trifft (oder in Verbindung mit anderen Schlüsselwörtern (nicht) trifft)
Danke an dieser Stelle. Ich habe meine Programme aktuellisiert jetzt funktioniert alles.
Meine Grundfunktion steht jetzt kommen die nächsten Schritte. Aber ich denke das hier kann geschlossen werden damit leute durchsehen was die eigentliche Frage war.