Taschenrechner - Erklärung

Status
Nicht offen für weitere Antworten.

Spin

Top Contributor
Hallo liebe Leute , ich bin ja noch sehr neu hier und bräuchte mal eure Hilfe.
Ich weiß es gibt schon tasuende Taschenrechnerthemen , doch bei mir geht es eher um was anderes. :(


Code:
import java.io.*;
import java.text.*;

public class tascenrechner

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

  {
    String [] eingabe = new String [10];
    String str;
    int anzahlZahlen, zeichen, inData1;

    BufferedReader input = new BufferedReader (new InputStreamReader(System.in));
    DecimalFormat Dezimal = new DecimalFormat("#,##0.00");
    /*Decimal Format = Unterklasse von NumberFormat , bedeutet das der Rechner jede Art von Werten
     * annimmt, wie Bsp: 10%, 123€ oder 123,4 */


    System.out.println("Wie viele Zahlen sollen berechnet werden?");
    anzahlZahlen=Integer.parseInt(input.readLine());
    int [] zahlen = new int [anzahlZahlen];
    for (int i=0; i<anzahlZahlen; i++)
    {
     System.out.println("Bitte geben Sie den Wert für " +(i+1)+ ": ");
     zahlen [i] = Integer.parseInt(input.readLine());
     System.out.println("Wert für Zahl " + zahlen[i]);



    }
      System.out.println("Bitte geben Sie die Rechenoperation (+/-/x//) ein!");
      //inData1 = outSystem.readLine();
      str=input.readLine();
      inData1=str.charAt(0);
      //inData1=Integer.parseInt(input.readLine());

      if (inData1 =='+')
      {
        double summe = 0;
        for(int i=0; i<zahlen.length; i++){
         summe += zahlen[i];
        }
        System.out.println("Das Ergebnis Ihrer Berechnung lautet: " +summe);
      }
 if (inData1 =='-')
      {
        double summe = 0;
        for(int i=0; i<zahlen.length; i++){
         summe -= zahlen[i];
        }
        System.out.println("Das Ergebnis Ihrer Berechnung lautet: " +summe);
      }


  }
}


Kann mir mal bitte einer erklären , warum bei mir das Minus|-| nicht funktioniert ?
Weiterhin, habe ich jetzt einiges so übernommen aus anderen Beispielen , würde mich trotzdem sehr interessieren, was die bedeuten . Das im Kommentar habe ich schon ergoogelt.!


Danke euch , gruß spin



Begriffe:

throws IOException
int [] zahlen = new int [anzahlZahlen]; ---Warum [] , wegen Array, aber auf was bezogen?

str=input.readLine();
inData1=str.charAt(0);





Danke!
 

Der Müde Joe

Top Contributor
Hab mal alles unnütze rausgeschmissen...
Was ist deine konkrete Frage?
Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Calc{

	public static void main(String[] args) throws IOException {
		String str;
		int anzahlZahlen, inData1;

		BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

		System.out.println("Wie viele Zahlen sollen berechnet werden?");
		anzahlZahlen = Integer.parseInt(input.readLine());
		int[] zahlen = new int[anzahlZahlen];
		for (int i = 0; i < anzahlZahlen; i++) {
			System.out
					.println("Bitte geben Sie den Wert für " + (i + 1) + ": ");
			zahlen[i] = Integer.parseInt(input.readLine());
			System.out.println("Wert für Zahl " + zahlen[i]);

		}
		System.out.println("Bitte geben Sie die Rechenoperation (+/-/x//) ein!");
		str = input.readLine();
		inData1 = str.charAt(0);

		if (inData1 == '+') {
			double summe = 0;
			for (int i = 0; i < zahlen.length; i++) {
				summe += zahlen[i];
			}
			System.out.println("Das Ergebnis Ihrer Berechnung lautet: " + summe);
		}
		if (inData1 == '-') {
			double summe = 0;
			for (int i = 0; i < zahlen.length; i++) {
				summe -= zahlen[i];
			}
			System.out.println("Das Ergebnis Ihrer Berechnung lautet: " + summe);
		}
	}
}

EDIT:
gibt übrigens auch eine EDIT funktion.. ;-)
 

Spin

Top Contributor
Naja die Begriife die ich ganz oben in Rot dargestellt habe , würde ich gerne erläutert haben :)


run:
Wie viele Zahlen sollen berechnet werden?
2
Bitte geben Sie den Wert für 1:
3
Wert für Zahl 3
Bitte geben Sie den Wert für 2:
1
Wert für Zahl 1
Bitte geben Sie die Rechenoperation (+/-/x//) ein!
-
Das Ergebnis Ihrer Berechnung lautet: -4.0
BUILD SUCCESSFUL (total time: 24 seconds)





Das die Ausgabe, ich denke wir haben noch ein Fehler in der Minus Programmierung!
 

Der Müde Joe

Top Contributor
>throws IOException

bei Eingaben von der Tastatur, Input von Files etc kann es zu fehlern kommen.
So zB das File existiert nicht von dem man lesen will oder sonst was....
diese Methoden schmeissen eine Exception (ausnahme).
Nun kann man sie Behandeln mit try catch oder einfach weiterleiten throws...
dann muss sich der Aufrufer darum kümmern--> hier niemand...


>int [] zahlen = new int [anzahlZahlen]; ---Warum [] , wegen Array, aber auf was bezogen?

Ein Array von ints der Länge: anzahlZahlen


>str=input.readLine();

Liest eine Zeile vom InputStream. Hier System.in --> Tastatur (von der Konsole)
(Schmeisst gerene mal eine Exception)

>inData1=str.charAt(0);

inData1 ist der erste Character vom String str. zB "Hallo Welt".charAt(0) = H


>Das die Ausgabe, ich denke wir haben noch ein Fehler in der Minus Programmierung!

Jo. weil halt von 0 ausgegangen wird und dann jede Eingabe von 0 minus gerechnet wird
 

Spin

Top Contributor
Wie kommt man jetzt auf die Lösung , für Minus, probiere schon seid einer halben std :(
 

Der Müde Joe

Top Contributor
Die Frage ist: Was ist die Lösung?

Der erste Wert minus alle anderen?

Dann:
Code:
      if (inData1 == '-') {
         double summe = zahlen[0]; //der erste Wert
         for (int i = 1; i < zahlen.length; i++) { //wir beginnen beim 2ten Wert, darum i=1
            summe -= zahlen[i];
         }
         System.out.println("Das Ergebnis Ihrer Berechnung lautet: " + summe);
      }
 

Spin

Top Contributor
run:
Wie viele Zahlen sollen berechnet werden?
4
Bitte geben Sie den Wert für 1:
3
Wert für Zahl 3
Bitte geben Sie den Wert für 2:
2
Wert für Zahl 2
Bitte geben Sie den Wert für 3:
1
Wert für Zahl 1
Bitte geben Sie den Wert für 4:
2
Wert für Zahl 2
Bitte geben Sie die Rechenoperation (+/-/x//) ein!
-
BUILD SUCCESSFUL (total time: 11 seconds)




Trotz deiner If anweisung , macht das Programm es nicht :(

Ich denke dass ich mir nen anderes Bsp, suche , denn ich komme hier nicht weiter :(


Wieso akzeptiert er das Minus - nicht?
 

Der Müde Joe

Top Contributor
Setzt deine Ziele tiefer.
Wieso das minus nicht tut? Bei mir schon.

Code:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Calc {

	public static void main(String[] args) throws IOException {
		BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

		int zahl1;
		int zahl2;

		System.out.println("Erste Zahl eingeben: ");
		zahl1 = Integer.parseInt(input.readLine());

		System.out.println("Zweite Zahl eingeben: ");
		zahl2 = Integer.parseInt(input.readLine());

		System.out.println("Rechenoperation (+/-/x//) eingeben:");
		String s = input.readLine();
		char sign = s.charAt(0);

		if (sign == '+') {
			System.out.println("Ergebnis: " + (zahl1 + zahl2));
		} else if (sign == '-') {
			System.out.println("Ergebnis: " + (zahl1 - zahl2));
		} else if (sign == '*') {
			System.out.println("Ergebnis: " + (zahl1 * zahl2));
		} else if (sign == '/') {
			System.out.println("Ergebnis: " + ((double) zahl1 / zahl2));
		} else {
			System.out.println("No operation found: " + sign);
		}
	}
}
 

Spin

Top Contributor
Danke dir , mehr wollte ich nicht . Versuche jetzt auf der Basis jeden Schritt von dir nachzuvollziehen :)

Danke
 
G

Guest

Gast
Warum bei dir das "-" nicht funktioniert hat? Schau dir mal den ganzen IF-Block an. Du hast a eine Summe = 0 und ziehst beide Eingabewerte einfach nacheinander von der Null ab. Bei deinem Beispiel wars 0 - 3 - 1, da kommt dann natürlich -4 raus.


Code:
 if (inData1 =='-')
      {
        double summe = 0;
        for(int i=0; i<zahlen.length; i++){
         summe -= zahlen[i];
        }
        System.out.println("Das Ergebnis Ihrer Berechnung lautet: " +summe);
      }


  }
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
L Taschenrechner Problem Java Basics - Anfänger-Themen 4
J Frage zu einem "Taschenrechner" code Java Basics - Anfänger-Themen 9
R Operatoren Rechenoperation verwenden für Taschenrechner. Java Basics - Anfänger-Themen 32
S while Schleife Taschenrechner Java Basics - Anfänger-Themen 1
J Taschenrechner mit mehr als 2 Zahlen. Java Basics - Anfänger-Themen 18
R Einfacher Taschenrechner mit Eclipse Java Basics - Anfänger-Themen 3
M Einfacher Taschenrechner Java Basics - Anfänger-Themen 2
Fiedelbambu Prüfen von Komma stelle beim Taschenrechner Java Basics - Anfänger-Themen 5
JordenJost Taschenrechner problem Java Basics - Anfänger-Themen 5
Y Taschenrechner programmieren Java Basics - Anfänger-Themen 3
G Taschenrechner ergibt Fehler in if-Abfrage Java Basics - Anfänger-Themen 6
K Erste Schritte "Taschenrechner" zeigt keine Komma Zahlen an. Java Basics - Anfänger-Themen 8
C Potenzberechnung über switch case. Taschenrechner mit Eingabe über einen grafischen Dialog Java Basics - Anfänger-Themen 22
E JavaFX Taschenrechner Eingabe im Textfield beschränken Java Basics - Anfänger-Themen 2
E Taschenrechner GUI Problem mit Fehlerhandling Java Basics - Anfänger-Themen 6
C Taschenrechner (switch) in Taschenrechner mit Methoden umwandeln Java Basics - Anfänger-Themen 115
W Taschenrechner mit Switch case Java Basics - Anfänger-Themen 4
W Taschenrechner Java Basics - Anfänger-Themen 11
A Taschenrechner mit Gui erstellen Java Basics - Anfänger-Themen 9
2 Taschenrechner mit GUI Problem bei der Berechnung Java Basics - Anfänger-Themen 8
P Taschenrechner mit unendlich vielen Eingabemöglichkeiten Java Basics - Anfänger-Themen 1
V Erste Schritte Taschenrechner mit beliebig vielen Zahlen Java Basics - Anfänger-Themen 5
S Taschenrechner Java Basics - Anfänger-Themen 13
P Taschenrechner Text übertragung Java Basics - Anfänger-Themen 3
S Compiler-Fehler Basic- Taschenrechner/ Fehler Java Basics - Anfänger-Themen 8
S Basic- Taschenrechner? Java Basics - Anfänger-Themen 7
P Hilfe bei Java Taschenrechner Java Basics - Anfänger-Themen 25
F Erste Schritte Frage zu simplem Taschenrechner(switch) Java Basics - Anfänger-Themen 16
L Mein Taschenrechner lässt sich plötzlich nicht mehr öffnen Java Basics - Anfänger-Themen 5
S Taschenrechner hilfe! Java Basics - Anfänger-Themen 17
H Java Taschenrechner Java Basics - Anfänger-Themen 4
R Variablen Taschenrechner mit Komfortfunktionen Java Basics - Anfänger-Themen 2
J RPN Taschenrechner - keine Lösung!! Java Basics - Anfänger-Themen 84
M Java Taschenrechner (if-else) Java Basics - Anfänger-Themen 11
L Taschenrechner mit switch und while funktioniert noch nicht richtig Java Basics - Anfänger-Themen 22
Q simpler Taschenrechner Java Basics - Anfänger-Themen 34
R Taschenrechner NullPointerException Java Basics - Anfänger-Themen 1
R Variablen Weitergehenderr Taschenrechner Java Basics - Anfänger-Themen 4
F Taschenrechner "Error loading class..." Java Basics - Anfänger-Themen 5
M Java Taschenrechner Programmieren Java Basics - Anfänger-Themen 12
P Erste Schritte Taschenrechner mit if-else Anweisung Java Basics - Anfänger-Themen 6
G Taschenrechner gibt nur 0.0 aus Java Basics - Anfänger-Themen 8
A Taschenrechner programmieren Java Basics - Anfänger-Themen 21
Z Java Taschenrechner Java Basics - Anfänger-Themen 6
J Kleiner Taschenrechner! Anfänger braucht Hilfe :( Java Basics - Anfänger-Themen 2
C Taschenrechner in Java Java Basics - Anfänger-Themen 6
J Erste Schritte Java CMD Taschenrechner mit Parametern! Java Basics - Anfänger-Themen 16
J Taschenrechner: Probleme Java Basics - Anfänger-Themen 5
E Taschenrechner problem! Ich komme nicht voran Java Basics - Anfänger-Themen 18
R Erste Schritte Taschenrechner mit Schleife Java Basics - Anfänger-Themen 24
Lord.Djerun (Taschenrechner Netbeans) Komma nur einmal schreiben & 0 ersetzen Java Basics - Anfänger-Themen 1
Z Taschenrechner - Additions/Substraktions/Multiplikations/Divionsketten! Java Basics - Anfänger-Themen 4
D Taschenrechner Frage Java Basics - Anfänger-Themen 12
Z Sehr simpler Taschenrechner - Hilfe! Java Basics - Anfänger-Themen 10
Z Taschenrechner - Wie addiere,multipliziere und subtrahiere ich? Java Basics - Anfänger-Themen 6
D kleiner Taschenrechner mit switch fehlerhaft Java Basics - Anfänger-Themen 1
K Taschenrechner im GUI Java Basics - Anfänger-Themen 2
P Taschenrechner, operatoren Java Basics - Anfänger-Themen 4
D Simpler Taschenrechner Java Basics - Anfänger-Themen 6
A Anfänger Taschenrechner Frage Java Basics - Anfänger-Themen 14
R Erste Schritte Taschenrechner - Punkt-vor-Strich Rechnung Java Basics - Anfänger-Themen 1
S Operatoren Taschenrechner Ergebnis ausgeben Java Basics - Anfänger-Themen 7
A Taschenrechner zeigt Error Java Basics - Anfänger-Themen 7
J Taschenrechner Funktion Java Basics - Anfänger-Themen 18
M Taschenrechner fertigstellung Java Basics - Anfänger-Themen 1
N Methoden Taschenrechner Java Basics - Anfänger-Themen 2
F z = input.nextChar(); PROBLEM Taschenrechner Java Basics - Anfänger-Themen 7
J Scanner Taschenrechner? Java Basics - Anfänger-Themen 7
J Variablen Rechenzeichen und Zahlen verknüpfen für einen Taschenrechner Java Basics - Anfänger-Themen 17
B Klassen Java Taschenrechner mit Klassen und Methoden Java Basics - Anfänger-Themen 12
B Erste Schritte Brauche Hilfe bei einem Java-Taschenrechner Java Basics - Anfänger-Themen 11
R Methoden Taschenrechner Java Basics - Anfänger-Themen 4
P Taschenrechner , IF-Abfrage Java Basics - Anfänger-Themen 12
I Taschenrechner - Methoden implementieren Java Basics - Anfänger-Themen 5
I Java Starthilfe (Taschenrechner) Java Basics - Anfänger-Themen 7
J Taschenrechner Problemchen Java Basics - Anfänger-Themen 3
D Erste Schritte Taschenrechner Java Basics - Anfänger-Themen 11
K taschenrechner - Fehler beim Kürzen eines Bruches finden Java Basics - Anfänger-Themen 20
J Taschenrechner Punkt vor Strich Java Basics - Anfänger-Themen 9
A Taschenrechner programmieren Java Basics - Anfänger-Themen 5
M Ausklappbares Fenster bei grafischem Taschenrechner Java Basics - Anfänger-Themen 2
M Dividieren bei Grafischem Taschenrechner klappt nicht Java Basics - Anfänger-Themen 2
N Taschenrechner mit Unterprogra Java Basics - Anfänger-Themen 6
C Taschenrechner Java Basics - Anfänger-Themen 12
Z Taschenrechner programmieren Java Basics - Anfänger-Themen 5
E Erste Schritte Taschenrechner Java Basics - Anfänger-Themen 8
K Taschenrechner Java Basics - Anfänger-Themen 25
J Textfeld für Taschenrechner Java Basics - Anfänger-Themen 3
D Taschenrechner Java Basics - Anfänger-Themen 28
A Taschenrechner-GUI mit BorderLayout? Java Basics - Anfänger-Themen 6
W [PROJEKT] Simpler grafischer Taschenrechner Java Basics - Anfänger-Themen 8
M Taschenrechner mit JApplet Java Basics - Anfänger-Themen 26
J Grafischen Taschenrechner programmieren - Frage dazu Java Basics - Anfänger-Themen 12
W Taschenrechner Java Basics - Anfänger-Themen 2
T Tasten vom Taschenrechner? Java Basics - Anfänger-Themen 3
S Datentypen Taschenrechner Java Basics - Anfänger-Themen 13
J Taschenrechner Java Basics - Anfänger-Themen 5
J Taschenrechner Java Basics - Anfänger-Themen 9
M While bei einem Taschenrechner Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben