Pbm d'ignorance en C
Fermé
rageatm
-
18 mai 2005 à 09:22
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 18 mai 2005 à 14:37
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 18 mai 2005 à 14:37
A voir également:
- Pbm d'ignorance en C
- +Gros pbm que prévu... (adware.slagent...?) ✓ - Forum Virus
- Impossible d’effectuer l’opération car certains éléments ont dû être ignorés. pour chacun des éléments, choisissez fichier > lire les informations, assurez-vous que « verrouillé » n’est pas sélectionné, puis vérifiez la section partage et permissions. après avoir vérifié que les éléments ne sont ni verrouillés, ni en mode de lecture seule ou d’accès interdit, réessayez. ✓ - Forum MacOS
- Pbm pour ouvrir image bmp - Forum Graphisme
- Pbm installation avec installshield wizard - Forum Logiciels
- 000WebHost PBM base de données / connexion ✓ - Forum PHP
2 réponses
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
18 mai 2005 à 10:23
18 mai 2005 à 10:23
Bonjour,
Je débute dans la programmation en C et j'ai deux petit soucis:
- est ce qu'il existe un opérateur spécial ou une feinte de sioux pour exprimer la puissance d'un nombre (du genre 1e-200)
En C tu précise le format dans lequel tu affiches ton nombre :
%lf pour les flottants
%G pour écrire au format ingénieur
%d ou %i pour les entiers
Tu peux préciser le nombre de chiffres significatifs et de nombre après la virgule : par exemple %8.2G pour deux chiffres après la virgules...
Pour ton 1e-200 il semblerait que ton calcul soit sensé donner 0 mais qu'il n'a pas tout à fait atteint cette valeur. On peut imaginer que tu introduises une constante :
#define EPSILON 0.000001
Et que tu testes si ta valeur est inférieure...
- je dois fournir un certain nombre de données contenues dans un fichier externe à mon programme. Pour l'instant, je le fais manuellement en tapant son nom dans la fenetre dos. Mais est ce qu'il y a un moyen de scanner ce fichier automatiquement en inserant une ligne de code supplémentaire?
Je remercie d'avance les personne qui prendrons le temps de me repondre.
Bien sûr !
FILE *fid=fopen("MonFichier","r");
Ca suppose bien entendu de connaître au préalable le nom du fichier (le programme peut pas le deviner ;o))... Bien penser au fclosef(fid) à la fin du programme...
Je débute dans la programmation en C et j'ai deux petit soucis:
- est ce qu'il existe un opérateur spécial ou une feinte de sioux pour exprimer la puissance d'un nombre (du genre 1e-200)
En C tu précise le format dans lequel tu affiches ton nombre :
%lf pour les flottants
%G pour écrire au format ingénieur
%d ou %i pour les entiers
Tu peux préciser le nombre de chiffres significatifs et de nombre après la virgule : par exemple %8.2G pour deux chiffres après la virgules...
Pour ton 1e-200 il semblerait que ton calcul soit sensé donner 0 mais qu'il n'a pas tout à fait atteint cette valeur. On peut imaginer que tu introduises une constante :
#define EPSILON 0.000001
Et que tu testes si ta valeur est inférieure...
- je dois fournir un certain nombre de données contenues dans un fichier externe à mon programme. Pour l'instant, je le fais manuellement en tapant son nom dans la fenetre dos. Mais est ce qu'il y a un moyen de scanner ce fichier automatiquement en inserant une ligne de code supplémentaire?
Je remercie d'avance les personne qui prendrons le temps de me repondre.
Bien sûr !
FILE *fid=fopen("MonFichier","r");
Ca suppose bien entendu de connaître au préalable le nom du fichier (le programme peut pas le deviner ;o))... Bien penser au fclosef(fid) à la fin du programme...
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
18 mai 2005 à 14:33
18 mai 2005 à 14:33
double y=y0; #define EPSILON 0.00001 ... unsigned int it=0; //le nombre d'itération unsigned int nbMaxIt=10000; for(it=0;it<nbMaxIt && y<EPSILON;it++){ y=f(y); } ...
Non ?
18 mai 2005 à 10:55
en fait pour mon problème de puissance, je suis obligé de définir un epsilon très faible ( je travail sur un programme de simulation par élements finis). Le paramètre que je veux soumettre à un test est normalement de l'ordre de 1e-20. Mais dans les cas de divergence, ce critère va effectiviement tendre vers 0 sans jamais l'atteindre. C'est pourquoi j'aurais aimé definir l'epsilon d'arrêt des calculs par une valeur du genre 1e-50 sans etre obligé de taper ce chiffre énorme.
18 mai 2005 à 14:37