Boucle définir si c'est un carré parfait

Résolu
stell-91
Messages postés
503
Date d'inscription
dimanche 25 décembre 2011
Statut
Membre
Dernière intervention
25 janvier 2022
- Modifié par stell-91 le 24/11/2013 à 16:50
stell-91
Messages postés
503
Date d'inscription
dimanche 25 décembre 2011
Statut
Membre
Dernière intervention
25 janvier 2022
- 24 nov. 2013 à 18:17
Bonjour,
J'aimerai ecrire un programme en C qui me permet de dire si un nombre est un carré parfait
Par exemple 9 est un carré parfait car c'est 3*3 ou 25 est un carré parfait car c'est 5*5 mais 6 n'est pas un carré parfait car c'est 2*3
je pense que vous avez compris
J'ai envie que mon programme dit si ce nombre un carré parfait ou pas si c'est le cas qu'il donne le nombre.
J'ai quand même travaillé :

int main(void)
{
int N, t;
printf("choix de N : ");
scanf("%d", &N);
if ( N<0)
printf("Erreur, ce nombre est negatif");
else
t=1;
while (t*t<=N)
{
t=t+1;

}
if(t*t==N)
printf("C'est un carre parfait = %d\n", t);
else
printf("Ce n'est pas un carre parfait = %d\n");

return 0;
}

J'aimerai savoir pourquoi ça ne marche pas.

Je souhaite utiliser cette méthode mais pas celle avec la racine carré d'un nombre s'il vous plait

Merci pour votre aide

10 réponses

stell-91
Messages postés
503
Date d'inscription
dimanche 25 décembre 2011
Statut
Membre
Dernière intervention
25 janvier 2022
2
Modifié par stell-91 le 24/11/2013 à 17:07
bonjour,
ok mais je ne vois pas a quelle endroit ?

la reponse que j'ai a chaque fois "c'est n'est pas un carré parfait" et j'ai un super gros nombre aberrant
2