Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2144 connectés 

  FORUM HardWare.fr
  Programmation
  C

  comment ecrire une fonction pour......

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comment ecrire une fonction pour......

n°1049983
abusteff
Posté le 17-04-2005 à 00:36:02  profilanswer
 

que doit-je faire pour ecrire une fonction qui lit et emmagasine l'information dans un tableau ?[#ff7100][/#ff7100]

mood
Publicité
Posté le 17-04-2005 à 00:36:02  profilanswer
 

n°1049986
chrisbk
-
Posté le 17-04-2005 à 00:43:33  profilanswer
 

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
n°1049988
abusteff
Posté le 17-04-2005 à 00:54:45  profilanswer
 

Je dois faire une fonction qui lit le fichier, il se nomme  monstre.txt, et emmagasine l'information dans des tableaux

n°1049989
abusteff
Posté le 17-04-2005 à 00:55:42  profilanswer
 

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.

n°1050002
abusteff
Posté le 17-04-2005 à 01:36:45  profilanswer
 

comment ecrire cette fonction ?

n°1050003
abusteff
Posté le 17-04-2005 à 01:38:56  profilanswer
 

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

n°1050009
Chronoklaz​m
Posté le 17-04-2005 à 01:51:06  profilanswer
 

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 !
n°1050011
abusteff
Posté le 17-04-2005 à 02:13:38  profilanswer
 

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

n°1050016
red factio​n
Posté le 17-04-2005 à 03:14:30  profilanswer
 

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
n°1050032
Emmanuel D​elahaye
C is a sharp tool
Posté le 17-04-2005 à 10:01:01  profilanswer
 

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/
mood
Publicité
Posté le 17-04-2005 à 10:01:01  profilanswer
 

n°1050051
Tarabiscot​e
Posté le 17-04-2005 à 11:18:07  profilanswer
 

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

n°1050059
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 17-04-2005 à 11:34:55  profilanswer
 

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)

Aller à :
  FORUM HardWare.fr
  Programmation
  C

  comment ecrire une fonction pour......

 

Sujets relatifs
[Débutant] Probeme avec la fonction Curdir !Ecrire dans une base de données
prototypage de fonctiondébutant PHP objet: Pb d'appel d'une fonction
Executer fonction avec Identification Admin ... ?Recherche fonction pour ne pas afficher le curseur ds 1 appli VB
appel d'une fonction d'une iframejava et pointeurs sur fonction
Savoir quand une fonction a été appelé pour la derniere fois[C et Linux] Quelle fonction pour ecrire une ligne en couleur?
Plus de sujets relatifs à : comment ecrire une fonction pour......


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR