Explication programmation basic

Résolu
zoid54 -  
ouhnia01 Messages postés 7 Statut Membre -
bonjour j'ai un petit probleme de compréhention de quelques lignes de code. Pouvez vous m'expliquer (et / ou essayer de l'optimiser?):

Rem ********* tempo de 0 D 1000 cycle => la sortie = 1 ******


If i% <= 1000 Then
var_cycle@=1
i%=i%+1
EndIf


Rem ********* tempo de 1000 D 2000 cycle => la sortie = 0 ****

If i% > 1000 Then
var_cycle@=0
i%=i%+1
EndIf


Rem ************* rAinitialisation de la var du cycle **********

If i% >= 2000 Then
i%=0
EndIf

merci d'avance
A voir également:

4 réponses

mamiemando Messages postés 34209 Date d'inscription   Statut Modérateur Dernière intervention   7 896
 
Alors je ne suis pas spécialiste du basic mais il me semblerait plus logique de faire des boucles for. Si j'ai bien compris la syntaxe, le premier bloc compte de 1 à 1000 et met 1 dans var_cycle. Le second bloc compte de 1001 à ... ah bah tiens en fait ça boucle à l'infini :) et met 0 dans var_cycle. Enfin le dernier bloc bascule le compteur à 0 si celui-ci depasse 2000.

J'imagine que le but c'est de renvoyer une sorte de signal rectangulaire à valeur dans 0-1 de periode 2000 et qui change d'état toutes les 1000 unités de temps.

Moi je pense que tu devrais plutôt faire une fonction qui te pourrais te donner pour chaque unité de temps la valeur du signal. En C, sachant que l'opérateur modulo s'écrit %, ca donnerait un truc du genre :
int signal(int t){
  int t0 = t % 2000;
  if (t <1000) return 1;
  else return 0;
}

int main(){
  int t,tmax = 10000;
  int valeur_cycle;
  // je simule de t = 0 à t = tmax = 10000
  for(t=0;t<tmax;++t){
     valeur_cycle = signal(t);
     //...
  }
  return 0; // fin du programme
}

Voilà désolée de t'écrire ça en C mais c'est juste pour que ut vois l'dée car je ne connais pas la syntaxe basic.

Bonne chance
0
zoid54
 
ok merci je vais essayer!! mais c pas évident!! lol
0
phiphi8 Messages postés 10 Statut Membre 1
 
Où diable peut-on trouver MS Basic ?????
-1
phiphi8 Messages postés 10 Statut Membre 1
 
Je pense que duvrais un 'print' devant le I%. Au moins tu aurais l'affichage de la vraible
-1
ouhnia01 Messages postés 7 Statut Membre
 
bonjour, est ce que je ne peux avoir un résumé de la syntaxe avnt de commencer .merci
-1