• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Terminal und Java Prop.

dahead

Granny Smith
Registriert
28.10.06
Beiträge
15
Hallo!

Ich schreibe noch sehr einfache Java Programme, die ich über den Terminal ausgeben muss.

Wenn aber die ausgabe meiner Programme "länger" wird
z.B.:
marios-computer:~ DocIQ$ javac flat.java
marios-computer:~ DocIQ$ java flat
Geben Sie ihr Bruttogehalt ein: 1000
Geben Sie ihren Sozialversicherungsbeitrag in Prozent ein: 20
Geben Sie ihre Flat-Tax in Prozent ein: 20
marios-computer:~ DocIQ$ 640.0 EUR

dortstehen sollte aber

marios-computer:~ DocIQ$ javac flat.java
marios-computer:~ DocIQ$ java flat
Geben Sie ihr Bruttogehalt ein: 1000
Geben Sie ihren Sozialversicherungsbeitrag in Prozent ein: 20
Geben Sie ihre Flat-Tax in Prozent ein: 20
Deine Sozialversicherung beträgt x EUR
Dein Steuerpflichtiges Einkommen beträgt x EUR
...
...
marios-computer:~ DocIQ$ 640.0 EUR


Das ist nicht nur bei einem Programm so, sondern bei allen.


Ich arbeite auf einem MacBook Core Duo mit OSX 10.4.8
Programmiert wird mit Xcode

Danke im Voraus

dahead
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Verstehe jetzt nicht ganz was Du meinst... aber "wie" gibst du das denn aus?
Also der Code wäre wichtiger als die gewünschte Ausgabe vs. reale Ausgabe
 

dahead

Granny Smith
Registriert
28.10.06
Beiträge
15
1. Wie gesagt es liegt nicht am Code, aber wenn du es selbst versuchen willst schicke ich dir gerne ein paat Codes von mir.

2. Standartausgabe über das Terminal halt "javac xx.java -> java xx"


mfg
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
1. Wie gesagt es liegt nicht am Code, aber wenn du es selbst versuchen willst schicke ich dir gerne ein paat Codes von mir.

Mit verlaub.. wie willst du das beurteilen?

Poste ihn doch hier ins Forum... einfach zwischen zwei
Code:
-Tags

[quote="dahead, post: 512815"]
2. Standartausgabe über das Terminal halt "javac xx.java -> java xx"
[/QUOTE]

und was willst Du mir damit sagen?
 

dahead

Granny Smith
Registriert
28.10.06
Beiträge
15
Mit verlaub.. wie willst du das beurteilen?

Poste ihn doch hier ins Forum... einfach zwischen zwei
Code:
-Tags[/QUOTE]

In dem ich es mit codes versucht habe die als gut Beurteilt wurden und die auf Windows Systemen einwandfrei laufen.


[CODE]/*
created...by Mario Kaiserainer
[email protected]
supject...Flat-Tax-Calculator
*/

public class flat {

	public static void main(String [] arga) { //start main
		
	
	
		//initialisierung der Variable für....
	
		double brutto = 0.0; //...den Bruttogehalt
		double soz = 0.0; //....den Sozialversicherungssatz
		double flat = 0.0; //...den Einkommesnsteuersatz
		double sozbeitr = 0.0; //....den Sozialversicherungsbeitrag
		double netto = 0.0; //.. das Nettogehalt
		double steuerpflicht = 0.0; //.. das Steuerpflichtige Einkommen
		double steuer = 0.0; //.. den Einkommenssteuerbetrag
		int z=1;	//inizialisierung der Abruchbedingung

	
		//Eingaben durch den Benutzer
		while(z>0) { //Abruchbedingung
	
			if (z==1) { //so lange Var. z==1 bleibt user in dieser Schleife 
				IO.write("Geben Sie ihr Bruttogehalt ein: "); //Eingabeaufforderung für Bruttogehalt
				brutto=IO.readDouble(); //einlesen der Variable brutto
				
				if (IO.correct()) {	//überprüft eingabe auf nummerischen Wert
				
					if (brutto > 0) { //wenn brutto größer Null
						
						z=2; //Abruchbedingung für erste Bedingung geht zu Zeile 48
			
					} else { //wenn die Eingabe nicht korrekt ist 
						IO.writeLn("kein realer Wert"); //Fehleraufgabe
					}//end if
					
				} else { //start else
					IO.flush(); //löscht Eingabepuffer
				}//end else
				
			} if ( z==2) { //solange Var. z==2 bleibt user in dieser Schleife
				IO.write("Geben Sie ihren Sozialversicherungsbeitrag in Prozent ein: "); //Eingabeaufforderung für Sozialversicherungsbetrag
				soz=IO.readDouble(); //Einlesen der Variable
				
				if (IO.correct()) {	//überprüft eingabe auf nummerischen Wert
				
					if (soz <=0 || soz>100) { //wenn die Var. soz kleiner gleich oder größer 100 ist
						IO.writeLn("kein realer Wert"); //dann Fehlerausgabe 
		
					} else // wenn nicht dann
						z=3; //Var. z mit dem Wert 3 belegen
					
				} else { // wenn IO.correct false ist dann 
					IO.flush(); //leeren des Eingabepuffers
			
				}//end if
				
			} if ( z==3) { //Wenn Var. z Wert 3 hat dann
				IO.write("Geben Sie ihre Flat-Tax in Prozent ein: "); //Eingabeaufforderung zur eingabe der Flat-Tax
				flat=IO.readDouble(); //speicheren der Var. flat
				
				if (IO.correct()) { //Überprüfung auf Nummerische Eingabe
				
					if (flat <=0 || flat >100) { //falls Var. flat kleiner gleich 0 oder größer 100 sein sollte 
						IO.writeLn("Kein realer Wert"); //fehlerausgabe
			
					} else //wenn nicht, 
						z=0; //Var. z auf Null setzen -> Abruchbedingung erreicht
			
				} else //wenn IO.correcht flase ausgibt, dann 
					IO.flush(); //Eingabepuffer leeren
			}//end if	
		
		}//ende von while
		
		//Berechnungen und Ausgaben der eingegeben Werte
		sozbeitr=brutto/100*soz; //Berechnung des Sozialversicherungsbeitrages
		IO.writeLn("Sozialversicherungsbeitrag:  " + sozbeitr + " EUR");	//Ausgabe
		
		steuerpflicht=brutto-sozbeitr; //Berechnung des Steuerpflichtigen Betrages
		IO.writeLn("Steuerpflichtiges Einkommen: " + steuerpflicht + " EUR"); // Ausgabe
		
		steuer=steuerpflicht/100*flat; //Berechnung des Einkommenssteuerbetrages 
		IO.writeLn("Einkommensteuer:             " + steuer + " EUR"); //Ausgabe
		
		netto=steuerpflicht-steuer; //Berechnung des Nettobetrages
		IO.writeLn("Netto:                       " + netto + " EUR"); //Ausgabe
	
	}//End main
} //End class

Die IO klassen die ich verwende gibts auf http://www.tk.uni-linz.ac.at/download/basicio_3.zip zum runterladen.
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Also bei mir funzt das alles bestens... das einzige was ich gemacht habe, was aber nix mit dem Progamm an sich zu tun hat ist, dass ich den Klassennamen von flat auf Flat geändert habe... sorry.. ich glaub da bin ich etwas kleinlich :)

Code:
ibook:# schonder$ javac Flat.java 
ibook:# schonder$ java Flat 
Geben Sie ihr Bruttogehalt ein: 100
Geben Sie ihren Sozialversicherungsbeitrag in Prozent ein: 10
Geben Sie ihre Flat-Tax in Prozent ein: 10
Sozialversicherungsbeitrag:  10.0 EUR
Steuerpflichtiges Einkommen: 90.0 EUR
Einkommensteuer:             9.0 EUR
Netto:                       81.0 EUR

Aber versuch doch mal statt IO.writeln() mal mit System.out.println() zu arbeiten.. also bei der Ausgabe.
 

dahead

Granny Smith
Registriert
28.10.06
Beiträge
15
Herzlichsten dank für den Denkanstoß.


In meinen IO Klassen waren zwar auf Mac optimiert, allerdings nicht auf UNIX.
Mit ein paar kleinen Änderungen funzt alles.

Fettes THX @ MatzeLoCal


dahead