comment ecrire une fonction pour......

comment ecrire une fonction pour...... - C - Programmation

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]

Reply

Marsh Posté le 17-04-2005 à 00:36:02   

Reply

Marsh Posté le 17-04-2005 à 00:43:33    

heuh [:pingouino]
 
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


Message édité par chrisbk le 17-04-2005 à 00:43:47

---------------
NP: HTTP Error 764 Stupid coder found
Reply

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

Reply

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 d’attaque.
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 d’expérience que donne la mort du monstre.

Reply

Marsh Posté le 17-04-2005 à 01:36:45    

comment ecrire cette fonction ?

Reply

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 d’attaque.
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 d’expérience que donne la mort du monstre.
 
comment ecrire cette fonction ....?

Reply

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 ?


Message édité par Chronoklazm le 17-04-2005 à 01:52:07

---------------
Scheme is a programmable programming language ! I heard it through the grapevine !
Reply

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();

Reply

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...)


Message édité par red faction le 17-04-2005 à 04:17:27
Reply

Marsh Posté le 17-04-2005 à 10:01:01    

abusteff a écrit :


#define MAX_MONSTRES 150
  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];



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
{
   /* taille arbitraire */
   char NOM[32];
   float PVIE;
   float PATT;
   float PATTPHY;
   float PATTMAG;
   float PMONETAIRE;
   float PEXPERIENCE;
};


et ensuite un tableau de structure statique

#define MAX_MONSTRES 150
struct monstre tab_monstres [MAX_MONSTRES];


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)


struct node_monstre
{
   struct node_monstre *pnext;
   struct monstre *pmonstre;
};
struct node_monstre  *premier_monstre;


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


Message édité par Emmanuel Delahaye le 17-04-2005 à 10:07:20

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 17-04-2005 à 10:01:01   

Reply

Marsh Posté le 17-04-2005 à 11:18:07    

abusteff a écrit :

aLire = fopen("Monstres.txt", "w" );
aCreer = fopen("fortune.txt","r" );


 
C'est pas plutôt :

Code :
  1. aLire = fopen("Monstres.txt", "r" );
  2. aCreer = fopen("fortune.txt", "w" );

Reply

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


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed