comment ecrire une fonction pour...... - C - Programmation
Marsh Posté le 17-04-2005 à 00:43:33
heuh
Marécageuse question s'il en est, il serait a mon idée de bon ton de developper un peu ton probleme, sinon nous allons tous rester perdu dans la brumes de tes fumeuses explications, paralysés par la tourbe trouble du vague, et incapable de te venir en aide
Marsh Posté le 17-04-2005 à 00:54:45
Je dois faire une fonction qui lit le fichier, il se nomme monstre.txt, et emmagasine l'information dans des tableaux
Marsh Posté le 17-04-2005 à 00:55:42
le tableau contient
1.Une suite de 15 caractères désignant le nom de la bête. Ce nom peut contenir des espaces.
2. Un entier correspondant à ses points de vie.
3. Un entier correspondant à ses points dattaque.
4. Un entier correspondant à ses points de protection pour les attaques physiques.
5. Un entier correspondant à ses points de protection pour les attaques magiques.
6. Un entier correspondant à la valeur monétaire que donne la mort du monstre.
7. Un entier correspondant à la valeur dexpérience que donne la mort du monstre.
Marsh Posté le 17-04-2005 à 01:38:56
je dois faire une fonction qui lit le fichier, il se nomme monstre.txt, et emmagasine l'information dans des tableaux
le tableau contient
1.Une suite de 15 caractères désignant le nom de la bête. Ce nom peut contenir des espaces.
2. Un entier correspondant à ses points de vie.
3. Un entier correspondant à ses points dattaque.
4. Un entier correspondant à ses points de protection pour les attaques physiques.
5. Un entier correspondant à ses points de protection pour les attaques magiques.
6. Un entier correspondant à la valeur monétaire que donne la mort du monstre.
7. Un entier correspondant à la valeur dexpérience que donne la mort du monstre.
comment ecrire cette fonction ....?
Marsh Posté le 17-04-2005 à 01:51:06
Ah la tu va devoir parser ton fichier .txt determiner le fait que la chaine "points de vie :" corresponds a un certain type (et qu'a la suite il y a forcement une valeur dont tu a besoin) que t'aura defini auparavent pour mettre sa valeur dans le tableau etc ...
"Comment ecrire cette fonction ... ?" => Tu connais le slogan de Nike ?
Marsh Posté le 17-04-2005 à 02:13:38
je n'ai pas encore compris , voila ce que j'ai ecris, jusqu'a maintenant :
#include<stdio.h>
main(){
/* Declarations des tableaux : */
#define MAX_MONSTRES 150
#define Monstre "C:\Documents and Settings\Ali Sobh\Desktop\Monstres"
int lireRemplir(NOM, PVIE, PATT, PATTPHY, PATTMAG, PMONETAIRE, PEXPERIENCE);
{
FILE *aLire, *aCreer;
char NOM[MAX_MONSTRES];
float PVIE[MAX_MONSTRES];
float PATT[MAX_MONSTRES];
float PATTPHY[MAX_MONSTRES];
float PATTMAG[MAX_MONSTRES];
float PMONETAIRE[MAX_MONSTRES];
float PEXPERIENCE[MAX_MONSTRES];
int i=0;
/*Preparer les fichier a lire et a creer*/
aLire = fopen("Monstres.txt", "w" );
aCreer = fopen("fortune.txt","r" );
/*Creation du nouveau fichier*/
while (!feof(aLire))
{
fscanf(aLire,"%c%d%d%d%d%d%d\n", &NOM, &PVIE[i], &PATT[i], &PATTPHY[i], &PATTMAG[i], &PMONETAIRE[i], &PEXPERIENCE[i]);
if (PMONETAIRE[i] > 1000)
fprintf(aCreer,"%d",PMONETAIRE);
}
fclose(aLire);
fclose(aCreer);
printf("\nAppuyer sur Entre pour quitter" );
getchar();
Marsh Posté le 17-04-2005 à 03:14:30
ce que je conseille de faire c une structure avec la caractéristique dun monstre, puis ensuite un tableau de cette structure...
dautre part il y a pas mal de concept que tu maitrise mal
si tu pouvait nous dire a quoi va servir ton prog je pourrai peut etre taiguiller vers une solution plus adaptée (utilisation dune bd, autre langage...)
Marsh Posté le 17-04-2005 à 10:01:01
abusteff a écrit :
|
Quand on a la chance d'avoir un langage qui connait la notion de structure (record etc.) on ne fait pas ça. D'autre part, j'ai du mal à croire que le nom de tes monstres ne fasse que un caractère...
On défini une structure :
struct monstre |
et ensuite un tableau de structure statique
#define MAX_MONSTRES 150 |
ou dynamique (qu'il faut bien sûr créer avec malloc() et éventuellement agrandir avec realloc()...)
struct monstre *ptab_monstres; |
ou une liste chainée (qu'il faut bien sûr créer avec malloc() et une pincée d'algorithmie)
|
Pour le reste, tes notions de C sembles assez floues... Je te conseille de relire le K&R2. D'autre part, tu trouveras une foule d'informations sur mon site:
http://mapage.noos.fr/emdel
Marsh Posté le 17-04-2005 à 11:18:07
abusteff a écrit : aLire = fopen("Monstres.txt", "w" ); |
C'est pas plutôt :
Code :
|
Marsh Posté le 17-04-2005 à 11:34:55
tu deviens *franchement* lourd :
http://forum.hardware.fr/forum1.ph [...] archtype=1
TT jusqu'à demain, ça te laissera le temps de faire ton prog
Marsh Posté le 17-04-2005 à 00:36:02
que doit-je faire pour ecrire une fonction qui lit et emmagasine l'information dans un tableau ?[#ff7100][/#ff7100]