Page 1 sur 1

[Ex] BiClock (mini)

Posté : ven. 22 févr. 2008 09:44
par MClaveau
'jour !

Le mode est aux horloges binaires.
Voici ma dernière, qui est toute mini.

Code : Tout sélectionner

Dim $bit[2]=["0","1"]
For $x=1 To 60
    sleep(990)
    ToolTip(nbbin(@HOUR) & nbbin(@MIN) & nbbin(@SEC), 10, 10)
Next

Func nbbin($nb)
    $bits = " "
    For $j = 5 To 0 Step -1
        $bits &= $bit[BitAND(Int($nb),2^$j)/2^$j]
    Next
    Return $bits & @CRLF
EndFunc

Re: BiClock (mini)

Posté : ven. 22 févr. 2008 10:02
par ani
Super :)
note : 10/10

me reste plus qu'a apprendre le binaire.
et la rendre fixe ^^

merci michel

Re: [Ex] BiClock (mini)

Posté : ven. 22 févr. 2008 12:14
par Ahbadiane
Merci Michel pour cet exemple, qui a défaut de me faire découvrir le binaire m'a fait découvrir la fonction ToolTip !

Re: [Ex] BiClock (mini)

Posté : dim. 24 févr. 2008 02:15
par ani
bonjour :)
la fonction ma telement plus que voilà :)
j'ai quand même du mal à lire l'heure ^^'

Code : Tout sélectionner

_Horloge()

Func bin($sNombre)
    Local $aBinaire[2]=["0","1"], $sBinaire= " "
    For $i = 5 To 0 Step -1
        $sBinaire &= $aBinaire[BitAND(Int($sNombre),2^$i)/2^$i] 
    Next
    Return $sBinaire 
EndFunc

Func _Horloge()
    While 1
        sleep(990)
        ToolTip(bin(@HOUR) & @CRLF & _
                bin(@MIN) & @CRLF & _
                bin(@SEC), 10, 10)
    WEnd
EndFunc

est-ce que vous auriez écrit de cette manière, je désire apprendre à coder proprement tout en comprenant (au la rîme)

le s devant les variables pour string, le a pour array .?

Re: [Ex] BiClock (mini)

Posté : dim. 24 févr. 2008 20:16
par tolf
Voici mon horloge, avec juste quelques modifications :

Code : Tout sélectionner

_Horloge()

Func bin($sNombre)
    Local $aBinaire[2]=["0","1"], $sBinaire= " "
    For $i = 5 To 0 Step -1
        $sBinaire &= $aBinaire[BitAND(Int($sNombre),2^$i)/2^$i] 
    Next
    Return $sBinaire 
EndFunc

Func _Horloge()
    $h = ""
    $min = ""
    $sec = ""
    While 1
        If $h <> @HOUR Or $min <> @MIN Or $sec <> @SEC Then ; <== remplace le sleep(990), c'est plus propre
            $h = @HOUR
            $min = @MIN
            $sec = @SEC
            ToolTip(bin($h) & "  " & $h & @CRLF & _ ; <== j'ai rajouté la vraie heure en base 60 à côté
                    bin($min) & "  " & $min & @CRLF & _
                    bin($sec) & "  " & $sec, 10, 10)
        EndIf
    WEnd
EndFunc

Re: [Ex] BiClock (mini)

Posté : mar. 04 mars 2008 16:22
par ani
merci tolf :)
C'est juste comme çà ?

Code : Tout sélectionner

Func _Horloge()
Local $h = "", $min = "", $sec = ""
While 1
    If $h <> @HOUR Or $min <> @MIN Or $sec <> @SEC Then
        Dim $h = @HOUR, $min = @MIN, $sec = @SEC
        ToolTip(bin($h) & "  " & $h & @CRLF & _ 
                bin($min) & "  " & $min & @CRLF & _
                bin($sec) & "  " & $sec, 10, 10)
    EndIf  
WEnd
EndFunc

Re: [Ex] BiClock (mini)

Posté : mar. 11 mars 2008 21:03
par tolf
ani a écrit :

Code : Tout sélectionner

       Dim $h = @HOUR, $min = @MIN, $sec = @SEC
Je pensais que Dim ne s'utilisait que pour des tableaux mais apparemment, ça marche aussi pour des variables classiques et ça permet de gagner des lignes, donc merci ani pour l'astuce :) !