kostenloser Webspace werbefrei: lima-city


Zeit ausrechnen Java Eclipse

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    Hallo !

    Ich habe eben ein kleines Programm geschrieben, zum Ausrechnen von Stunden, Minuten, Sekunden auf der Autobahn.

    Mein Programm sieht so aus:

    package sequenz;
    
    import java.io.IOException;
    
    import support.Console;
    
    public class Navigationsprogramm2 {
    
    	/**
    	 * @param args
    	 * @throws IOException 
    	 */
    	public static void main(String[] args) throws IOException {
    		// TODO Auto-generated method stub
    		
            // Deklaration
    		
    		int mA, mL, mS
    		int h, m, s;
    		int tA, tL, tS, tG;
    		double dA, dL, dS, dG;
    		final double VA= 110;
    		final double VL= 70;
    		final double VS= 30;
    		
    		
    		//Eingabe
    		
    		Console.print("Distanz der Autobahn= ");
    		dA=Console.readDouble();
    		Console.print("Distanz der Landstraße= ");
    		dL=Console.readDouble();
    		Console.print("Distanz in der Stadt= ");
    		dS=Console.readDouble();
    		
    		//Verarbeitung
    
    		dG=dA+dL+dS;
    		
    		tA= (int) (dA*1000/VA*3.6);
    		tL= (int) (dL*1000/VL*3.6);
    		tS= (int) (dS*1000/VS*3.6);
    		
    		tG= (int) (tA+tL+tS);
    		
    		//Ausgabe
    
    		Console.println("Gesamte Streckenlänge= "+dG);
    		Console.println("Zeitdauer auf der Autobahn= "+tA);
    		Console.println("Zeitdauer auf der Landstraße= "+tL);
    		Console.println("Zeitdauer in der Stadt= "+tS);
    		Console.println("Gesamtzeit für die Wegstrecke= "+tG);
    		
    			}
    
    		}


    In den Variablen tA, tL und tS sind die jeweiligen Sekunden gespeichert.
    Ich muss aus den Sekunden die Stunden, Minuten und Sekunden unten bei der Ausgabe unter "Zeitdauer" ausgeben.

    Wie kann ich aus den Sekunden die h:m:s ausgeben?
    Bei der "Zeitdauer auf der Autobahn" sollte die Ausgabe 0:27:16 sein.

    Ich arbeite mit Eclipse.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Wo ist jetzt genau das Problem? Weißt du nicht, wie man einen Wert in der Form "h:m:s" ausgeben kann? Bitte beschränke dich auf dein eigentliches Problem, wenn du eine Frage hast, weil es sonst deutlich länger dauert, bis man endlich versteht, wo etwas nicht funktioniert.

    System.out.println( stunden + ":" + minuten + ":" + sekunden );


    Und ein Packet "support" gibt es auf meinem System nicht. Habt ihr das von eurem Lehrer bekommen?

    Wenn du generell Probleme hast, die Aufgabe zu lösen, schreibe bitte die eigentliche Aufgabe auf und erkläre wo deine Verständnisschwierigkeiten sind.

    Und falls du Zeit findest, such dir mal nen Editor mit Syntax-Highlighting für Java und compiliere dir deine Programme auf der Kommandozeile. Eclipse ist für dich Overkill.

    Beitrag zuletzt geändert: 23.9.2011 20:18:49 von bladehunter
  4. Moin,

    versuch's mal damit:
    public static void main(String[] args) {
            double t = 1636.0;
            double h = Math.floor(t / 3600);
            double m = Math.floor((t % 3600) / 60);
            double s = Math.floor(t % 60);
    
            System.out.println((int)h + ":" + (int)m + ":" + (int)s);
    }
    Sieht zwar unschön aus, aber das fiel mir auf die Schnelle ein :-P

    Gruss,
    Pawnee

    Beitrag zuletzt geändert: 23.9.2011 20:26:58 von pawnee
  5. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    bladehunter schrieb:
    Wo ist jetzt genau das Problem? Weißt du nicht, wie man einen Wert in der Form "h:m:s" ausgeben kann? Bitte beschränke dich auf dein eigentliches Problem, wenn du eine Frage hast, weil es sonst deutlich länger dauert, bis man endlich versteht, wo etwas nicht funktioniert.

    System.out.println( stunden + ":" + minuten + ":" + sekunden );


    Und ein Packet "support" gibt es auf meinem System nicht. Habt ihr das von eurem Lehrer bekommen?

    Wenn du generell Probleme hast, die Aufgabe zu lösen, schreibe bitte die eigentliche Aufgabe auf und erkläre wo deine Verständnisschwierigkeiten sind.

    Und falls du Zeit findest, such dir mal nen Editor mit Syntax-Highlighting für Java und compiliere dir deine Programme auf der Kommandozeile. Eclipse ist für dich Overkill.


    Danke für deine Antwort !

    Ja, das support Packet haben wir vom Lehrer bekommen. Ich werde es so mal probieren.

    EDIT: Ich habe aus deiner Zeile das hier gemacht:
    Console.println("Zeitdauer auf der Autobahn= " hA + ":" + mA + ":" + sA );

    Da ist aber ein Fehler drin, oder?
    hA sind Stunden, mA sind Minuten und sA Sekunden ;)

    Beitrag zuletzt geändert: 23.9.2011 20:34:18 von davy
  6. Da fehlt noch ein Pluszeichen. Ich verrate aber nicht wo.

  7. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    bladehunter schrieb:
    Da fehlt noch ein Pluszeichen. Ich verrate aber nicht wo.



    Ich hab´s gefunden. So musste es sein:

    Console.println("Zeitdauer auf der Autobahn= " + hA + ":" + mA + ":" + tA );


    Wenn ich jetzt tA ausgebe, gibt er mir 1636 aus, das sind die Sekunden. Aber ich habe ja schon Stunden und Minuten ausgegeben. Wie kann ich nur die Sekunden ausgeben, die noch fehlen? Also in diesem Fall 16 Sekunden?

    Meine jetzige Ausgabe ist:
    Zeitdauer auf der Autobahn= 0:27:1636


    Es soll aber da stehen:

    Zeitdauer auf der Autobahn= 0:27:16


    Verstehst du, was ich meine?
  8. Juche ... eine Schnitzeljagd nach den Fehlern!
    Das ist ja mal eine spannende Angelegenheit :D

    Edit:

    davy ... was haben 1636 und 16 Sekunden denn gemeinsam?
    Richtig, sie bilden die Ausgangssekunden und jene Sekunden die man erhält, wenn man von 1636 die 27 Minuten (in Sekunden umgerechnet) abzieht.

    Beitrag zuletzt geändert: 23.9.2011 21:00:02 von pawnee
  9. Autor dieses Themas

    davy

    Kostenloser Webspace von davy

    davy hat kostenlosen Webspace.

    pawnee schrieb:
    Juche ... eine Schnitzeljagd nach den Fehlern!
    Das ist ja mal eine spannende Angelegenheit :D

    Edit:

    davy ... was haben 1636 und 16 Sekunden denn gemeinsam?
    Richtig, sie bilden die Ausgangssekunden und jene Sekunden die man erhält, wenn man von 1636 die 27 Minuten (in Sekunden umgerechnet) abzieht.


    Achso, also ich muss die Sekunden von 27 Minuten abziehen. Ok, ich versuche es.

    Beitrag zuletzt geändert: 23.9.2011 21:22:56 von davy
  10. Bei einer Schnitzeljagdpause greifst du in deine Tasche, du findest einen dir unbekannten Zettel vor. Auf dem Papier steht:

    1636 % 60 = ?

    Was sollen nur diese merkwürdigen Zeichen bedeuten?

    Beitrag zuletzt geändert: 23.9.2011 23:18:02 von milchreis
  11. Hi,
    dies ist der Modulo Operator.
    (deutsch REST)
    Z.B. 3/2=1,5 teilt sich also 1mal und hat einen Rest 1
    => 3%2= 1

    Edit: Trotzdem würde ich mal im "Support" (Klasse) schaun. Da Modulo und Zahlenringe erst sehr spät erforderlich sind.

    Beitrag zuletzt geändert: 25.9.2011 16:56:58 von snix
  12. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!