écrire d'un un fichier en C !!!!!
Fermé
mind-reader
Messages postés
4
Date d'inscription
vendredi 1 février 2013
Statut
Membre
Dernière intervention
26 février 2013
-
26 févr. 2013 à 11:19
roptat Messages postés 276 Date d'inscription samedi 20 octobre 2012 Statut Membre Dernière intervention 26 juillet 2013 - 26 févr. 2013 à 17:18
roptat Messages postés 276 Date d'inscription samedi 20 octobre 2012 Statut Membre Dernière intervention 26 juillet 2013 - 26 févr. 2013 à 17:18
A voir également:
- écrire d'un un fichier en C !!!!!
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Ouvrir un fichier .bin - Guide
- Comment ouvrir un fichier docx ? - Guide
3 réponses
roptat
Messages postés
276
Date d'inscription
samedi 20 octobre 2012
Statut
Membre
Dernière intervention
26 juillet 2013
77
Modifié par roptat le 26/02/2013 à 11:34
Modifié par roptat le 26/02/2013 à 11:34
en dehors du fichier, regarde si tes variables ne sont pas tout simplement à 0...
Si je comprend bien, count est une variable qui contient le nombre de paquets totaux et tu cherches à faire un pourcentage. Multiplie par 100 avant la division par count et ça marchera mieux : int pricmp = (nbicmp / count)*100; fait :
int pricmp //déclare un entier
int pricmp = nbicmp / count // nbicmp < count, donc nbicmp / count < 1. dricmp étant un entier, ça fait 0.
int pricmp = (nbicmp / count)*100; // 0*100 = 0 :)
dans ta boucle tu as un printf (et non fprintf, normal ?)
Si je comprend bien, count est une variable qui contient le nombre de paquets totaux et tu cherches à faire un pourcentage. Multiplie par 100 avant la division par count et ça marchera mieux : int pricmp = (nbicmp / count)*100; fait :
int pricmp //déclare un entier
int pricmp = nbicmp / count // nbicmp < count, donc nbicmp / count < 1. dricmp étant un entier, ça fait 0.
int pricmp = (nbicmp / count)*100; // 0*100 = 0 :)
dans ta boucle tu as un printf (et non fprintf, normal ?)
Mzakaria
Messages postés
9
Date d'inscription
mardi 26 février 2013
Statut
Membre
Dernière intervention
7 mars 2013
2
26 févr. 2013 à 15:04
26 févr. 2013 à 15:04
J'ai rien compris :/ !!
roptat
Messages postés
276
Date d'inscription
samedi 20 octobre 2012
Statut
Membre
Dernière intervention
26 juillet 2013
77
26 févr. 2013 à 17:18
26 févr. 2013 à 17:18
quand tu mets 0.9999 dans un int, ça fait 0 (arrondie à l'inférieur). C'est ce qui arrive à tes trois variables.
un code plus correct serait
int prudp = (nbudp*100 / count);
int prtcp = (nbtcp *100/ count);
int pricmp = (nbicmp *100/ count);
voir utiliser des double (ou float).
un code plus correct serait
int prudp = (nbudp*100 / count);
int prtcp = (nbtcp *100/ count);
int pricmp = (nbicmp *100/ count);
voir utiliser des double (ou float).