begin process at 2012 05 29 16:56:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Général

 > 

Problème de division dans une boucle


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème de division dans une boucle

samedi 22 mars 2008 à 01:18:11 | Problème de division dans une boucle

Albanderuaz

Bonjour,
J'ai un problème dans une bloucle qui envoie un fichier de taille definie vers un serveur. L'envoi marche, mais une division pose problème. Je poste le code:

long size=364957696;
int percentDone=0;
for (int i=0;i<size;i+=65536)
{
long charsToSend = (size-i>65536)?65536:size-i;
file.read(octet,nombreAEnvoyer);
charsSent==send(id_de_la_socket,octet,charsToSend,0);
percentDone=(i*100/size); // <- PROBLEME
// display percentDone...
}
file.close();
...

Le résultat de la division (i*100/size) est au début quand i=0 0, ensuite 0,0,0.... Puis 1,1,1,1... ainsi que 2 3 4 et 5. Jusque la, tout va bien. Mais ensuite elle m'envoie -5 plusieurs fois, -4 -3 -2 -1 0 et recommence avec 0 1 2 3 4 5 puis -5 -4 -3 ... Je suis confus!

Merci de m'aider!
samedi 22 mars 2008 à 01:49:11 | Re : Problème de division dans une boucle

jfrancois

Bonsoir,

La multiplication de i par 100 le fait sortir de sa limite ! Il faut passer par un flottant :

percentDone = (int)( (double)(ii * 100. / size) + 0.5 );


Jean-François

samedi 22 mars 2008 à 01:52:34 | Re : Problème de division dans une boucle

jfrancois

Réponse acceptée !
C'est  i * 100  et non  ii * 100  !!!

Jean-François

samedi 22 mars 2008 à 12:20:20 | Re : Problème de division dans une boucle

Albanderuaz

Merci beaucoup, ca marche !


Cette discussion est classée dans : problème, boucle, division, size, percentdone


Répondre à ce message

Sujets en rapport avec ce message

merci de m'aider borland 5.01 [ par hell ] Bonjour à vous tous, j'ai le logiciel de borland 5.01 pour faire de la programmation en c++ . Je voudrais savoir pourquoi lorsque je clique sur run lo Problème de boucle dans un muli-thread [ par vinvay ] Alors voila, j'ai 4 threads qui tournent en même temps, ceux-ci utilisant la même fonction.Dans cette fonction, il y a une première boucle for suivie problème avec timer [ par gogeta2003 ] Salut à tous j'ai un prb un un timer qui se trouve dans une boucle do while. AnsiString  a=3.5; do{ //programme //........ Timer1->Interval++; }whil pb avec WM_SIZE et MoveWindow [ par yerosnimus ] Bonjour,J'ai un problème avec une adaptation d'un code trouvé dans le Petzold, figure 9-5 COLORS1.CDans ce code, l'auteur crée 3 contrôles "scroll" qu problème avec rand() [ par ganner ] BonsoirJ'utilise cette boucle dans mon programme pour pouvoir obtenir un nombre aléatoire:while (nbRand 400)    {        nbRand = Problème pour une boucle dans un programme de yams [ par Etoiline ] Voilà je devais faire un programme de yams mais j'ai un petit problème pas simlple à expliquer qui concerne la boucle générale.Par exemple    1er coup Problème pour une boucle dans un programme de yams [ par Etoiline ] Voilà je devais faire un programme de yams mais j'ai un petit problème pas simlple à expliquer qui concerne la boucle générale.Par exemple    1er coup problème boucle for C++ : [ par Pilotwings ] Bonjour à toutes et à tous, j'essaye de m'exercer sur des exos que je n'arrive pas à terminer comme il faut. On me demande de remplir le programme sui La division ! [ par HCJarod ] Slt,  programmant actuellement sur une cible embarqué avec quelque contrainte temps réel et accès concurents, je me demandai si quelqu'un (ou quelqu'u Problème avec une boucle while [ par arconius ] voilà j'ai fait un prog où l'on tire des dés mais j'ai un problème avec ma boucle while car au lieu de me donner un chiffre aléatoire à chaque fois il


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales