# Mit tastatureingaben rechnen



## Gast (7. Feb 2008)

Ich versuche vergäblich 3 Tastatureingaben zu addieren.

Wir dürfen mit nur drei variablen arbeiten.

Díese drei Variablen habe ich schon für die drei Tastatureingaben benutzt. (String)

Wie kann ich nun diese drei Strings addieren? Es soll wohl mit einer Schleife gehen. Habe aber überhaupt keine Ahnung wie das gehen soll, da man ja mit Strings nicht rechnen kann.


----------



## masta // thomas (8. Feb 2008)

Sollst du mit den eingegebenen Werte rechnen, musst du die String zu Zahlen umwandeln, z.B. Integer.valueOf().


----------



## Guest (8. Feb 2008)

Aber dann habe ich ja drei neue Variablen oder?


----------



## masta // thomas (8. Feb 2008)

Nicht zwangsläufig.
Magst du mal zeigen, was du bisher gemacht hast?


----------



## Guest (8. Feb 2008)

Weit bin ich noch nicht gekommen. habe die drei Tastatureingaben erstellt aber weiter komme ich nicht.




```
import java.io.*;
import java.util.*;

public class Aufgabe2 {
	public static void main(String[] args) throws Exception {
	
	BufferedReader Tastatur;
	Tastatur = new BufferedReader(
		new InputStreamReader (System.in));
		
		String zahlEins, zahlZwei, zahlDrei;
		
		System.out.print("1. Zahl eingeben: ");
			zahlEins = Tastatur.readLine();
			
		System.out.print("2. Zahl eingeben: ");
			zahlZwei = Tastatur.readLine();
			
		System.out.print("3. Zahl eingeben: ");
			zahlDrei = Tastatur.readLine();
			
		for (zahlEins = Double.parseDouble())
```
[/code]


----------



## Zetagi (8. Feb 2008)

1) Du könntest die Tastatureingabe einlesen und in einer Variablen speichern.
2) Die Variable (String) in eine zweite Variable umgewandelt als int speichern
3) du addierst den wert der zweiten Variable (int) zu einer Gesamtsumme (dritte Variable)

Pseudocode:

```
Summe = 0;
for(a=1; a <= 3 ; a++){
   Char a = Tastatur.readChar();
   Integer b = Integer.valueOf(a);
   Summe = summe + b;
}
writeOutput(summe)
```


----------



## masta // thomas (8. Feb 2008)

```
// ...
		BufferedReader tastatur;
		tastatur = new BufferedReader(new InputStreamReader(System.in));

		int zahlEins, zahlZwei, zahlDrei;

		System.out.print("1. Zahl eingeben: ");
		zahlEins = Integer.valueOf(tastatur.readLine());

		System.out.print("2. Zahl eingeben: ");
		zahlZwei = Integer.valueOf(tastatur.readLine());

		System.out.print("3. Zahl eingeben: ");
		zahlDrei = Integer.valueOf(tastatur.readLine());
		
		System.out.println("Summe: " + (zahlEins + zahlZwei + zahlDrei));
// ...
```

Variablennamen werden übrigens kleingeschrieben


----------



## Guest (8. Feb 2008)

Zetagi hat gesagt.:
			
		

> 1) Du könntest die Tastatureingabe einlesen und in einer Variablen speichern.
> 2) Die Variable (String) in eine zweite Variable umgewandelt als int speichern
> 3) du addierst den wert der zweiten Variable (int) zu einer Gesamtsumme (dritte Variable)
> 
> ...




String in eine zweite Variable umwandeln und als int speichern habe ich schon in der ersten Aufgabe die wir hatten gemacht.



```
import java.io.*;
import java.util.*;

public class Aufgabe1 {
	public static void main(String[] args) throws Exception {
	
	BufferedReader Tastatur;
	Tastatur = new BufferedReader(
		new InputStreamReader (System.in));
		
		
		String Zahl1, Zahl2, Zahl3;
		double erste = 0, zweite = 0, dritte = 0;
			
		System.out.print("1. Zahl eingeben:  ");
			Zahl1 = Tastatur.readLine();
			
		System.out.print("2. Zahl eingeben:  ");
			Zahl2 = Tastatur.readLine();
			
		System.out.print("3. Zahl eingeben:  ");
			Zahl3 = Tastatur.readLine();
			
		System.out.println("--------------------");
		
		erste = Double.parseDouble(Zahl1);
		zweite = Double.parseDouble(Zahl2);
		dritte = Double.parseDouble(Zahl3);
		
		System.out.print("Die Summe ist:  "+ (erste + zweite + dritte));
```

In der zweiten Aufgabe dürfen wir nur eine Schleife und max drei variablen verwenden.

Zu 1.: Die Tastatur wird doch eingelesen und als Variable (String) gespeichert oder?[/code]


----------



## Guest (8. Feb 2008)

masta // thomas hat gesagt.:
			
		

> ```
> // ...
> BufferedReader tastatur;
> tastatur = new BufferedReader(new InputStreamReader(System.in));
> ...




Oh man wenn ich den Code sehe sieht es immer so einfach aus. Aber selbst drauf zu kommen   

Also braucht man keine Schleife???


----------



## Ariol (8. Feb 2008)

```
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Aufgabe1
{
	public static void main(String[] args) throws Exception
	{

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

		int zahlen = 3; //Anzahl der Einzugebenden Zahlen
		double summe = 0.0;

		for (int i = 0; i < zahlen; i++) //Schleife
		{
			try
			{
				System.out.print(i+1 + ". Zahl eingeben:  ");
				summe += Double.parseDouble(Tastatur.readLine()); //Eingelesenen String zu Zahl und zur Summe addieren
			}
			catch(NumberFormatException nfe)
			{
				System.err.println("FEHLER: Keine Zahl!");
				i--; //Zahl wiederholen
			}
		}
		System.out.println("--------------------");

		System.out.print("Die Summe ist:  " + summe);
	}
}
```

Mit einer Schleife und nur 2 Variablen ^^


----------



## Guest (8. Feb 2008)

Danke für eure schnelle und sehr gute Hilfe  :toll: 

Mache erstmal schluss für heute


----------

