AFFICHER L'HEURE ET LA DATE COURANTE [DEV-CPP] ...

Signaler
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003
-
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/10222-afficher-l-heure-et-la-date-courante-dev-cpp

Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

salut,
avec dev c++ #include <conio.c>
Messages postés
3
Date d'inscription
jeudi 6 août 2009
Statut
Membre
Dernière intervention
14 août 2009

bon j'utilise dev c++ 4.9.9.2
et il ne reconnai pas "sleep (1000);" peux tu me donner la biblio necessaire pour cette fonction.
dison que je suis nouveau avec c++.
cordiallement
Messages postés
3
Date d'inscription
dimanche 9 novembre 2008
Statut
Membre
Dernière intervention
7 décembre 2009

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
class Heure extends JFrame
{
private int heure,vraiHeure,min,seconde;
private int[] x2={200,209,217,225,233,240,248,254,260,265,270,
274,277,278,279,280,279,278,277,274,270,
265,260,254,248,240,233,225,217,209,200,
192,184,176,168,160,153,147,141,136,130,
127,124,122,121,120,121,122,124,127,130,
136,141,147,153,160,168,176,184,192};
private int[] y2={70,71,72,74,77,80,86,91,97,103,110,
118,126,134,142,150,159,167,175,183,190,
197,204,209,214,220,224,227,228,229,230,
229,228,227,224,220,214,209,204,197,190,
183,175,167,159,150,142,134,126,118,110,
103,97,91,86,80,77,74,72,71};
private int[] Tx2={195,240,270,280,270,240,195,155,125,115,120,150};
private int[] Ty2={70,80,110,155,195,225,240,225,195,155,115,80};
private int[] Hx2={200,207,213,220,225,230,236,240,244,247,248,249,
250,249,248,247,244,236,230,225,213,220,213,207,200,
194,188,181,175,170,165,161,157,154,152,151,150,151,
152,154,157,161,165,170,175,181,188,194};
private int[] Hy2={100,101,102,104,107,111,115,120,125,131,138,144,150,
157,163,170,175,181,186,190,194,197,198,199,200,
199,198,197,194,190,186,181,175,170,163,157,150,144,
138,131,125,120,115,111,107,104,102,101};
private final int x1 200,y1 150;
private boolean quar=true,demi=true,moinquar=true;

public Heure()
{
super("Heure");
setBounds(300,200,400,300);
Container con = getContentPane();
con.setLayout(null);
Date date = new Date();
System.out.println(Hx2.length);
System.out.println(Hy2.length);
setDefaultCloseOperation(this.EXIT_ON_CLOSE);
heure = date.getHours();
vraiHeure = heure;
if(heure > 12)
heure=(heure-=12)*4;
min = date.getMinutes();
seconde = date.getSeconds();
if(min >= 15 && min < 30)
{
heure++;
quar = false;
}
if(min >= 30 && min < 45)
{
heure+=2;
quar = false;
demi = false;
}
if(min >= 45)
{
heure+=3;
quar = false;
demi = false;
moinquar = false;
}
System.out.println(vraiHeure+":"+min+" "+seconde);
setVisible(true);
setResizable(false);
second();
}

public void paint(Graphics g)
{
g.clearRect(0,0,400,300);
g.setColor(Color.orange);
g.fillRect(100,50,200,200);
g.setColor(Color.white);
g.fillOval(100,50,200,200);
g.setColor(Color.green);
g.drawLine(x1,y1,x2[min],y2[min]);
g.drawLine(x1,y1,Hx2[heure],Hy2[heure]);
g.setColor(Color.red);
g.drawLine(x1,y1,x2[seconde],y2[seconde]);
g.setColor(Color.blue);
g.drawString("12",Tx2[0],Ty2[0]);
for(int i=1;i < 12;i++)
{
g.drawString(String.valueOf(i),Tx2[i],Ty2[i]);
}
g.setColor(Color.black);
if(seconde<10&&min<10)
g.drawString(vraiHeure+":0"+min+" 0"+seconde,180,270);
if(seconde>=10&&min<10)
g.drawString(vraiHeure+":0"+min+" "+seconde,180,270);
if(seconde<10&&min>=10)
g.drawString(vraiHeure+":"+min+" 0"+seconde,180,270);
if(seconde>=10&&min>=10)
g.drawString(vraiHeure+":"+min+" "+seconde,180,270);
}

private void second()
{
Thread sec = new Thread();
while(true)
{
try
{
sec.sleep(1000);
}catch(Exception err)
{
}
if(seconde==59)
{
seconde = 0;
if(min==59)
{
min = 0;
if(heure==48)
{
heure = 0;
vraiHeure = 0;
}
else
{
heure++;
vraiHeure++;
}
quar=true;
demi=true;
moinquar=true;
}
else
min++;
}
else
seconde++;
if(min >= 15 && min < 30 && quar)
{
heure++;
quar = false;
}
if(min >= 30 && min < 45 && demi)
{
heure++;
demi = false;
}
if(min >= 45 && moinquar)
{
heure++;
moinquar = false;
}
repaint();
}
}

public static void main(String[] args)
{
new Heure();
}
}
Messages postés
6
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
13 avril 2007

Tu aurais pu mettre :

printf("La date et l\'heure sont: %s \r", ctime(&temps_act));

à la place de system("CLS");

Merci pour le code ;-).
Messages postés
408
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
18 décembre 2012

merci mais pas tlm peut comprendre system ("CLS"); t'aurai du mettrer un peu plus de commentaires utiles sinon, merci a toi
Messages postés
59
Date d'inscription
lundi 31 décembre 2001
Statut
Membre
Dernière intervention
11 mai 2006

Ouai, si on veut, .... le but de la source était juste de montrer la commande qui affiche l'heure et la date, mais tes remarques sont pertinantes !!!
Merci.
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

salut,
pourquoi mettre sleep ? execute le sans c'est tout aussi bien et en retirant system("cls"); de la boucle while(1) tant qu'elle est vraie le programme continue on risque de ne pas sortir proprement, utilise un kbhit conio.c pour ton compilateur