Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hye All!

Mein Junior beginnt in der Schule gerade mit Java und hat unten stehenden Code von der Tafel abgeschrieben.

Wir haben nun das JDK herunter geladen und ein kleines Programm erfolgreich getestet, etc. aber bei diesem Programm "Kreis" funktioniert der Befehl

radius = console.read double ("Radius: ");

nicht!

==>> Bitte um Info: Wie schreibt man den Befehl korrekt?

Habe schon Vieles ausprobiert und gegoogelt ... aber ohne Erfolg. Bin selbst kein Programmierer (habe vor 20 Jahren mal kurz Pascal gelernt aber das war's auch schon) sondern mitlernender Daddy ...

D A N K E !

--------------------------------------------------------------

public class Kreis

{

public static void main (String[] args)

{

double radius;

double flaeche;

radius = console.read double ("Radius: ");

flaeche = radius*radius*Math.PI;

System.out.println (" Gewaehlter Radius [m]: " +radius);

System.out.println (" Kreis-Flaeche [m2]: " +flaeche);

}

}

-----------------------------------------------------------

Geschrieben

Da wird Dein Junior wahrscheinlich nicht alles mitgeschrieben haben. :)

Es sind auch gleich mehrere Fehler im Quellcode. Die Methode wird nicht "read double" heißen, sondern wahrscheinlich "readDouble". Im JDK gibt es keine Klasse "console", deshalb schätze ich, in der Schule verwenden sie eine Hilfsklasse namens "console" mit der statischen Methode readDouble(String) (-> höchst unschön, weil der Klassenname gegen Java Konventionen verstößt), oder es gibt in der Schule in der Klasse mit der main-Methode eine Instanzvariable (oder Klassenvariable) namens "console" mit der genannten Methode (nicht statisch, die bessere Variante).

Peter

Geschrieben

Also zum einen dürfte es nicht funktionieren, weil in einem Funktionsnamen keine Leerzeichen enthalten sein dürfen. Das heißt, der Funktionsname müsste eher "readdouble()" oder "read_double()" heißen.

Zum anderen gibt es in der Standardbibliothek von Java die Bezeichnung "console" nicht. Ich denke mal, da das Einlesen von Werten aus der Kommandozeile für Anfänger nicht gerade trivial ist, dass dies eine Klasse sein wird, die in der Schule deines Sohnes zur Verfügung gestellt wird. Das wiederrum bedeutet, solange ihr die Klassen dafür nicht mit nach Hause bekommen habt, wird der Quelltext bei euch zu Hause auch so nicht funktionieren.

Geschrieben

Herzlichen Dank, kingofbrain und Dragon8 !

Die Erklärungen sind (sogar für mich ;-) verständlich.

Ich habe es mit radius = 10 probiert und das funktioniert dann (für Euch sicher logisch "no na ned", für mich ein schöner Erfolg).

Habe dann auch zwischenzeitlich von einem im Netz gefundenen "Hilfsprogramm" abgeschrieben - natürlich ohne es genau zu verstehen - aber die Eingabe funktioniert nun (wie unten angeführt).

Aber dieser "Scanner" funktioniert nur mit der Eingabe von ganzen Zahlen.

Gibt es eine Funktion, die auch die Eingabe von Zahlen mit Kommastelle erlaubt??

Wie müsste man das schreiben???

DANKE nochmals!

Das funktioniert für die Eingabe von GANZEN Zahlen:

------------------------------------------------------------

import java.util.Scanner;

import java.io.IOException;

public class Kreisiges_3

{

public static void main (String[] args)

throws IOException

{

double radius;

double flaeche;

Scanner scanner = new Scanner(System.in);

System.out.println ("Bitte Radius [m] eingeben (nur ganze Zahlen erlaubt): ");

radius = scanner.nextInt();

flaeche = radius*radius*Math.PI;

System.out.println (" Gewaehlter Radius [m]: " +radius);

System.out.println (" Kreis-Flaeche [m2]: " +flaeche);

}

}

------------------------------------------------------------

Geschrieben

Servus nochmal,

hier mal Deine Lieblingsseite der nächsten Zeit, sofern Du mit Java weitermachen willst: Java Platform SE 6

Dort findest Du die Dokumentation zu den Klassen im JDK 6 (wenn Du ein anderes verwendest, einfach nach der passenden Doku suchen). Enthalten ist natürlich auch die Dokumentation der Klasse Scanner (damit Du Dein abgetipptes Beispiel verstehst) und deren Methoden (z.B. nextDouble()), damit Du auch Fließkommazahlen berechnen kannst.

Viel Spaß (einmal programmieren, immer programmieren, oder? ;) )!

[EDIT]

Ach ja, für die nächsten Posts kannst Du die schönen CODE-Tags verwenden, damit Dein Quellcode auch gut lesbar ist.

[/EDIT]

Peter

Geschrieben

Servus Peter,

werde mir das mal anschauen - und Du hast richtig erkannt, das Programmieren reizt mich jetzt wirklich ein wenig ... werde beim Thema also sicher mit dabei bleiben! ... :-))

Ich werde den Benutzer "Java-Neuling" auch an meinen Junior weiter geben, da kann er sich zukünftig bei Fragen dann im Forum auch selbst direkt einwählen.

Schönen Tag noch!

Tom

Geschrieben

Vielen Dank für den Tipp, flashpixx!

Habe das Werk bereits down geloaded und es ist wirklich super zu verstehen! Auch die darin enthaltenen Beispiele sind sehr wertvoll.

Das "Kreis-Programm" ist inzwischen toll gewachsen (mit mathemat. Runden der ausgegebenen Werte, Fehlerausgabe wenn eine negative Zahle eingegeben wird, etc.) ... macht Spaß, sich im Urlaub damit zu befassen! (Wenn der Nachwuchs heute von der Schule nach Hause kommt wird er Augen machen :-)))

LG

tom

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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...