Gambas France BETA


Pas de compte ? Incription

simplifier ce code...

Ce sujet est résolu.

1
AuteurMessages
spheris#1 Posté le 21/11/2021 à 11:04:20
Bonjour,
Comment simplifier ce code ci dessous :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
DIM z AS BYTE
SELECT CASE Minute(Now)
CASE 0 TO 9
z = 0
CASE 10 TO 19
z = 1
CASE 20 TO 29
z = 2
CASE 30 TO 39
z = 3
CASE 40 TO 49
z = 4
CASE 50 TO 59
z = 5
END SELECT


merci pour votre réponse.

edition :

J'ai trouvé:

1
2
3
4
5
IF Minute(Now) < 10 THEN
z = "0"
ELSE
z = Left(Str(Minute(Now)), 1)
ENDIF
linuxos#2 Posté le 21/11/2021 à 16:29:39
Un peu de sel, de poivre et la crevette sera... Bonjour Spheris,

Regarde la commande 'DIV' de Gambas, je pense que c'est ta solution

Il y a aussi: MOD comme commande.

Olivier
Lorsqu'on s'occupe d'informatique, il faut faire comme les canards... Paraître calme en surface et pédaler comme un forcené par en dessous.
spheris#3 Posté le 22/11/2021 à 12:28:39
Exact DIV correspond à ma recherche.
Toutefois ma boucle IF va plus vite.
Quant à MOD, à part de l'utiliser en simple rebouclage,
1
F=(F+1) MOD 3 'par exemple


Je ne vois pas trop son utilité.
Comment l'utilises-tu?
linuxos#4 Posté le 22/11/2021 à 13:38:57
Un peu de sel, de poivre et la crevette sera... En fait DIV donne le nombre de fois qu'un nombre existe dans un chiffre: Ex: 35 DIV 10 => 3, 57 DIV 10 => 5, etc

et MOD tu donnes le reste d'une division: Ex: 35 MOD 10 => 5, 57 MOD 10 => 7, 29 DIV 9 => 2, etc...

Voila
Lorsqu'on s'occupe d'informatique, il faut faire comme les canards... Paraître calme en surface et pédaler comme un forcené par en dessous.
spheris#5 Posté le 25/11/2021 à 22:03:58
Merci, problème réglé!!
1