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

  FORUM HardWare.fr
  Programmation
  C++

  Faire des axes pour une fonction mathématique

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Faire des axes pour une fonction mathématique

n°1268991
-neophyte-
Posté le 17-12-2005 à 17:50:06  profilanswer
 

Bonjour,
Je dois faire un programme en c++ permettant d'affichier une fonction mathématique (2x^3-2x^2-18x+18)
 
Je voudrais déja commencer par afficher  des axes:
 
 
 

Code :
  1. #include<iostream>
  2. using namespace std;
  3. int main(int argc, char*const argv[])
  4. {
  5.    
  6.     int tailleX=80;
  7.     int tailleY=70;
  8.     char G[tailleY][tailleX];
  9.    
  10.           for(int i=0;i<tailleY;i++){
  11.               for(int j=0;j<tailleX;j++){
  12.                  if(i==34){             
  13.                    G[i][j]='_';}
  14.                  if(j==39)
  15.                    G[i][j]='|';
  16.                           }}
  17.                          
  18.      for(int i=0;i<tailleY;i++){
  19.          for(int j=0;j<tailleX;j++){
  20.          cout<<G[i][j];}}
  21.         int a;
  22.         cin>>a;
  23.         return 0;


 
Et rien qu'ici, je suis déja bloqué vu que ça bug quand je compile...
Personne n'a une idée doù vient le problème?
 
Je ne suis pas au bout de mes peines...  
Projet à rendre pour lundi  :sarcastic:

mood
Publicité
Posté le 17-12-2005 à 17:50:06  profilanswer
 

n°1268994
masklinn
í dag viðrar vel til loftárása
Posté le 17-12-2005 à 17:51:54  profilanswer
 

Regarde le message d'erreur de ton compilo [:spamafote]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1268995
theshockwa​ve
I work at a firm named Koslow
Posté le 17-12-2005 à 17:52:47  profilanswer
 

afficher la fonction ou réaliser son calcul ?
 
c'est volontaire, s'il manque l'accolade de fin du main ?
 
sinon, pour éviter d'avoir à faire ton cin>>a;, lance ton programme depuis une ligne de commande ...

n°1268999
-neophyte-
Posté le 17-12-2005 à 17:54:57  profilanswer
 

masklinn a écrit :

Regarde le message d'erreur de ton compilo [:spamafote]


 
Je me suis mal exprimé: ca compile bien mais juste le résultat à l'affichage déconne completement (affiche des miliers de caractères et mon ordi fait des bruits bizarres  :??: )
 
J'ai en effet oublié l'accolade au copier coller (donc involontaire)

Message cité 1 fois
Message édité par -neophyte- le 17-12-2005 à 17:56:58
n°1269007
masklinn
í dag viðrar vel til loftárása
Posté le 17-12-2005 à 17:59:19  profilanswer
 

-neophyte- a écrit :

Je me suis mal exprimé: ca compile bien mais juste le résultat à l'affichage déconne completement (affiche des miliers de caractères et mon ordi fait des bruits bizarres  :??: )


Chez moi ça compile pas, g++ m'indique obligeament que l'ANSI C++ n'accepte pas les tableaux à taille variable.
 
À part ça, tu penses réellement que ton tableau, une fois que tu l'as créé, se retrouve avec toutes ses cases initialisées?
 
Avec des espaces en plus?


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1269013
-neophyte-
Posté le 17-12-2005 à 18:14:15  profilanswer
 

masklinn a écrit :

Chez moi ça compile pas, g++ m'indique obligeament que l'ANSI C++ n'accepte pas les tableaux à taille variable.
 
À part ça, tu penses réellement que ton tableau, une fois que tu l'as créé, se retrouve avec toutes ses cases initialisées?
 
Avec des espaces en plus?


 
 
Je tiens juste à préciser que je ne suis pas expert en c++ (je n'ai aucune expérience et c'est la première année que j'ai des cours d'info)
 
Pour initialiser ne suffit-t-il pas d'indiquer simplement:

Code :
  1. int tailleX=80;
  2.     int tailleY=70;


 
Pourquoi la matrice serait de longueur variable si je fixe au début les longueur tailleX et tailleY ?

n°1269015
masklinn
í dag viðrar vel til loftárása
Posté le 17-12-2005 à 18:17:29  profilanswer
 

-neophyte- a écrit :

Pourquoi la matrice serait de longueur variable si je fixe au début les longueur tailleX et tailleY ?


Parce que tailleX et tailleY sont des variables [:mlc]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1269018
-neophyte-
Posté le 17-12-2005 à 18:23:24  profilanswer
 

masklinn a écrit :

Parce que tailleX et tailleY sont des variables [:mlc]


 :cry: alors que dois-je remplacer ou ajouter pour fixer mon tableau?  :sweat:

n°1269027
theshockwa​ve
I work at a firm named Koslow
Posté le 17-12-2005 à 18:39:02  profilanswer
 

c'est pas valide en C99, ca ?
 
sinon, tu fais un malloc ...

 
tu fais un new ... (on n'est pas en C, ici ?  :sweat: )
 
ou alors mieux : tu passes par des std::vector

Message cité 1 fois
Message édité par theshockwave le 17-12-2005 à 18:40:01
n°1269030
masklinn
í dag viðrar vel til loftárása
Posté le 17-12-2005 à 18:40:28  profilanswer
 

-neophyte- a écrit :

:cry: alors que dois-je remplacer ou ajouter pour fixer mon tableau?  :sweat:


Des constantes, ou tu crées vraiment ton tableau (new/delete)
 
Tu peux utiliser les conteneurs STL aussi, ça serait pas du luxe en fait (std::vector toussa)

theshockwave a écrit :

c'est pas valide en C99, ca ?
 
sinon, tu fais un malloc ...


Regarde le nom de la cat stp :o

Message cité 2 fois
Message édité par masklinn le 17-12-2005 à 18:40:47

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
mood
Publicité
Posté le 17-12-2005 à 18:40:28  profilanswer
 

n°1269031
theshockwa​ve
I work at a firm named Koslow
Posté le 17-12-2005 à 18:41:38  profilanswer
 

masklinn a écrit :

Regarde le nom de la cat stp :o


 
corrigé avant même ta remarque :o

n°1269032
masklinn
í dag viðrar vel til loftárása
Posté le 17-12-2005 à 18:42:39  profilanswer
 

theshockwave a écrit :

corrigé avant même ta remarque :o


No, 12 secondes après http://membres.lycos.fr/angel2k/petrus/petrusfuck.gif


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1269034
theshockwa​ve
I work at a firm named Koslow
Posté le 17-12-2005 à 18:49:10  profilanswer
 

"Message édité par theshockwave le 17-12-2005 à 18:40:01"
"Posté le 17-12-2005 à 18:40:28"
non ... 27 secondes avant :o

n°1269039
masklinn
í dag viðrar vel til loftárása
Posté le 17-12-2005 à 18:51:46  profilanswer
 

theshockwave a écrit :

"Message édité par theshockwave le 17-12-2005 à 18:40:01"
"Posté le 17-12-2005 à 18:40:28"
non ... 27 secondes avant :o


 [:neowen]  :whistle:  
 
 
 
 
 
 
 :o  :o  :o  :o  :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1269054
-neophyte-
Posté le 17-12-2005 à 18:57:32  profilanswer
 

masklinn a écrit :

Des constantes, ou tu crées vraiment ton tableau (new/delete)
 
Tu peux utiliser les conteneurs STL aussi, ça serait pas du luxe en fait (std::vector toussa)
 


 
tableau new/delete , conteneurs STL, on a rien vu de tout ca à notre cour. Donc ca doit etre possible de faire sans.
 
Sinon, une remarque, le code donné si dessus doit dans mon projet être juste une fonction.
Pour l'instant, je l'ai mis en main histoire de voir si ca s'affiche correctement hélas non...

Message cité 1 fois
Message édité par -neophyte- le 17-12-2005 à 18:59:32
n°1269691
sankukai8
Posté le 19-12-2005 à 08:46:58  profilanswer
 

comme l'a deja dit masklinn, il faut que tu initialises ton tableau:
solution 1:
declare ton tableau sans les variables et initialise le directement avec des espaces

Code :
  1. char G[70][80]={" "};


solution 2:
tu gardes ton initialisation avec tes variables mais tu initialises dans la boucle:

Code :
  1. for(int i=0;i<tailleY;i++)
  2.                {
  3.                    for(int j=0;j<tailleX;j++)
  4.                    {
  5.                       G[i][j]=' ';
  6.                       if(i==34) G[i][j]='_';
  7.                       if(j==39) G[i][j]='|';
  8.                    }
  9.                }

n°1269738
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 10:13:18  profilanswer
 

-neophyte- a écrit :

tableau new/delete , conteneurs STL, on a rien vu de tout ca à notre cour. Donc ca doit etre possible de faire sans.


 
tu peux faire du code volontairement ignoble, oui :o
 

sankukai8 a écrit :


Code :
  1. char G[70][80]={" "};




 
Heuu, ca, sauf erreur de ma part, ca met un espace dans le premier élément mais des 0 dans le reste, non ?

n°1269778
sankukai8
Posté le 19-12-2005 à 11:03:26  profilanswer
 

theshockwave a écrit :

tu peux faire du code volontairement ignoble, oui :o
 
 
 
Heuu, ca, sauf erreur de ma part, ca met un espace dans le premier élément mais des 0 dans le reste, non ?


en effet, mais la valeur 0 correpond au char nul, et cela se traduit par l'affichage d'un espace.
cela affiche bien le resultat demandé.

n°1269791
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 11:19:34  profilanswer
 

j'ai relu succintement et je ne vois pas trop l'intérêt d'initialiser la première chaine avec un espace dedans et de laisser toutes les autres vides ... [:pingouino] autant tout mettre à 0 directement, non ? Parce que l'intérêt qu'il pourrait avoir, à la limite, c'est de pouvoir initialiser son tableau juste avec des espaces partout ...

n°1270077
sankukai8
Posté le 19-12-2005 à 16:34:59  profilanswer
 

yep :)  


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Faire des axes pour une fonction mathématique

 

Sujets relatifs
[C/C++] Fonction "crypt" sous windows ? HELPUne fonction peut-elle renvoyer son nom ?
Faire descendre le footer en fonction de l'info à afficherFonction pour comparer des chiffres ?
Programmmer la fonction Cat en C[JavaScript?]Fonction "Ctrl +" & "Ctrl -" du navigateur
[Php - regex] fonction ereg()Fonction Include
aide sur appel de fonction en pascalFonction mail() et smtp distant ?
Plus de sujets relatifs à : Faire des axes pour une fonction mathématique


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