Langage c

Adil le vrai -  
 Adil -
Salut
s'il vous plait j'ai un probleme mon ordinateur
il se plante apres que j'ai modifier un programme
en lui ajoutant une boucle
il se plante automatiquement de que je initialse i =0;
Merci dans l'attente d'un e suite favorbale

#include <stdio.h>
#include <conio.h>
#include <math.h>

main()


{float x,y ;
int i=0; (*il se plante ici*)
while (x!=2&&i<=10);
{
printf ("saisir x: ");
scanf ("%f",&x);
y=log(x);
printf("log(x)=%f\n",y);
i++;}
}
source :
#include <stdio.h>
#include <conio.h>
#include <math.h>

void main()
{
float x,y ;
{
printf ("saisir x: ");
scanf ("%f",&x);
y=log(x);
printf("log(x)=%f\n",y);
}
A voir également:

7 réponses

Canard007 Messages postés 5931 Date d'inscription   Statut Contributeur Dernière intervention   215
 
lol!
ton probleme vient pas de i mais de x...
je t'aide..
tu declare x
et ensuite tu lui dit tant que x ne vaut pas 2 et i inferieur ou egal a 10 tu fera ce qu il y a en dessous...
la question que doit sans doute se poser l ordinateur a ce moment c'est combien vaut x la...
et je pense que il doit toujours se poser la question...
0
ADIL LE VRAIS
 
Salut,canard
maintanant stp tu peut essayer ce programme chez toi afin de le decodé ,car x est dejat declare :regarde c'est afficher float x; [bloc declaration] ,repond moi stp désque tu peut
0
Adil
 
Merci,t'as pas oublier le langage c,t'es fort
0
mohamed
 
SALUT chère frère,
comme je vous ai dit je n'ai pas étudié C++ mais je cherche pour vous sur le net et j'ai trouver ce site.
http://www-ipst.u-strasbg.fr/pat/program/tpc.htm
aussi j'ai trouver un ptit livre qui parle de c++ et j'ai vu qu'il y a 2 boucle (while et la 2 ème DO ...<instructions>... WHILE(conditios)
et je crois que c'est elle qu'il faut user dans votre Pg ou bien il y a un pblème avec la condition x!=2 car x est un réel(float) et 2 est un entier( peut être).
VOTRE FRERE.
BON COURAGE.
MERCI.
0
reda
 
salut,
je pense que ton probleme est seulement la declaration de i par :
main()
{
int i ;
i=0;

............bon courage ....................
0
Canard007 Messages postés 5931 Date d'inscription   Statut Contributeur Dernière intervention   215
 
j aimerai bien que tu m explique la difference entre
int i= 0;
et
int i;
i=0;
0
Adil > Canard007 Messages postés 5931 Date d'inscription   Statut Contributeur Dernière intervention  
 
Toi t'expliquez ça,mon chere copain, bien sur
Le deuxième c'est quand en commence a tri pocher
et la première c'est pour faire gagner du temp. est de la place
voilà voilou la meme chose

Merci

Lunix sex and expensive
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pi€rre Messages postés 76 Date d'inscription   Statut Membre Dernière intervention  
 
Ton probllème vientdu ; ici: (x!=2&&i<=10) ; ce ; veut dire que le while est terminé


La vie est belle et c'est tant mieux
0
Canard007 Messages postés 5931 Date d'inscription   Statut Contributeur Dernière intervention   215
 
probleme numero ( en plus de la non initialisation) qui explique pourquoi ton pc plante....

essaye de faire :
while (x!=2&&i<=10)
{ 

et non pas
while (x!=2&&i<=10) ; 
{ 




while(condition); ca boucle à l infini donc le pc plante... donc attention aux ( ; ) :p
bon courage
0
deutschmeister
 
Tout a fait il y a deux erreurs dans ton programme

- Tu n'initialises pas une variable x, qui est dans la condition de ta boucle. Donc tu ne peux pas rentrer dans ta boucle. logique

- De plus il faut pas mettre de ; aprés la condition de boucle while, sinon tu tournes dans le vide, sauf cas trés rare: boucle infinie du type:
while(1);

Quand a l'histoire de x définit comme un float alors qu'il est entier dans la condition de la boucle cela ne pose aucun probleme.

Sur cet exemple la boucle do{}while(), n'est pas nécessaire

Par contre je pense que tu devrais retiré x de ta condition
mais rajouté dans le corps de la boucle un break qui te fait sortir de l boucle si x =2, et ceci avant le calcul.
0