Probleme de compilation pour du cun programme

Fermé
coachedwin Messages postés 18 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 23 décembre 2014 - 23 sept. 2011 à 18:07
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 23 sept. 2011 à 22:44
Bonjour, j'ai un probleme de compilation sur mon programme nommé sqrt.c, j'ai écrit ceci:

#include <stdio.h>
int main();
{
float n;int i=0; float a=1;
printf("De quel nombre voulez-vous la racine\?\n");
scanf("%f",n);
while (i!=10)
{
a=0.5*(a+n/a);
i++;
}
printf("\nLa racine de %f vaut %f",n,a);
return 0;
}

Et, lors de la compilation, il est écrit:
sqrt.c:3:1: error: expected identifier or '(' before '{' token

Pourriez-vous m'aider, merci beaucoup.

5 réponses

periplasme Messages postés 391 Date d'inscription vendredi 22 avril 2011 Statut Membre Dernière intervention 5 février 2013 53
Modifié par periplasme le 23/09/2011 à 18:13
simple, enlève le point virgule a coté de "main()" ;-)
au passage, evite de déclaré un int entre des float ... le mieux étant de déclaré les variables sur plusieurs lignes.
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
23 sept. 2011 à 18:12
Enlève le ; après main()
0
periplasme Messages postés 391 Date d'inscription vendredi 22 avril 2011 Statut Membre Dernière intervention 5 février 2013 53
23 sept. 2011 à 18:16
presque en même temps \o/
0
coachedwin Messages postés 18 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 23 décembre 2014
23 sept. 2011 à 18:17
merci, j'avais aussi oublié le & avant n dans le scanf mais c'est bon, merci, ça a compilé.
0
coachedwin Messages postés 18 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 23 décembre 2014
23 sept. 2011 à 18:22
outch, autre probleme, maintenant, en executant, je lui propose un nombre, mais quand j'appuie sur entrée, il va juste à la ligne, que faire, merci.
0

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

Posez votre question
periplasme Messages postés 391 Date d'inscription vendredi 22 avril 2011 Statut Membre Dernière intervention 5 février 2013 53
23 sept. 2011 à 18:27
humm ... j'ai recopié le code, corrgé le ";" et le & et compilé, chez moi, aucun soucis ! il affiche bien la racine. pas de simple "retour a la ligne"
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
23 sept. 2011 à 18:30
Pareil ^^
Il faudrait voir le nouveau code.
0
coachedwin Messages postés 18 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 23 décembre 2014
23 sept. 2011 à 18:32
non, c'est bon, je sais pasce qui se passait, mais mon ordi a redémarré sans crier gare, c'était donc un bug, ça marche maintenant.
0
coachedwin Messages postés 18 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 23 décembre 2014
Modifié par coachedwin le 23/09/2011 à 18:35
merci à tous. le double est fait expres. en fait, pour calculer, j'utilise l'alhorithme de babylone 10 fois et ma précision est de 10^-100 ceci vaut pour des nombres positifs
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
23 sept. 2011 à 18:40
Attention avec les confusions, en utilisant des double les précisions dépendent de la valeur.
Si ta valeur est comprise entre 2^(N-1) et 2^N, ta précision est à peu près de 2^(N-53)
0
coachedwin Messages postés 18 Date d'inscription mardi 20 avril 2010 Statut Membre Dernière intervention 23 décembre 2014
23 sept. 2011 à 22:38
je le sais, c'est pourquoi je viens d'augmenter la récursivité de 40, pour 50 à présent car à temps de calcul équivalent, j'ai une précision de plus de 0.5^(2^(50+1)-1) pour racine de 2, donc casi de meme pour les autres.
0