Announcement

Collapse
No announcement yet.

Tastatureingaben lesen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tastatureingaben lesen

    Hallo,

    Ich habe mir das Programm runtergeladen und habe kleine Scripte geschrieben die nur sich auf Ausgabe am Bildschirm beschränkten. Nun würde ich gerne wissen, wie ich mit Eclipse zahlen von der Tastatur einlesen kann.
    In der Hochschule haben wir "UltraEdit" benutzt, dort wurde mit Hilfe von dem Methode "Tastatur.lies" die Eingaben bearbeitet.
    Als Beispiel möchte ich gern wissen, wie ich dieses Programm mit Eclipse anpassen kann, dass die Daten von der Tastatur eingelesen werden
    Code:
    /* Berechnung des Gesamtpreises für bestellte Artikel */
    public class Berechnung  {
    	public static void main (String[] args) {
    		
    		// Deklaration der Variablen
    		String bezeichnung;
    		double einzelpreis;
    		int anzahl;
    		double gesamtpreis;
    		
    		// Eingabewerte einlesen
    		bezeichnung = Tastatur.liesString("Bitte geben Sie die Bezeichnung des Artikels ein: ");
    		einzelpreis = Tastatur.liesDouble("Bitte geben Sie den Einzelpreis in Euro ein: ");
    		anzahl = Tastatur.liesInt("Bitte geben Sie die Anzahl ein: ");
    		
    		// Berechnungen durchführen
    		gesamtpreis = anzahl * einzelpreis;
    		
    		// Ergebnisse ausgeben
    		System.out.println();
    		System.out.println(anzahl + " " + bezeichnung + " zu je " + einzelpreis 
    				+ " EUR kosten insgesamt " + gesamtpreis + " EUR.");
    	}
    }
    Ich bedanke mich für Eure Hilfe

  • #2
    In Java gibt es keine Scripte. In Java hat das Lesen von der Tastatur nichts mit der verwendeten IDE - hier Eclipse - zu tun. Eclipse ist ein Programm/Eingabeoberfläche/IDE, mit dem man Java (und auch andere Programmiersprachen) programmieren kann.

    http://de.wikipedia.org/wiki/Integri...klungsumgebung

    Java kannst du beispielsweise auch mit Netbeans http://netbeans.org/ oder Intellij Idea http://www.jetbrains.com/idea/ progammieren.

    UltraEdit ist ein Texteditor und hat mit Programmierung von Java nichts zu tun, ausgenommen, er wurde zur Javaprogrammierung genutzt und "Tastatur.lies" wäre eine Javaklasse/Methode.

    Zur Programmierung ist er allerdings ungeeignet, da er keine IDE ist. s.o.

    Aus diesem Grund hat deine Frage nichts mit Eclipse zu tun, sondern ist eine Java-Frage:

    Ausgehend davon, dass du ein Java ab Version 1.5 installiert hast, kannst du die Klasse Scanner benutzen.

    Hier steht wie das geht
    http://java.sun.com/j2se/1.5.0/docs/...l/Scanner.html
    Zuletzt editiert von Christian Marquardt; 28.03.2010, 07:38.
    Christian

    Comment


    • #3
      Danke für die Antwort.
      Ich habe nun lange rumgebastelt leider ohne brauchbare Ergebnisse.
      Wäre es Möglich mir diesen "Scanner" calss/Methode in dem Quellcode einfügen?
      Wie gesagt bis jetzt habe ich immer "Tastatur.lies*" gearbeiet und es ging ganz gut.

      Danke für eure Unterstützung.

      Comment


      • #4
        Was ist an

        Scanner sc = new Scanner(System.in);
        int i = sc.nextInt();

        unklar?

        Wo ist denn der Code für Tastatur.lies?
        Zuletzt editiert von Christian Marquardt; 28.03.2010, 14:15. Reason: Rechtschreibung
        Christian

        Comment


        • #5
          ("Bitte geben Sie den Einzelpreis in Euro ein: "

          wäre dann so richtig:


          Code:
          // Eingabewerte einlesen
          		bezeichnung = Scanner sc = new Scanner(System.in);
          string s = sc.nextString("Bitte geben Sie die Bezeichnung des Artikels ein: ");
          
          
          		einzelpreis = Scanner sc = new Scanner(System.in);
          double d = sc.nextDouble("Bitte geben Sie den Einzelpreis in Euro ein: ");
          
                                        anzahl = Scanner sc = new Scanner(System.in);
          int i = sc.nextInt("Bitte geben Sie die Anzahl ein: ");

          Comment


          • #6
            Das müsste doch schon beim schreiben in Eclipse Fehlermeldungen anzeigen. Also wird das wohl auch so nicht gehen. Es scheint nicht so, als ob du überhaupt mal auf den Link geklickt hast und dir mal die Klasse angesehen hast. Dort ist doch zu ersehen, dass

            - es die Methode nextString überhaupt nicht gibt
            - die Methode nextDouble überhaupt keinen Parameter hat und man dann auch keinen übergeben kann

            Code:
            public static void main(String[] args)
                {
                Scanner sc=new Scanner(System.in);
                System.out.println("Bitte geben Sie eine Ziffer ein:");
                int i=sc.nextInt();
                System.out.println("es wurde "+i+" eingegeben");
                System.out.println("Bitte geben Sie einen String ein:");
                String s=sc.next();
                System.out.println("es wurde "+s+" eingegeben");
                }
            Christian

            Comment


            • #7
              Danke noch mal für die Antwort.
              Ich habe den Link gelesen und einiges ausprobiert, aber irgendwie nicht geklappt.
              Nun sieht der Code so aus:
              Code:
              import java.util.Scanner;
              
              /* Berechnung des Gesamtpreises für bestellte Artikel */
              
              public class Berechnung  {
              	public static void main (String[] args) {
              		
              		// Deklaration der Variablen
              		
              		
              		// Deklaration der Variablen
              		String bezeichnung;
              		double einzelpreis;
              		int anzahl;
              		double gesamtpreis;
              		
              	
              		// Eingabewerte einlesen
              	
              	    Scanner sc=new Scanner(System.in);
              	    System.out.println("Bitte geben Sie eine Ziffer ein:");
              	    int i=sc.nextInt();
              	    System.out.println("es wurde "+i+" eingegeben");
              	    System.out.println("Bitte geben Sie einen String ein:");
              	    String s=sc.next();
              	    System.out.println("es wurde "+s+" eingegeben");
              	 
              	
              		// Berechnungen durchführen
              		gesamtpreis = anzahl * einzelpreis;
              		
              		// Ergebnisse ausgeben
              		System.out.println();
              		System.out.println(anzahl + " " + bezeichnung + " zu je " + einzelpreis 
              				+ " EUR kosten insgesamt " + gesamtpreis + " EUR.");
              	}
              }

              Fehlermeldung:

              Code:
              Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
              	The local variable anzahl may not have been initialized
              	The local variable einzelpreis may not have been initialized
              	The local variable anzahl may not have been initialized
              	The local variable bezeichnung may not have been initialized
              	The local variable einzelpreis may not have been initialized

              Comment


              • #8
                Und was soll das??
                Christian

                Comment


                • #9
                  ok, nun läufts wieder..
                  Besten dank für deine Hilfe.
                  übrigends ich habe die Variabeln, wie folgt geändert:
                  Code:
                  // Deklaration der Variablen
                  		String bezeichnung = null;
                  		double einzelpreis = 0;
                  		int anzahl = 0;
                  		double gesamtpreis;
                  Nun die Fehlermeldung ist weg jedoch die Berechnung geht nicht
                  Zuletzt editiert von user_001; 28.03.2010, 14:39.

                  Comment


                  • #10
                    ich habe dir ein Demo geben, wie das funktioniert.

                    Du solltest es jetzt auf dein Programm anpassen.

                    Das Reinkopieren ist wenig zielführend. Das wird wohl nicht das gewünschte Ergebnis bringen

                    Des Weiteren ist das dein Code der den Fehler verursacht. Schon von Anfang an:

                    String bezeichnung="";
                    double einzelpreis=0;
                    .....
                    Christian

                    Comment


                    • #11
                      ich komme irgendwie gar nicht mehr klar ;-(

                      Comment


                      • #12
                        Hier dein fertiges Programm:

                        Code:
                        public static void main(String[] args)
                            {
                            Scanner sc=new Scanner(System.in);
                            System.out.println("Bitte geben Sie die Bezeichnung ein:");
                            String bezeichnung=sc.next();
                            System.out.println("Bitte geben Sie den Einzelpreis ein:");
                            double einzelPreis=sc.nextDouble();
                            System.out.println("Bitte geben Sie die Anzahl ein:");
                            int anzahl=sc.nextInt();
                            double gesamtPreis=anzahl*einzelPreis;
                            System.out.println();
                            System.out.println(anzahl+" "+bezeichnung+" zu je "+einzelPreis
                                    +" EUR kosten insgesamt "+gesamtPreis+" EUR.");
                            }
                        Christian

                        Comment


                        • #13
                          herzlichen Dank. Es funktioniert wunderbar.
                          Ich werde mich nun mit dem Code noch intensive auseinandersetzen um die Änderungen zu verstehen.
                          wünsche dir nen schönen Sonntag.

                          Comment


                          • #14
                            ]bezeichnung[/B]=sc.next();
                            Zuletzt editiert von user_001; 28.03.2010, 16:15. Reason: erledigt

                            Comment


                            • #15
                              Du solltest dir dieses hier bookmarken

                              http://java.sun.com/javase/6/docs/api/index.html

                              Erst Anlaufstelle um zu schauen was eine Klasse kann
                              Christian

                              Comment

                              Working...
                              X