Pb tableau en C
Résolu/Fermé
Coucou1504
Messages postés
60
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
12 février 2010
-
8 mai 2008 à 16:30
damlegone32 Messages postés 74 Date d'inscription lundi 11 septembre 2006 Statut Membre Dernière intervention 31 mai 2011 - 18 mai 2008 à 00:22
damlegone32 Messages postés 74 Date d'inscription lundi 11 septembre 2006 Statut Membre Dernière intervention 31 mai 2011 - 18 mai 2008 à 00:22
A voir également:
- Pb tableau en C
- Tableau croisé dynamique - Guide
- Tableau ascii - Guide
- Tableau word - Guide
- Trier tableau excel - Guide
- Comment imprimer un tableau excel sur une seule page - Guide
4 réponses
damlegone32
Messages postés
74
Date d'inscription
lundi 11 septembre 2006
Statut
Membre
Dernière intervention
31 mai 2011
29
8 mai 2008 à 23:01
8 mai 2008 à 23:01
Salut,
Plusieurs choses bizarres dans ton code :
- Du déclare un tableau à deux dimensions comme variable globale puis ensuite ce même tableau est déclaré en mémoire dynamique avec le malloc sur une seule dimension.
- Le paramètre b de la fonction saisir n'est pas utilisé
- Le paramètre a de la fonction saisir est réaffecté (avec le scanf).
->Donc :
- A quoi servent ces paramètres si tu ne les utilises pas?
- Que veux-tu faire de ton tableau (combien de dimensions, sa taille, comment tu veux le remplir...) ?
Tu devrais m'éclairer sur ce que tu veux faire exactement pour que je puisse t'aider.
A+
Plusieurs choses bizarres dans ton code :
- Du déclare un tableau à deux dimensions comme variable globale puis ensuite ce même tableau est déclaré en mémoire dynamique avec le malloc sur une seule dimension.
- Le paramètre b de la fonction saisir n'est pas utilisé
- Le paramètre a de la fonction saisir est réaffecté (avec le scanf).
->Donc :
- A quoi servent ces paramètres si tu ne les utilises pas?
- Que veux-tu faire de ton tableau (combien de dimensions, sa taille, comment tu veux le remplir...) ?
Tu devrais m'éclairer sur ce que tu veux faire exactement pour que je puisse t'aider.
A+
damlegone32
Messages postés
74
Date d'inscription
lundi 11 septembre 2006
Statut
Membre
Dernière intervention
31 mai 2011
29
17 mai 2008 à 16:11
17 mai 2008 à 16:11
Salut,
T'as question c'est bien celle-ci ? : "Comment récupérer des nombres dans un tableau ?"
Alors c'est simple :
tu déclare un tableau d'entier (ou autre) il y a 2 manieres de faire :
1). int tableau_entier[10] -> mais il faut spécifier la taille du tableau a la déclaration.
2). int* tableau_entier; ensuite pour alloué de la mémoire a ce tableau :
tableau_entier = (int*)malloc(taille_tableau*sizeof(int)); -> Intéressant car pas besoin de connaitre la taille du tableau à la déclaration.
Pour remplir le tableau (par ex le ième élément):
tableau_entier[i] = 3;
ou avec un scanf : scanf("enter un nombre : %d",&( tableau_entier[i]));
Pour accéder a un élément du tableau (par ex le ième) :
element_i = tableau_entier[i];
Il n'empêche que ton code possède beaucoup d'incohérence (voir 1er message)
A+
T'as question c'est bien celle-ci ? : "Comment récupérer des nombres dans un tableau ?"
Alors c'est simple :
tu déclare un tableau d'entier (ou autre) il y a 2 manieres de faire :
1). int tableau_entier[10] -> mais il faut spécifier la taille du tableau a la déclaration.
2). int* tableau_entier; ensuite pour alloué de la mémoire a ce tableau :
tableau_entier = (int*)malloc(taille_tableau*sizeof(int)); -> Intéressant car pas besoin de connaitre la taille du tableau à la déclaration.
Pour remplir le tableau (par ex le ième élément):
tableau_entier[i] = 3;
ou avec un scanf : scanf("enter un nombre : %d",&( tableau_entier[i]));
Pour accéder a un élément du tableau (par ex le ième) :
element_i = tableau_entier[i];
Il n'empêche que ton code possède beaucoup d'incohérence (voir 1er message)
A+
Coucou1504
Messages postés
60
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
12 février 2010
3
17 mai 2008 à 18:57
17 mai 2008 à 18:57
rebonjour je pense que je me suis mal expliqué!!
En fait je pense que le code que j'ai mis ne va pas!!
voici ce que je voudrais faire :
-tout d'abord je voudrais demander à l'utilisateur d'entrer le degré de son polynome qui ne doit pas dépassé 5, ensuite il doit taper le nombre dont il veut l'image, et ensuite saisir ces coefficient suivant le degré qu'il aura choisi mais le probleme c que je n'arrivai pas à saisir ts les nombres alors on m'a conseillé de mettre dans un tableau.
-Mais maintenant je n'arrive pas à naviguer dans ce tableau!! je voudrais me servir de ce tableau qui aura à l'interieur les nombres saisies pour le remplir avec d'autre valeur mais je n'y arrive pas.
Pouvez vous me dire ce qui ne va pas dans mon code, et me dire comment faire pour naviguer dans ce tableau??
Bonne soirée
Krikri
En fait je pense que le code que j'ai mis ne va pas!!
voici ce que je voudrais faire :
-tout d'abord je voudrais demander à l'utilisateur d'entrer le degré de son polynome qui ne doit pas dépassé 5, ensuite il doit taper le nombre dont il veut l'image, et ensuite saisir ces coefficient suivant le degré qu'il aura choisi mais le probleme c que je n'arrivai pas à saisir ts les nombres alors on m'a conseillé de mettre dans un tableau.
-Mais maintenant je n'arrive pas à naviguer dans ce tableau!! je voudrais me servir de ce tableau qui aura à l'interieur les nombres saisies pour le remplir avec d'autre valeur mais je n'y arrive pas.
Pouvez vous me dire ce qui ne va pas dans mon code, et me dire comment faire pour naviguer dans ce tableau??
Bonne soirée
Krikri
damlegone32
Messages postés
74
Date d'inscription
lundi 11 septembre 2006
Statut
Membre
Dernière intervention
31 mai 2011
29
18 mai 2008 à 00:22
18 mai 2008 à 00:22
Comment ca naviguer ?
j'ai tout dit : pour acceder a l'element i : tableau[i] si ton tab a deux dimension : tableau[i][j], etc...
C'est quand même pas tres compliqué.
Quand au code même remarque qu'au début : b,c jamais utilisés a est un paramètre de la fonction saisir que tu redéfini plus loin... Tu affiches tab alors qu'il n'est jamais rempli...
De plus pour remplir ton tableau fait plutot scanf("%d",&(tableau[i]));
Je te conseille egalement de donner des noms explicite a tes variables : exemple degre_polynome au lieu de a, valeur au lieu de c
Enfin s'il te plait reprends calmement ton code et essaye d'exprimer plus clairement ton but sinon je crois je je ne pourrais pas beaucoup d'aider
j'ai tout dit : pour acceder a l'element i : tableau[i] si ton tab a deux dimension : tableau[i][j], etc...
C'est quand même pas tres compliqué.
Quand au code même remarque qu'au début : b,c jamais utilisés a est un paramètre de la fonction saisir que tu redéfini plus loin... Tu affiches tab alors qu'il n'est jamais rempli...
De plus pour remplir ton tableau fait plutot scanf("%d",&(tableau[i]));
Je te conseille egalement de donner des noms explicite a tes variables : exemple degre_polynome au lieu de a, valeur au lieu de c
Enfin s'il te plait reprends calmement ton code et essaye d'exprimer plus clairement ton but sinon je crois je je ne pourrais pas beaucoup d'aider
15 mai 2008 à 20:28
donc je m'explique mieux et je vais remettre le bon code!!!
alors tout d'abord je dois programmer une fonction d'evaluation de polynome avec l'aide d'Hörner mais g des soucis de programmation en C. En effect je saisis mes nombres dans un tableau ( les coeff de mon polynome) mais comment faire pour les recupérer pour que je puisse les utilisé (faire des calculs!!)
voici mon code :
#include <stdio.h>
#include <stdlib.h>
#define k 10
int tab [k][k];
void saisir(int a,int b)
{
int* tableau = (int*)malloc(a * sizeof(int));
int i,c;
printf ("Veuillez saisir le degré du polynome (nbre compris entre 0 et 5!!:");
scanf("%d",&a);
getchar();
printf ("Veuillez choisir la valeur :");
scanf("%d",&c);
getchar();
if (a>5)
{
printf ("IMPOSSIBLE");
}
else
{
a=a+1;
for (i=0;i<a;i++)
{
printf ("Veuillez saisir les coeff de votre polynome!");
scanf("%d",tableau+i);
getchar();
}
}
for (i=0;i<a;i++)
printf("%d",tableau[i]);
printf("\n\n%d",tab[0][2]);
getchar();
}
int main()
{saisir(3,3);}
Je veux juste qu'on me reponde à ma questio je ne cherche pas la solution, la solution je la trouverai seule mais je bloque sur cet question!!!
Merci d'avance
Bonne soiréee!!