Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2269 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Aide sur fonction Delai

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aide sur fonction Delai

n°1450471
yakameca
Posté le 01-10-2006 à 18:30:10  profilanswer
 

Pouvez vous m'aider sur un petit probleme en langage C.
 

Citation :

# define N3000  
Void delai (int p)
{
unsigned int temp = 0;
while (p--) while (--temp%N);
}


 
donc j'en es deduit,
 
fonction delai
{ declaration et initialisation d'un entier non signé propre à la fonction delai
tant que p n'est pas egale à 1, decrementer p
decrementation de temp
tant que le reste de la division de temp divisé par N est different de 1 tourner a gauche  
}
 
 
Voilà pouvez vous me corrigé merci ;)

Message cité 2 fois
Message édité par yakameca le 01-10-2006 à 18:30:36
mood
Publicité
Posté le 01-10-2006 à 18:30:10  profilanswer
 

n°1450474
KangOl
Profil : pointeur
Posté le 01-10-2006 à 18:44:52  profilanswer
 

c'est quoi cette fonction ignoble [:pingouino] ?

n°1450475
slash33
Posté le 01-10-2006 à 18:47:17  profilanswer
 

surtout le double while. Quelqu'un y comprend quelque chose ?

n°1450477
KangOl
Profil : pointeur
Posté le 01-10-2006 à 18:50:20  profilanswer
 

bha il se base sur le cycle processeur pour sa sortie de boucle...
franchement intelligent ...

n°1450480
Emmanuel D​elahaye
C is a sharp tool
Posté le 01-10-2006 à 19:04:00  profilanswer
 

yakameca a écrit :


Code :
  1. # define N3000
  2. Void delai (int p)
  3. {
  4.    unsigned int temp = 0;
  5.    while (p--)
  6.       while (--temp%N);
  7. }



J'espère que tu n'as pas écrit cette abomination... Renseigne toi sur sleep(), nanosleep() (Unixoide) ou Sleep() (Windows).
 
C'est pas Void, mais void...


Message édité par Emmanuel Delahaye le 01-10-2006 à 19:05:43

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1450495
Elmoricq
Modérateur
Posté le 01-10-2006 à 19:42:55  profilanswer
 

KangOl a écrit :

bha il se base sur le cycle processeur pour sa sortie de boucle...
franchement intelligent ...


Euh, arrêtez-moi si je dis une bétise, mais je pense qu'en plus l'optimiseur aura vite fait de supprimer tout ça. :o

n°1450503
Emmanuel D​elahaye
C is a sharp tool
Posté le 01-10-2006 à 20:13:52  profilanswer
 

Elmoricq a écrit :

Euh, arrêtez-moi si je dis une bétise, mais je pense qu'en plus l'optimiseur aura vite fait de supprimer tout ça. :o


C'est tout à fait possible. Il faudra du 'volatile' pour empêcher ça...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1450522
Trap D
Posté le 01-10-2006 à 21:22:03  profilanswer
 

yakameca a écrit :

Pouvez vous m'aider sur un petit probleme en langage C.
 

Citation :

# define N3000  
Void delai (int p)
{
unsigned int temp = 0;
while (p--) while (--temp%N);
}


 
donc j'en es deduit,
 
fonction delai
{ declaration et initialisation d'un entier non signé propre à la fonction delai
tant que p n'est pas egale à 1, decrementer p
decrementation de temp
tant que le reste de la division de temp divisé par N est different de 1 tourner a gauche  
}
 
 
Voilà pouvez vous me corrigé merci ;)

D'abord tu as une erreur, il faut laisser un espace entre N et 3000 sinon, ça ne passe pas à la compile

Citation :

{ declaration et initialisation d'un entier non signé propre à la fonction delai


Ça OK,
 

Citation :

tant que p n'est pas egale à 1, decrementer p

Faux, tant que p n'est pas égal à 0, on décrémente ensuite.
 

Citation :

tant que le reste de la division de temp divisé par N est different de 1

Faux, l'opérateur -- précède l'opérateur %, on décremente temp d'abord puis on prend le modulo N de temp et s'il est égal à 0 on sort de la boucle.  
C'est volontairement mal écrit, c'est le genre d'exercice pour faire croire qu'on connaît le C alors que ça n'a rien à voir. Ce n'est pas parce qu'on ne fait pas de fautes de grammaire qu'on sait écrire en Français correct.
Ce qui se conçoit bien s'énonce clairement, et là ce n'est pas le cas. Et comme le dit Elmoricq, il y a de fortes chances pour que tout ça soit viré par le compilo  :lol:  
Peut-être que le créateur de ce bout de programme voulait faire une attente active de p fois 3000 (3 secondes ?) , mais dans ce cas il aurait fallu mettre temp++ et non pas temp--.
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Aide sur fonction Delai

 

Sujets relatifs
[C++ WXWIDGETS]besoin d'un peu d'aide sur les sizersBesoin d'aide pour programmation Pascal
Fonction vs Classaide pour vérifier si un fichier est uploadé
fonction qui renvoie le type d'une variableBESOIN D'AIDE SVP - Contenu textbox vers cellules plusieurs classeurs
Fonction dans une fonction[BATCH] petite aide pour syntaxe subsitution commande
[Résolu][HTML/PHP] Aide (basique) pour un tableau[C#.NET] Extraire une image d'une image en fonction d'un rectangle ?
Plus de sujets relatifs à : Aide sur fonction Delai


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR