Hi,
ich bin relativ unerfahren mit Java, und bräuchte mal Hilfe zu den Datentypen.
Und zwar habe ich gerade ein Kopfrechnenprogramm geschrieben, was random Zahlen generiert, und sie addiert haben möchte. Ganz simpel eigentlich.
Jetzt wollte ich am Ende noch einen Schlussatz einfügen der ungefähr so aussieht:
"Du hast XX richtige bei XX Versuchen.
Im durchschnitt hast du pro Aufgabe XX,XX Versuche gebraucht."
Die Variablen versuche und richtige sind integers, und der durchschnitt double, da ich dort ja auch Nachkommastellen brauche. Allerdings bekomme ich nur gerade Zahlen zurück. Ich könnte natürlich auch einfach alle in double machen, aber würde mich trotzdem mal interessieren.
Ich hatte bisher gedacht dass in int Variablen nur keine Kommazahlen gespeichert werden können, aber trotzdem mit ihnen weitergerechnet werden kann.
Der Quellcode sollte zwar eigentlich nicht nötig sein, aber ich poste ihn trotzdem mal:
[JAVA=35]import java.util.*;
public class kopfrechnen {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scan = new Scanner (System.in);
Random rand = new Random();
System.out.println("Kopfrechnen starten? (j/n)");
String start = scan.nextLine();
if(start.equals("j")) {
System.out.println("Kopfrechnen wurde gestartet, zum beenden '0' eingeben");
int zahl1;
int zahl2;
int ergebnis;
int versuche = -1;
int richtige = -1;
do {
zahl1 = rand.nextInt(10);
zahl2 = rand.nextInt(10);
richtige++;
do {
System.out.println(zahl1 + " + " + zahl2 + " = ");
ergebnis = scan.nextInt();
versuche++;
} while((ergebnis) != (zahl1 + zahl2) && (ergebnis != 0));
} while(ergebnis != 0);
System.out.println("Kopfrechnen beendet! Du hast für " + richtige + " richtige Antworten " + versuche + " Versuche gebraucht.");
double durchschnitt = (versuche / richtige);
System.out.println("Du hast im Durchschnitt " + durchschnitt + " Versuche gebraucht.");
} else System.out.println("Kopfrechnen beendet!");
}
}
[/code]
ich bin relativ unerfahren mit Java, und bräuchte mal Hilfe zu den Datentypen.
Und zwar habe ich gerade ein Kopfrechnenprogramm geschrieben, was random Zahlen generiert, und sie addiert haben möchte. Ganz simpel eigentlich.
Jetzt wollte ich am Ende noch einen Schlussatz einfügen der ungefähr so aussieht:
"Du hast XX richtige bei XX Versuchen.
Im durchschnitt hast du pro Aufgabe XX,XX Versuche gebraucht."
Die Variablen versuche und richtige sind integers, und der durchschnitt double, da ich dort ja auch Nachkommastellen brauche. Allerdings bekomme ich nur gerade Zahlen zurück. Ich könnte natürlich auch einfach alle in double machen, aber würde mich trotzdem mal interessieren.
Ich hatte bisher gedacht dass in int Variablen nur keine Kommazahlen gespeichert werden können, aber trotzdem mit ihnen weitergerechnet werden kann.
Der Quellcode sollte zwar eigentlich nicht nötig sein, aber ich poste ihn trotzdem mal:
[JAVA=35]import java.util.*;
public class kopfrechnen {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scan = new Scanner (System.in);
Random rand = new Random();
System.out.println("Kopfrechnen starten? (j/n)");
String start = scan.nextLine();
if(start.equals("j")) {
System.out.println("Kopfrechnen wurde gestartet, zum beenden '0' eingeben");
int zahl1;
int zahl2;
int ergebnis;
int versuche = -1;
int richtige = -1;
do {
zahl1 = rand.nextInt(10);
zahl2 = rand.nextInt(10);
richtige++;
do {
System.out.println(zahl1 + " + " + zahl2 + " = ");
ergebnis = scan.nextInt();
versuche++;
} while((ergebnis) != (zahl1 + zahl2) && (ergebnis != 0));
} while(ergebnis != 0);
System.out.println("Kopfrechnen beendet! Du hast für " + richtige + " richtige Antworten " + versuche + " Versuche gebraucht.");
double durchschnitt = (versuche / richtige);
System.out.println("Du hast im Durchschnitt " + durchschnitt + " Versuche gebraucht.");
} else System.out.println("Kopfrechnen beendet!");
}
}
[/code]