# Zahl von Konsole einlesen



## Anfänger22 (10. Nov 2010)

hallo erst mal...komm jetzt nicht weiter...wollte es so haben, dass  der Radius von Tastatur eingegeben wird. was ist mein fehler?


```
import java.util.* ;
public class Joe4
{
	public static void main (String args[])
	{
		final double Z = 3.14;
		int r = Eingabe.r;
		double Fläche_Kreis = (r*r*Z);
		 System.out.printf( "Die Fläche beträgt = %.3f", Fläche_Kreis);
	}
	
}
```


----------



## XHelp (10. Nov 2010)

Was soll denn deiner Meinung nach "Eingabe.r" sein? oO
P.S. Variablen in camelCase schreiben, "flaecheKreis" z.B.


----------



## Foermchen82 (10. Nov 2010)

Ich geh mal davon aus, dass es ein KonsolenProgramm sein soll

Probier mal 
	
	
	
	





```
System.console().readLine();
```


----------



## Anfänger22 (10. Nov 2010)

XHelp hat gesagt.:


> Was soll denn deiner Meinung nach "Eingabe.r" sein? oO
> P.S. Variablen in camelCase schreiben, "flaecheKreis" z.B.



kannsch mir das mal verbessert aufschreiben...ja flaecheKreis ist besser...ist mir auch grad aufgefallen. sofort verbessert...


----------



## Anfänger22 (10. Nov 2010)

Foermchen82 hat gesagt.:


> Ich geh mal davon aus, dass es ein KonsolenProgramm sein soll
> 
> Probier mal
> 
> ...



laut JOE ist das wohl ein fehler.... .readLine(); 
da sei irgendetwas falsch... vllt read.Integer?


----------



## ARadauer (10. Nov 2010)

Was war das nochmal mit der Console... ich weiß nicht mehr wofür die genau war, nur klappt das nicht...


Also jetzt mal richtig, es gibt mal zwei gebräuchliche arten etwas von der Konsole einzulesen


```
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;

public class Test {

   public static void main(String[] args) throws IOException {

      //1. Möglichkeit mit BufferedReader
      BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
      String eingabe = reader.readLine();
      System.out.println(eingabe);
      
      //2. Möglichkeit mit Scanner, Vorteil gibt Methoden für die einzelnen Datentypen nextFloat usw..
      Scanner scanner = new Scanner(System.in);
      String wert = scanner.nextLine();
      System.out.println(wert);
      float f = scanner.nextFloat();
      System.out.println(f);      
   }
}
```


----------



## ARadauer (10. Nov 2010)

Anfänger22 hat gesagt.:


> kannsch mir das mal verbessert aufschreiben...ja flaecheKreis ist besser...ist mir auch grad aufgefallen. sofort verbessert...



nö er hat gemeint, dass es keine Eingabe Klasse gibt. Falls du doch sowas hat, ist das natürlich nix offizielles.. sonst würds ja Input heißen :lol:

Falls du die Eingabe wirklich verwenden muss, musst du deinen Lehrer fragen oder hier die Klasse posten....


----------



## Anfänger22 (10. Nov 2010)

ARadauer hat gesagt.:


> Was war das nochmal mit der Console... ich weiß nicht mehr wofür die genau war, nur klappt das nicht...
> 
> 
> Also jetzt mal richtig, es gibt mal zwei gebräuchliche arten etwas von der Konsole einzulesen
> ...




die aufgabe lautet 


Schreiben Sie ein Programm „Flaeche“, das die Fläche eines Kreises aus dem Radius r berechnet (r² * pi). Die Zahl pi soll als Konstante definiert werden. Verwenden Sie zunächst unterschiedliche Werte für r und geben Sie den berechneten Wert aus. Die Variable r soll hierbei als int definiert werden. 

jetzt wollte ich aber es so machen, dass der radius per tastatur eingegeben werden soll...die quellcode so leicht wie möglich sein...deswegen habe ich es so gelassen wie oben geschrieben und versucht den Radius per tastatur einlesen zu lassen


----------



## Anfänger22 (10. Nov 2010)

ARadauer hat gesagt.:


> nö er hat gemeint, dass es keine Eingabe Klasse gibt. Falls du doch sowas hat, ist das natürlich nix offizielles.. sonst würds ja Input heißen :lol:
> 
> Falls du die Eingabe wirklich verwenden muss, musst du deinen Lehrer fragen oder hier die Klasse posten....



public class Flaeche
{
  public static void main ( String[] args )
  {
      final double pi    = 3.14;
      int 		   r     = 2;
      double flaeche     = 0;
      flaeche = r * r * pi; 
      System.out.printf("\nFlaeche = %.3f",flaeche);
  }
}

die frage ist, wie ich das hinkriege, dass der radius per tastatur eingelesen werden kann


----------



## XHelp (10. Nov 2010)

Anfänger22 hat gesagt.:


> jetzt wollte ich aber es so machen, dass der radius per tastatur eingegeben werden soll...die quellcode so leicht wie möglich sein...deswegen habe ich es so gelassen wie oben geschrieben und versucht den Radius per tastatur einlesen zu lassen



Ja, aber du kannst nicht einfach irgendwas in den Code schreiben, in der Hoffnung, dass es hinhauen wird.
2. Option wäre noch r über die Parameter zu übergeben. Dazu findest du aber in jedem Anfänger-Buch genügend Informationen


----------



## ARadauer (10. Nov 2010)

> die frage ist, wie ich das hinkriege, dass der radius per tastatur eingelesen werden kann


statt int r=2;

schreibst


```
System.out.println("Radius eingeben:");
      Scanner scanner = new Scanner(System.in);
      int r = scanner.nextInt();
```


----------



## Anfänger22 (10. Nov 2010)

ARadauer hat gesagt.:


> statt int r=2;
> 
> schreibst
> 
> ...



danke erst mal...aber ich kann keine Zahl eingeben und in der Eingabekonsole erscheint auch kein Radius Eingeben:


----------



## XHelp (10. Nov 2010)

Anfänger22 hat gesagt.:


> danke erst mal...aber ich kann keine Zahl eingeben und in der Eingabekonsole erscheint auch kein Radius Eingeben:



Zeig mal was genau du jetzt stehen hast (den Code).


----------



## Anfänger22 (10. Nov 2010)

XHelp hat gesagt.:


> Zeig mal was genau du jetzt stehen hast (den Code).





```
import java.util.* ;
public class Joe4
{
	public static void main (String args[])
	{
		final double z;
		int a;
		z = 3.14;
		System.out.println( "Bitte Zahl eingeben ");
		
		a = Eingabe.intZahl();
		Ergebnis = (a*a*z);
		System.out. Printf("Die Fläche beträgt" , Ergebnis );
		 
	 
      
  }
}
[code=Java]
```


----------



## Anfänger22 (10. Nov 2010)

wie oben


----------



## ARadauer (10. Nov 2010)

was ist jetzt die Frage?

Du sagst Eingabe! ich sag Scanner! Du sagst Eingabe! ich sag Scannner!


```
import java.util.Scanner;
public class Test {
   public static void main(String[] args)  {
      System.out.println("Radius eingeben:");
      Scanner scanner = new Scanner(System.in);
      int r = scanner.nextInt();
      System.out.println("Du hast "+r+" eingegeben.");
   }
}
```


----------



## Anfänger22 (10. Nov 2010)

ARadauer hat gesagt.:


> ich helfe gerne, aber falls du das jetzt einfach so ohne Klassendefinition und main Methode probiert hast kommst du gleich auf meine spam liste
> 
> 
> ```
> ...



tut mir leid^^
kan man hier nicht die java.io.* verwenden???ß


----------



## Anfänger22 (10. Nov 2010)

ARadauer hat gesagt.:


> hier stand blödsinn...




```
import java.util.* ;
public class Joe4
{
	public static void main (String args[])
	{
		final double z;
		int a;
		z = 3.14;
		System.out.println( "Bitte Zahl eingeben ");
		
		a = Eingabe.intZahl();
		Ergebnis = (a*a*z);
		System.out. Printf("Die Fläche beträgt" , Ergebnis );
		 
	 
      
  }
}
```


----------



## ARadauer (10. Nov 2010)

sorry ... ich soll weniger editieren ;-)

ok... Eingabe kennen wir nicht!

vielleicht hilt ein int vor ergebniss..

int Ergebnis = (a*a*z);


----------



## bone2 (10. Nov 2010)

was ist "Eingabe" für ein klasse. wo hast du das her


----------



## Anfänger22 (10. Nov 2010)

bone2 hat gesagt.:


> was ist "Eingabe" für ein klasse. wo hast du das her



die Aufgabe steht oben...
dann schreibs mir bitte mal so verständlich wie möglich...

Integer Zahlen eingeben...das meine ich damit


----------



## XHelp (10. Nov 2010)

Anfänger22 hat gesagt.:


> Integer Zahlen eingeben...das meine ich damit



Ziemlich gutes Stichwort... hiermit schon versucht: Let me google that for you ?


----------



## bone2 (10. Nov 2010)

wie man scanner benutzt und importiert steht doch oben schon 5mal... vielleicht zeigst du uns auch mal die compiler fehlermeldungen.


----------



## ARadauer (10. Nov 2010)

ARadauer hat gesagt.:


> statt int r=2;
> 
> schreibst
> 
> ...



einfacher gehts nicht.. Wenn du das nicht versehts musst dus lassen.

wenn ich sage du sollst die drei Zeilen schreiben und du schreibst das das mit Eingabe und das das nicht geht.... kann ich dir auch nicht helfen... 

nochmal Eingabe gibts nicht!


----------



## Anfänger22 (10. Nov 2010)

ARadauer hat gesagt.:


> einfacher gehts nicht.. Wenn du das nicht versehts musst dus lassen.
> 
> wenn ich sage du sollst die drei Zeilen schreiben und du schreibst das das mit Eingabe und das das nicht geht.... kann ich dir auch nicht helfen...
> 
> nochmal Eingabe gibts nicht!





```
import java.util.Scanner;

public class Joe4
{
	public static void main (String args[])
	{
		final double z;
		z = 3.14;
		 System.out.println("Radius eingeben:");
      Scanner scanner = new Scanner(System.in);
      int r = scanner.nextInt();
      
}
}
```

so...dann erscheint ne konsole aber ohne nix...ich kann dann keine zahl eingeben...da sollte normalerweise "Radius eingeben" kommen aber da kommt einfach nix


----------



## XHelp (10. Nov 2010)

Wie und was und wo genau startest du denn?


----------



## Anfänger22 (10. Nov 2010)

XHelp hat gesagt.:


> Wie und was und wo genau startest du denn?



alles von anfang an...das ganze programm natürlich...ich will den radius eingeben können. aber leider bekomme ich das nicht hin...


----------



## bone2 (10. Nov 2010)

ich glaube er meint: was gibts du im commando fenster ein. nichts ist sehr merkwürdig


----------



## XHelp (10. Nov 2010)

Dein Rechner ist mit der neusten Technologie ausgestattet, so dass du nur böse zum Monitor gucken brauchst und deutlich ins Mikro schreien "Starte das, was irgendwo ist, welches ich gerade irgendwomit erstellt habe" und dann läuft die Sache?


----------



## Anfänger22 (10. Nov 2010)

XHelp hat gesagt.:


> Dein Rechner ist mit der neusten Technologie ausgestattet, so dass du nur böse zum Monitor gucken brauchst und deutlich ins Mikro schreien "Starte das, was irgendwo ist, welches ich gerade irgendwomit erstellt habe" und dann läuft die Sache?



die frage war unverständlich


```
import java.util.Scanner;

public class Joe4
{
	public static void main (String args[])
	{
		final double z;
		z = 3.14;
		 System.out.println("Radius eingeben:");
      Scanner scanner = new Scanner(System.in);
      int r = scanner.nextInt();
      System.out.println("Du hast "+r+" eingegeben.");
}
}
```

wo zum teufel ist mein fehler, dass da nur ne konsole erscheint und ich da keine zahl eingeben kann


----------



## bone2 (10. Nov 2010)

läuft das compilieren fehlerfrei? wie compilierst und startest du es überhaupt...


----------



## Anfänger22 (10. Nov 2010)

bone2 hat gesagt.:


> läuft das compilieren fehlerfrei? wie compilierst und startest du es überhaupt...




ja es wirft keine fehler raus...es läuft einwandfrei komischerweise


----------



## bone2 (10. Nov 2010)

bone2 hat gesagt.:


> wie compilierst und startest du es überhaupt...



?!


----------



## Anfänger22 (10. Nov 2010)

bone2 hat gesagt.:


> ?!



ja ganz normal


----------



## ARadauer (10. Nov 2010)

> ja es wirft keine fehler raus...es läuft einwandfrei komischerweise


tipp:  du kompilierst falsch.

bone dreht schon fast durch, da du uns nicht sagst wie du kompilierst...

also screenshot!


----------



## ARadauer (10. Nov 2010)

> ja ganz normal


ich hau mich weg!!!! Ab jetzt bin ich mir sicher, dass du uns verarscht ;-)

Ich geb dir noch einen Tipp: "Normal" ist ein dehnbarer Begriff. In der realen Wirtschaft, wird häufig mit Maven auf einem Buildserver gebaut. Du wirst es auf der Konsole oder in der IDE machen... oder eventuell noch mit ant


----------



## bone2 (10. Nov 2010)

ich muss mich gerade zusammenreißen um nicht pampig zu werden. was ist normal? commandozeile? was gibst du da ein, wie heißt deine java und deine class datei?


----------



## Anfänger22 (10. Nov 2010)

bone2 hat gesagt.:


> ich muss mich gerade zusammenreißen um nicht pampig zu werden. was ist normal? commandozeile? was gibst du da ein, wie heißt deine java und deine class datei?


----------



## Anfänger22 (10. Nov 2010)




----------



## Anfänger22 (10. Nov 2010)

das hier ignorieren


----------



## XHelp (10. Nov 2010)

Diese Aufschrift mit "EXCEPTION" sagt dir nichts? Du versuchst ja irgendein Test zu starten und nicht Joe4

Und wenn man schon dabei ist: Screenshot zum ausführen.


----------



## bone2 (10. Nov 2010)

ich würde sagen in dem Joe9 project steht noch "Test", wo es nicht hingehört.
Joe4 alleine sollte er starten können.


----------



## ARadauer (10. Nov 2010)

Was ist dieses Joe schon wieder für ein Müll?

ok nach der obigen Fehlermeldung nach möchtest du Test ausführen.. gibts aber nicht da du ja Joe4 kompilierst... schau mal ob du das bereinigen kannst...


----------



## error_ON (10. Nov 2010)

das Joe ist für den anfang ein guter Editor (wird aber nicht mehr weiter entwickelt) und leicht zu bedienen


----------

