"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Zeitausgabe

Friedel 30.08.2007 - 02:38 4288 28 Thread rating
Posts

Friedel

Dr. Umbringer
Avatar
Registered: Apr 2002
Location: Ruhrpott
Posts: 1452
Hi,

hab' von coden und sowas _absolut keine Ahnung, hätte aber gerne eine .bat-Datei(oder wie man sowas auch immer realisiert?), mit der ich die aktuelle Zeit+17.5h angezeigt bekomme. (Win XP)
Also ->klick=Zeitausgabe.

Kann mir da wer helfen?
:)
Bearbeitet von Friedel am 01.09.2007, 02:35

sensei

die Küstenwache?
Avatar
Registered: Dec 2000
Location: Bad Schlotterbac..
Posts: 709
falls html auch geht:
Code:
<head>
  <script type="text/javascript">
    function loadTime() {
      var date = new Date();
      date.setHours(date.getHours() +17);
      date.setMinutes(date.getMinutes() + 30);
      var hours = date.getHours();			
      var minutes = date.getMinutes();
      if(hours < 10) {hours = "0" + hours;}
      if(minutes < 10) {minutes = "0" + minutes;}
      document.getElementById("time").innerHTML = "";
      document.getElementById("time").innerHTML = hours + ":" + minutes;
     }
  </script>
</head>
<body onload="loadTime();">
   <div id="time"></div>
</body>

einfach als irgendwas.html abspeichern und doppelklickn...
edit: die einrückungen mag er irgendwie ned :/
edit: upsi, danke JC
Bearbeitet von sensei am 30.08.2007, 10:34 (deshalb gibts code-tags ;))

DKCH

...
Registered: Aug 2002
Location: #
Posts: 3279
edit: geistige umnachtung :D

Friedel

Dr. Umbringer
Avatar
Registered: Apr 2002
Location: Ruhrpott
Posts: 1452
Super, danke!
:)

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
Unter CygWin bzw. GNU/Linux:
Code:
date -d @$(echo $(($(date +%s) + 63000)))

semteX

begehrt die rostschaufel
Avatar
Registered: Oct 2002
Location: Pre
Posts: 14593
colos lösung flashed mich so, super :D ich hab nicht den funken einer ahnung, was das ding tut :D

die vom sensei ist auch fein, allerdings gehört a für innerhtml eigentlich a daumen abgehackt gehört

Nico

former person of interest
Registered: Sep 2006
Location: -
Posts: 4082
output: "Fri Aug 31 12:37:44 CEST 2007"

Marcellus

OC Addicted
Avatar
Registered: Mar 2005
Location: ~
Posts: 1755
@semtex

man date
Zitat
...
-d, --date=STRING
display time described by STRING, not `now'
...

dan holt er sich noch das aktuelle datum daher und rechnet 63000s=17.5h dazu und lässt es vom ersten ausdruck zu einem formatierten string zusammenwursten. Sehr elegante lösung, drauf wär ich nie gekommen, du kannst übrigens noch mit dem für date üblichen format string angeben wie das ganze ausgegeben werden soll.

@ontopic ich würd das ganze so machen auf windows

Code:
#include<time.h>
#include<stdio.h>

int main(void)
{
        time_t  zeit=time(NULL);
        int     minute=(*(localtime(&zeit))).tm_min+30;
        int     stunde=(*(localtime(&zeit))).tm_hour+17;
        if(minute>=60)
        {
                minute-=60;
                stunde+=1;
        }
        printf("Es ist jetzt %i:%i, blubb!\n",stunde%24, minute);
        getchar();
        return 0;
}

Wobei ich jetzt kein windows herumliegen hab zum compilieren, aber ich glaub das kreigst du schon gebacken. http://bloodshed-dev-c.en.softonic.com/

Die variante vom colo ist trotzdem schöner, bei meiner musst noch herumpfuschen, wenn du sekunden usw auch noch haben willst. :rolleyes:
Bearbeitet von Marcellus am 31.08.2007, 01:33

Burschi1620

24/7 Santa Claus
Avatar
Registered: Apr 2004
Location: Drüber da Donau
Posts: 6792
kannst du mir dein programm bitte erklären? :D

Des programm wirds dir mit einer normalen exe im windows vermutlich schließen -> vorm return 0; ein system("pause");

Marcellus

OC Addicted
Avatar
Registered: Mar 2005
Location: ~
Posts: 1755
kannst auch ein getchar() einbauen, wenns dir spaß macht, ich hab eine shell hier und hab nicht drauf geachtet.

Ich hab selber nur irgendwas aus time.h zusammengestöpselt, bis es sich annehmbar verhalten hat.

Im großen und ganzen hast du time_t zeit, das ist dein zeit datentyp, in sekunden seit ich glaub dem 1. november 1970. Localtime ist ansich nur eine funktion vom datentyp tm das dir ein time_t auf lesbare zeiten aufteilen kann.

Ich hab halt auf jetzt initialisiert, um die 17,5 h inkrementiert und dann das ganze in die ints minute und stunde aufgeteilt.

Die if kommt zum tragen, wenn du zb nach der 30 minute probierst 30 min dazuzuzählen, dem int ists egal, obs gerade als minute herhalten muss, deswegen schau ich ob minuten größer, oder gleich sind als 60, wenn das der fall ist haben wir eine volle stunde, da fahr ich mit dem modulo 60 über die minuten drüber und inkrementier die stunden um 1.

Aber stimmt, ansich wär ein - statt dem % angebrachter und ich hab noch vergessen die stunden auf 24 abzuzwacken.

edit:Und nein ich werd sicher nicht system("pause") verwenden, ich sitz hier auf einem linux kistl und ich werd mir sicher nicht mein eigenes grab schaufeln.
Bearbeitet von Marcellus am 31.08.2007, 01:34

Burschi1620

24/7 Santa Claus
Avatar
Registered: Apr 2004
Location: Drüber da Donau
Posts: 6792
#include<conio.h>

somit würde man sich eine komplette bibliothek bei windows sparen ;) (und bei dem programm speziell)

Aber das .tm_min und .tm_hour versteh ich leider noch net so recht. :(
Soll das eine funktion sein? Ne, da fehlen parameter. Eine variable?
Ich kenn in C nur structe die punkte verwenden. Also struktname.variablenname

edit: ah, hab selbst bissl rechachiert. das tm_min und tm_hour sind struct variablen :)
Jetzt müsste alles klar sein :)
Bearbeitet von Burschi1620 am 31.08.2007, 01:40

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
wie wäre es wenn du in zukunft desöfteren mal "rechachierst"? nachdem die qualität deiner posts in der letzten zeit wieder mal im keller ist - und damit meine ich nicht, dass sie jemals wirklich nicht dort waren - könntest du dich bemühen und andere poster, die ahnung haben nicht mit blödsinn überhäufen.

system("pause") :bash:

Burschi1620

24/7 Santa Claus
Avatar
Registered: Apr 2004
Location: Drüber da Donau
Posts: 6792
Zitat von mat
wie wäre es wenn du in zukunft desöfteren mal "rechachierst"? nachdem die qualität deiner posts in der letzten zeit wieder mal im keller ist - und damit meine ich nicht, dass sie jemals wirklich nicht dort waren - könntest du dich bemühen und andere poster, die ahnung haben nicht mit blödsinn überhäufen.

system("pause") :bash:
zum glück ist dieses forum ja NICHT zum helfen da, oder? :bash:
Anstatt zu flamen könntest du mir mal erklären warum system("pause") so ein extremes no-go ist.
Ich hatte bei meinen kleinen programmen auf windows platformen nie probleme damit. Bevor ich mir ne bibliothek reinlad verwend ich einfach den befehl, bei dem kleinen programm ists doch eh egal?!

Sorry wenn diese frage für dich anscheinend auf "Qualle" niveau ist, aber deine hilfsbereitschaft war auch schonmal besser :mad:

Marcellus

OC Addicted
Avatar
Registered: Mar 2005
Location: ~
Posts: 1755
Ich bin jetzt von getch() auf getchar() übergegangen. Das sollte in stdio.h sein auch in windows.

@mat meinst du mich? Ich weis, dass das programm ziemlich hässlich ist, aber ich wollt nur schnell was zusammenschustern.

Burschi1620

24/7 Santa Claus
Avatar
Registered: Apr 2004
Location: Drüber da Donau
Posts: 6792
Zitat von Marcellus
Ich bin jetzt von getch() auf getchar() übergegangen. Das sollte in stdio.h sein auch in windows.

@mat meinst du mich? Ich weis, dass das programm ziemlich hässlich ist, aber ich wollt nur schnell was zusammenschustern.
keine sorge, er meint mich :)

kannst du mir vielleicht nun endlich mal erklären warum system("pause"); so verrufen ist?
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz