Fragen[Java]

01/15/2013 22:54 xXTheDracheXx#1
.
01/15/2013 23:02 nkkk#2
Quote:
Originally Posted by xXTheDracheXx View Post
Heyho,

habe ungefähr vor 3 Tagen angefangen Java zu lernen, nun hab ich mir gedacht, dass ich einfach mal ein paar ganz kleine "programme" schreibe um das gelernte zu vertiefen. Also habe ich einen kleinen Rechner erstellt, nur addieren, und wollte jetzt auch das er subtrahieren, dividieren, usw. kann. Nun stellt sich mir die Frage ob ich dafür jeweils eine neue Klasse erstellen muss, um auf subtrahieren, dividieren,... zugreifen zu können oder ob man das alles in einer Klasse machen kann.

Code:
Code:
import java.util.Scanner;
public class r {
	public static void main(String[] args) {
		
		{
		int x,y,z;
		Scanner s = new Scanner (System.in);
		System.out.println("Bitte geben Sie 2 Zahlen an, die addiert werden sollen.");
		x = s.nextInt();
		y = s.nextInt();
		z = x+y;
		System.out.println("Die Summe beträgt: " + z);
		}
		
	}
	}
2. Wie lässt man die Maus an einer bestimmten Koordinate klicken?

Und natürlich hätte ich gerne Vorschläge, was man noch so für kleine "Programme" erstellen könnte.
ehrlcih gesagt benutzt du in deinem code noch GARKEINE klasse, sondern programmierst ganz prozuderal, insofern kannst du andere auch noch ales die die "r" klasse packen.

zu 2:in java gibt es dafür die Rorbot klasse soweit ich weis.
01/15/2013 23:37 Obilee#3
1. Mach einfach am Anfang eine Abfrage was gemacht werden soll ( teilen, addieren usw. ) und je nachdem was der User eingegeben hat realisierst du mit if / else zweigen die operationen.

simpler pseudo code:

sysout("geben sie ein was sie tun wollen")
int i = usereingabe;
if(i == 1)
mache addieren
else if(i == 2)
mache multiplizieren

eigene klasse für die operationen macht bei deinem programm noch keinen sinn

2. [Only registered and activated users can see links. Click Here To Register...]
01/16/2013 17:01 xXTheDracheXx#4
Okay, wie behebe ich den Fehler "Resource leak: 's' is never closed." s, ist das int. Es macht keine Probleme, aber wäre schon gut zu wissen wie man das Problem behebt.


Edit: So, hab den Rechner fertig, nur wenn man das Ergebnis hat soll man nun wieder zum Anfang kommen, geht das mit return(), oder wie muss ich das machen?

Code:
Code:
import java.util.Scanner;
public class r {
	public static void main(String[] args) {
		
	           int choice;
		Scanner eingabe = new Scanner (System.in);
		System.out.println("Möchten Sie addieren, subtrahieren, dividieren, oder multiplizieren?");
		System.out.println("1 für addieren.");
		System.out.println("2 für subtrahieren.");
		System.out.println("3 für dividieren.");
		System.out.println("4 für multiplizieren.");
		choice = eingabe.nextInt();
		
		if(choice==1){
			Scanner s = new Scanner (System.in);
			int x,y,z;
			System.out.println("Bitte geben Sie 2 Zahlen an, die addiert werden sollen.");
			x = s.nextInt();
			y = s.nextInt();
			z = x+y;
			System.out.println("Das Ergebnis beträgt: " + z);
			
		}
		else if(choice==2){
			Scanner s = new Scanner (System.in);
			int x,y,z;
			System.out.println("Bitte geben Sie 2 Zahlen an, die subtrahiert werden sollen: ");
			x = s.nextInt();
			y = s.nextInt();
			z = x-y;
			System.out.println("Das Ergebnis beträgt: " + z);
		}
		else if(choice==3){
			Scanner s = new Scanner (System.in);
			int x,y,z;
			System.out.println("Bitte geben Sie zwei Zahlen an, die dividiert werden sollen: ");
			x = s.nextInt();
			y = s.nextInt();
			z = x/y;
			System.out.println("Das Ergebnis beträgt: " + z);
			
		}
		else if(choice==4){
			Scanner s = new Scanner (System.in);
			int x,y,z;
			System.out.println("Bitte geben Sie zwei Zahlen an, die multipliziert werden sollen: ");
			x = s.nextInt();
			y = s.nextInt();
			z = x*y;
			System.out.println("Das Ergebnis beträgt: " + z);
		}
	}
}
Edit2: Wie mach ich aus einer .java eine .exe mit eclipse?
01/16/2013 18:32 Obilee#5
@s: Einfach das tun was da steht ? Den Scanner closen mit s.close(); ( oder ähnliches kenne nicht alles auswendig ;)).

@An den Anfang: Einfach die ganzen Abfragen in eine While packen, somit wird nach jeder Berechnung die ganze Abfragen von vorne beginnen

@Exe: gar nicht, das ist java da kommen keine .exe raus sondern .jar. Wenn man unbedingt .jar to .exe haben will muss man auf andere externe Tools zugreifen, google ist dein Freund.
01/16/2013 19:06 xXTheDracheXx#6
Noch eine Frage: Kann man etwas ungefähr so machen:

Code:
set <boolean> to (true),(false)
<boolean> ist ein vorher festgelgter boolean. Also z.B. boolean s;
01/16/2013 19:50 Obilee#7
Was soll dass sein ? Eine Methode die einen bestimmten Boolean Wert vergibt ? Boolean welcher genau dann beim Aufruf den anderen Wert annehmen soll welchen er grad besitzt ?
Eingabe von Scanner der dann den Wert als True / False speichert ?
01/17/2013 18:04 snow#8
boolean weiter = true;

while (weiter) {

doSomethingFunny();
sysout("Weiter?");
weiter = s.nextBoolean();
}

sysout("Fertig");

Meinst du so was?