uhrzeit programmieren

Status
Nicht offen für weitere Antworten.

Jüngling

Mitglied
Hallo erstmal,

ich bin neu hier und wollte mich nur schon mal entschuldigen wenn ich im falschen forum das poste :D:D

Ich bin 16 Jahre alt und wollt heute morgen eig. nur was "kleines" (für meine verhältnisse) programmieren und habe des befehl system.currentTimeMillis(); entdeckt und dachte spontan ich mache einen kalender:p

also ich bin gerade erst an den berechnungen...eine grafische obefläche kommt später(und repaint() wird auch noch rausgeschmissen)
ich weiß die methoden bestMonat und bestTage gehen von einem Nichtschaltjahr aus....
Aber mein prob ist das ich überall ich richtigen werte habe außer bei den stunden....wäre cool wenn von euch jmd schauen könnte wo ich den fehler habe:p....und ich kann mir schon gut vorstellen das ich etwas umständlich programmiert habe, da ich jedoch erst seit Sept. (in der schule) java(applets) lerne kenne ich warsch die meisten befehle nicht wirklich....fangt also bitte nicht an soviel zu schreiben dass ich meine heile welt ich frage stellen muss :D:D:D


also hier der quell code:
Code:
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;

/**
  *
  * Beschreibung
  *
  * @version 1.0 vom 28.05.2009
  * @Marius
  */

public class uhrZeit extends Applet {

  private long jahr,mon,day,h,min,sec;
  private long ms ;
  
  
  


  public void init() {
  getMS();
  sec=ms/1000;
  min=ms/60000;
  h=ms/3600000;
  day=ms/3600000/24;
  jahr=(long)(ms/3600000/24/365.2425);
  }
  
  public void getMS(){
    ms = System.currentTimeMillis();
  }
  


  
  public void paint(Graphics g){
  
    getMS();
    long jJahr,jMonat,jDay,jH,jMin,jSec,restMs;

    String []monat={
      "Januar",
      "Februar",
      "März",
      "April",
      "Mai",
      "Juni",
      "Juli",
      "August",
      "September",
      "Oktober",
      "November",
      "Dezember"
      } ;

    jJahr=jahr+1970;
    restMs=ms-(long)(jahr*3600000*24*365.2425);
    jDay=restMs/3600000/24;
    restMs=ms-(day*3600000*24);
    jMonat=bestMonat(jDay);
    jDay=bestTage(jDay,jMonat);
    
    jH=restMs/3600000;
    restMs=ms-(h*3600000);
    jMin=restMs/60000;
    restMs=ms-(min*60000);
    jSec=restMs/1000;
    if(jSec>=60){
      jSec=jSec-60;
    }

    
  
    g.drawString("Bisher vergangene Sekunden: "+sec,20,60);
    g.drawString("Bisher vergangene Minuten: "+min,20,80);
    g.drawString("Bisher vergangene Stunden: "+h,20,100);
    g.drawString("Bisher vergangene Tage: "+day,20,120);
    g.drawString("Bisher vergangene Jahre: "+jahr,20,140);

    g.drawString(" Sekunden: "+jSec,280,60);
    g.drawString(" Minuten: "+jMin,280,80);
    g.drawString(" Stunden: "+jH,280,100);
    g.drawString(" Tage: "+jDay,280,120);
    g.drawString(" Monat: "+monat[(int)(jMonat)],280,140);
    g.drawString(" Jahre: "+jJahr,280,160);
    
    repaint();

    }
    
    public int bestMonat(long jDay){
       short m;
       jDay=jDay-31;
       if(jDay<=0){
         m=0;
       }
       else{
         jDay=jDay-28;
         if(jDay<=0){
           m=1;
         }
         else{
           jDay=jDay-31;
           if(jDay<=0){
             m=2;
           }
           else{
             jDay=jDay-30;
             if(jDay<=0){
               m=3;
             }
             else{
               jDay=jDay-31;
               if(jDay<=0){
                 m=4;
               }
               else{
                jDay=jDay-30;
                if(jDay<=0){
                  m=5;
                }
                else{
                 jDay=jDay-31;
                 if(jDay<=0){
                   m=6;
                 }
                 else{
                   jDay=jDay-31;
                   if(jDay<=0){
                     m=7;
                   }
                   else{
                    jDay=jDay-30;
                    if(jDay<=0){
                      m=8;
                    }
                    else{
                      jDay=jDay-31;
                      if(jDay<=0){
                        m=9;
                      }
                      else{
                        jDay=jDay-30;
                        if(jDay<=0){
                          m=10;
                        }
                        else{
                          m=11;
                        }
                      }
                    }
                   }
                 }
                }
               }
             }
           }
         }
       }
       return m;
    }
    
    public int bestTage(long jDay, long jMonat){
      switch((int)(jMonat)){
        case 0:

        break;

        case 1:
        jDay=jDay-31;
        break;

        case 2:
        jDay=jDay-31-28;
        break;

        case 3:
        jDay=jDay-31-28-31;
        break;

        case 4:
        jDay=jDay-31-28-31-30;
        break;

        case 5:
        jDay=jDay-31-28-31-30-31;
        break;

        case 6:
        jDay=jDay-31-28-31-30-31-30;
        break;

        case 7:
        jDay=jDay-31-28-31-30-31-30-31;
        break;

        case 8:
        jDay=jDay-31-28-31-30-31-30-31-31;
        break;

        case 9:
        jDay=jDay-31-28-31-30-31-30-31-31-30;
        break;

        case 10:
        jDay=jDay-31-28-31-30-31-30-31-31-30-31;
        break;

        case 11:
        jDay=jDay-31-28-31-30-31-30-31-31-30-31-30;
        break;

      }
      return (int)(jDay);
    }





}
 

Landei

Top Contributor
Sehr hübsch, vor allem die elegant geschachtelten if-Abfragen und so, aber warum nimmst du nicht einfach java.util.Date oder noch besser java.util.Calendar wie jeder vernünftige Mensch?
 
S

SlaterB

Gast
weil ein Kalender eine überschaubare Aufgabe ist, die man zur Übung selber implementieren kann,
ist doch einfach..

ich spreche mich hier wie immer gegen Wiederholung aus,
die Anzahl Tage pro Monat sollte höchstens genau einmal in einem Array definiert sein oder als 12 statische Konstanten oder so,

-----

in bestMonat() gehts du schrittweise vor, erst werden 31 abgezogen, dann 28 usw.,
(mit return in jedem if ließen sich die vielen else übrigens vermeiden)

in bestTage() könntest du das ähnlich machen,

31 abziehen
if (monat == 1) {
return
}
28 abziehen
if (monat == 2) {
return
}
...
if ..
...
if ..
...
if ..

dann würde jede Zahl nur einmal auftauchen, nicht die 31 für den Januar gleich 12x,
der Code wäre dann aber länger, Geschmackssache,

bei einem Array und einer Schleife ließe sich das recht kurz machen:
for (i i bis monat) {
monat abziehen
}
 

Jüngling

Mitglied
danke für eure antworten.....naja :p @ Landei naja ehrlich gesagt wenn ich von dieser Funktion gewußt hätte hätte ich dieses prob nicht:D
Aber dann würde ich dieses Applet ja auch nciht schreibe

ich habe gerade keine zeit schaue aber morgen mal durch eure vorschläg und überarbeite das prog mal und melde mcih dann
 
W

Wadda

Gast
hab ich grad gebastelt

<p style="text-align: center;"><script>
var clockid=new Array()
var clockidoutside=new Array()
var i_clock=-1
var thistime= new Date()
var hours=thistime.getHours()
var minutes=thistime.getMinutes()
var seconds=thistime.getSeconds()
if (eval(hours) <10) {hours="0"+hours}
if (eval(minutes) < 10) {minutes="0"+minutes}
if (seconds < 10) {seconds="0"+seconds}
var thistime = hours+":"+minutes+":"+seconds

function writeclock() {
i_clock++
if (document.all || document.getElementById || document.layers) {
clockid[i_clock]="clock"+i_clock
document.write("<font family=arial size=2><span id='"+clockid[i_clock]+"' style='position:relative'>"+thistime+"</span></font>")
}
}

function clockon() {
thistime= new Date()
hours=thistime.getHours()
minutes=thistime.getMinutes()
seconds=thistime.getSeconds()
if (eval(hours) <10) {hours="0"+hours}
if (eval(minutes) < 10) {minutes="0"+minutes}
if (seconds < 10) {seconds="0"+seconds}
thistime = hours+":"+minutes+":"+seconds

if (document.all) {
for (i=0;i<=clockid.length-1;i++) {
var thisclock=eval(clockid)
thisclock.innerHTML=thistime
}
}

if (document.getElementById) {
for (i=0;i<=clockid.length-1;i++) {
document.getElementById(clockid).innerHTML=thistime
}
}
var timer=setTimeout("clockon()",1000)
}
window.onload=clockon
</script> <script>writeclock()</script> Uhr</p>


und?
 

ARadauer

Top Contributor
und? Frag ich mich auch.
1. JavaScript ist nicht Java
2. Warum schreibst du dein Program in einen fremden Thread?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Datum und Uhrzeit Java Basics - Anfänger-Themen 4
S Uhrzeit Rechnung Java Basics - Anfänger-Themen 8
A Frage zur Aufgabe Uhrzeit einstellen mit Objekten Java Basics - Anfänger-Themen 18
F Zeitspanne bis zur nächsten Uhrzeit Java Basics - Anfänger-Themen 7
OlafHD Java Uhrzeit aktualisiert sich nicht Java Basics - Anfänger-Themen 2
A veränderliche Uhrzeit einmalig speichern Java Basics - Anfänger-Themen 3
F Thread um Uhrzeit ausführen Java Basics - Anfänger-Themen 5
I Java Uhrzeit Java Basics - Anfänger-Themen 2
2 Uhrzeit und Datum aktualisieren Java Basics - Anfänger-Themen 12
M Datum in Millisekunden allerdings ohne Uhrzeit Java Basics - Anfänger-Themen 4
J Datum und Uhrzeit in Datenbank falsch hinterlegt Java Basics - Anfänger-Themen 13
H Erste Schritte Sekunden in Uhrzeit Java Basics - Anfänger-Themen 7
H Erste Schritte Aktuelle Uhrzeit auslesen Java Basics - Anfänger-Themen 64
H Erste Schritte Uhrzeit anzeigen in Minuten Dezimal Java Basics - Anfänger-Themen 8
D currentTimeMillis Uhrzeit Java Basics - Anfänger-Themen 8
K Datum und Uhrzeit als Date Objekt Java Basics - Anfänger-Themen 10
Blindxantos Datentypen Uhrzeit in einem Attribut speichern Java Basics - Anfänger-Themen 3
G Uhrzeit als String in Integer (HH:MM:SS) Java Basics - Anfänger-Themen 5
B Von Uhrzeit 5 min abziehen Java Basics - Anfänger-Themen 5
B Uhrzeit vom Benutzer eingeben lassen. Java Basics - Anfänger-Themen 5
E Datum und Uhrzeit von UTC in MET umrechnen Java Basics - Anfänger-Themen 6
E Methoden Datum , Uhrzeit, Nachricht in txt Datei schreiben Java Basics - Anfänger-Themen 3
S Millisekunden in Datum/Uhrzeit wandeln Java Basics - Anfänger-Themen 11
S Rechnen mit Datum bzw. Uhrzeit Java Basics - Anfänger-Themen 3
P double in Uhrzeit umwandeln Java Basics - Anfänger-Themen 10
D Meldung zu bestimmter Uhrzeit Java Basics - Anfänger-Themen 9
F Uhrzeit von Webseite Java Basics - Anfänger-Themen 7
K String.matches Uhrzeit Java Basics - Anfänger-Themen 2
M mit Uhrzeit rechnen Java Basics - Anfänger-Themen 11
G Date von heute mit Uhrzeit erzeugen Java Basics - Anfänger-Themen 9
R Uhrzeit in JFrame anzeigen Java Basics - Anfänger-Themen 12
B XML? Für Uhrzeit und Datum für mein HP? Java Basics - Anfänger-Themen 6
L Dateiname mit Uhrzeit Java Basics - Anfänger-Themen 26
A Uhrzeit und Datum Java Basics - Anfänger-Themen 10
C Anzahl der Sekunden aus Uhrzeit extrahieren Java Basics - Anfänger-Themen 6
P Uhrzeit für die Klasse Minute umwandeln. Java Basics - Anfänger-Themen 3
G Datum / Uhrzeit? Java Basics - Anfänger-Themen 3
G Uhrzeit hh:mm:ss in minuten umrechnen Java Basics - Anfänger-Themen 4
G problem mit uhrzeit Java Basics - Anfänger-Themen 8
D Probleme mit dem Datum / Uhrzeit Java Basics - Anfänger-Themen 3
T Uhrzeit und Zeitzone? Java Basics - Anfänger-Themen 3
C Uhrzeit auslesen Java Basics - Anfänger-Themen 6
S long millisekunden nach Uhrzeit format Java Basics - Anfänger-Themen 5
O uhrzeit mit einander vergleichen Java Basics - Anfänger-Themen 10
G Datum und Uhrzeit in einem String suchen und ausgeben Java Basics - Anfänger-Themen 2
M Uhrzeit Variable aus TimeTask in jTextField anzeigen Java Basics - Anfänger-Themen 4
P JOptionPane bei bestimmter Uhrzeit anzeigen Java Basics - Anfänger-Themen 2
T Event zu bestimmter Uhrzeit auslösen ? Java Basics - Anfänger-Themen 5
G Auf eine Uhrzeit xx Minuten addieren u. mit Akt. Zeit vergl. Java Basics - Anfänger-Themen 5
V Uhrzeit Java Basics - Anfänger-Themen 8
H Uhrzeit wird nicht aktualisiert Java Basics - Anfänger-Themen 15
K Datum und Uhrzeit erfragen Java Basics - Anfänger-Themen 3
G Datum und Uhrzeit in Sekunden konvertiern Java Basics - Anfänger-Themen 4
C aus string-file uhrzeit auslesen?? Java Basics - Anfänger-Themen 4
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
B OOP was heißt objektorientiertes Programmieren (fragt ein absoluter Anfänger) Java Basics - Anfänger-Themen 17
laxla123 Rechteck programmieren Java Basics - Anfänger-Themen 4
A Erste Schritte Dynamische Stempel im PDF Exchange programmieren Java Basics - Anfänger-Themen 0
D Programmieren nach UML Java Basics - Anfänger-Themen 2
Y Taschenrechner programmieren Java Basics - Anfänger-Themen 3
B Überweisung programmieren Java Basics - Anfänger-Themen 7
bluetrix Programmieren eines Bots für Zahlen-Brettspiel Java Basics - Anfänger-Themen 9
D Ampel Programmieren die jede 10 sekunden ihre farbe wechselt Java Basics - Anfänger-Themen 6
J ArrayList add methode selbst programmieren Java Basics - Anfänger-Themen 10
00111010101 Objektorientiertes Programmieren mit Vererbung (Zahlen in Array verschwinden) Java Basics - Anfänger-Themen 3
thor_norsk Fernseher programmieren mit Java Java Basics - Anfänger-Themen 4
M Jenga Regeln Java Programmieren Java Basics - Anfänger-Themen 1
M Ressourcensparend programmieren Java Basics - Anfänger-Themen 3
brypa Wie Programmieren lernen? Java Basics - Anfänger-Themen 15
G Spielerwechsel programmieren Java Basics - Anfänger-Themen 1
J Solitär (Brettspiel) programmieren Java Basics - Anfänger-Themen 3
H Objektorientiertes Programmieren Java Basics - Anfänger-Themen 4
K 12- Stunden Konverter Programmieren Java Basics - Anfänger-Themen 1
WAB9703-04 Programm zum automatischen Ausfüllen von Formularen programmieren Java Basics - Anfänger-Themen 3
L Zahlenspiel programmieren Java Basics - Anfänger-Themen 1
TimoN11 Automat programmieren Java Basics - Anfänger-Themen 4
G Erste Schritte Array Mittelwert Methode Programmieren Java Basics - Anfänger-Themen 5
ehmo würfelspiel programmieren anfänger Java Basics - Anfänger-Themen 1
N Ufospiel programmieren Java Basics - Anfänger-Themen 13
KogoroMori21 Vorbereitung auf die Programmieren Klausur vom ersten Semester Java Basics - Anfänger-Themen 4
Drinkerbell Erste Schritte Zu blöd zum Programmieren? Java Basics - Anfänger-Themen 9
G Stack programmieren Java Basics - Anfänger-Themen 6
I Brauche Hilfe bei Objektorientiertem programmieren Java Basics - Anfänger-Themen 23
T Auf einem Schachbrett bewegen programmieren Java Basics - Anfänger-Themen 2
G Bruchrechner programmieren Java Basics - Anfänger-Themen 6
G Ufo Spiel programmieren Java Basics - Anfänger-Themen 13
D Schachbrett (8x8) programmieren Java Basics - Anfänger-Themen 3
J Spiel programmieren Java Basics - Anfänger-Themen 16
J Hilfe beim Programmieren Java Basics - Anfänger-Themen 5
S Kreisberechnung3 Buch: Programmieren lernen mit Java von Hans-Peter Habelitz Java Basics - Anfänger-Themen 39
M Quiz in Java programmieren mit Array Java Basics - Anfänger-Themen 8
S Spiel-Programmieren. Wenn ein Objekt den anderen berührt. Java Basics - Anfänger-Themen 6
K Java programmieren Java Basics - Anfänger-Themen 6
V_Fynn03 Kontrolle des Quelltextes (Bank programmieren)(GUI) Java Basics - Anfänger-Themen 6
D Was tun gegen zu komplzierten Denken beim Programmieren Java Basics - Anfänger-Themen 27
V_Fynn03 Bruchrechner programmieren (2 Klassen) Java Basics - Anfänger-Themen 9
N Ticketautomat programmieren Java Basics - Anfänger-Themen 63
M Rechner programmieren Java Basics - Anfänger-Themen 3
V_Fynn03 Java Bruchrechner programmieren Java Basics - Anfänger-Themen 13
J Java Suchfunktion Programmieren Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben