Stephan Bahr: Uhrzeiten

Hallo,

ich soll ein C-Programm schreiben, dem zwei Uhrzeiten im Format hh:mm:ss übergeben werden. Als Antwort wird eine Zeitangabe im gleichen Format ( hh:mm:ss ) erwartet, welche die Differenz zwischen den beiden Eingaben darstellen soll. Also :

Zeit 1   : 11:29:54
Zeit 2   : 12:43:21
Ergebnis : 01:13:27

Ich brauche die Lösung schnell ( vor 14:00 Uhr ). Also wenn sie einer kennt : BITTE SCHNELL HER DAMIT : stephan.bahr@condea.de

Tnx !!!

  1. Hallo Stephan,

    ich soll ein C-Programm schreiben, dem zwei Uhrzeiten im Format hh:mm:ss übergeben werden. Als Antwort wird eine Zeitangabe im gleichen Format ( hh:mm:ss ) erwartet, welche die Differenz zwischen den beiden Eingaben darstellen soll. Also :
    Zeit 1   : 11:29:54
    Zeit 2   : 12:43:21

    Ein Lösungsvorschlag von mir ist, die Zeitangaben in Sekunden umzurechnen, voneinander abzuziehen, und wieder in das gesuchte Format umzuwandeln.

    Zeit1 in sek = 11 * 3600 + 29 * 60 + 54 = 41394
    Zeit2 in sek = 12 * 3600 + 43 * 60 + 21 = 45801
    Zeitdifferenz = 45801 - 41394 = 4407

    Rückwandlung: mit Integerdivision und Modulo
    4407 / 3600 = 1  // Stunden
    4407 mod 3600 = 807 // Restsekunden
    807 / 60 = 13  // Minuten
    807 mod 60 = 27 // Sekunden

    Ich brauche die Lösung schnell ( vor 14:00 Uhr ). Also wenn sie einer kennt : BITTE SCHNELL HER DAMIT : stephan.bahr@condea.de

    Auch wenn schreien hier nichts hilft, hoffe ich, daß Du nochmal vor 14:00 Uhr hier vorbei schaust ;-)

    Gruß Alex

    P.S.: Programmieren musst Du schon selber

  2. Hi Stephan!

    Ich brauche die Lösung schnell ( vor 14:00 Uhr ). Also wenn sie einer kennt : BITTE SCHNELL HER DAMIT : stephan.bahr@condea.de

    nein sicher nicht.
    1. wir sind hier keine leute die anderen einen source schreiben - deine art ist aufdringlich, provozierend und ... (ich sag jetzt nicht alles was ich mir denke...)
    2. was deine postings angeht: sie sind allesamt hingerotzt und helfen keinen der fragend weiter - ich weiss nicht wo du sonst verkehrst - aber bei uns ist das nicht so ueblich - qualtitaet statt quantitaet - haettest du ein posting anstaendig und anstand beantwortet, haette das in summer mehr gebracht - vielelicht solltest du dir vor den nachsten fragen die FAQ geben (da steht auch unteranderen drinnen - das solche fragen hier ausruecklich nicht gewuenscht sind)

    apropos - warum glaubst du das es eine postingbeschraenkung von min. 3 zeichen gibt? sicher nicht das du "ja." reinschreibst!

    CU Roman

  3. Hi Stephan,

    schau dir mal die C-Funktion difftime an. Ansonsten verweise ich auf die Antwort von Roman.

    Gruß,
    Martin

  4. nein
    <83320.html>
    <83321.html>
    <83322.html>
    <83324.html>

  5. hmmm... also ich kann das problem nur in java lösen... aber c ist ja eigentlich so ähnlich also allgemein:

    daten in strings umwandeln...

    tokenizer mit doppelpunkten auf die strings setzen, oder auf eine andere art und weise die drei teile hh, mm, ss der strings herausfinden...

    jeden teil in int umwandeln... weil ja ganzzahlig und relativ klein

    int hh2 - int hh1

    int mm2 - int mm1

    int ss2 - int ss1

    überlauf beachten, wenn die differenz negativ wird

    mit differenzen das neue datum erzeugen