Probleme de compilation pour du cun programme

coachedwin Messages postés 24 Statut Membre -  
KX Messages postés 19031 Statut Modérateur -
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

  1. periplasme Messages postés 422 Statut Membre 53
     
    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
  2. KX Messages postés 19031 Statut Modérateur 3 020
     
    Enlève le ; après main()
    0
    1. periplasme Messages postés 422 Statut Membre 53
       
      presque en même temps \o/
      0
  3. coachedwin Messages postés 24 Statut Membre
     
    merci, j'avais aussi oublié le & avant n dans le scanf mais c'est bon, merci, ça a compilé.
    0
  4. coachedwin Messages postés 24 Statut Membre
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. periplasme Messages postés 422 Statut Membre 53
     
    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
    1. KX Messages postés 19031 Statut Modérateur 3 020
       
      Pareil ^^
      Il faudrait voir le nouveau code.
      0
    2. coachedwin Messages postés 24 Statut Membre
       
      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
    3. coachedwin Messages postés 24 Statut Membre
       
      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
    4. KX Messages postés 19031 Statut Modérateur 3 020
       
      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
    5. coachedwin Messages postés 24 Statut Membre
       
      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