Hallo erstmal,
ich bin neu hier und wollte mich nur schon mal entschuldigen wenn ich im falschen forum das poste
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
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....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
also hier der quell code:
ich bin neu hier und wollte mich nur schon mal entschuldigen wenn ich im falschen forum das poste
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
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....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
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);
}
}