Programmer tableur genre excel langage C
Fermé
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
-
1 nov. 2009 à 10:53
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 8 avril 2014 à 23:20
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 8 avril 2014 à 23:20
A voir également:
- Programmer tableur genre excel langage C
- Liste déroulante excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Somme tableur - Guide
- Aller à la ligne excel - Guide
16 réponses
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
1 nov. 2009 à 13:24
1 nov. 2009 à 13:24
C'est assez complexe, notamment au niveau de l'interface homme/machine. Quelles sont tes connaissance en matière de programmation ?
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
24
1 nov. 2009 à 15:16
1 nov. 2009 à 15:16
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
1 nov. 2009 à 16:24
1 nov. 2009 à 16:24
OK. Tu as donc les bases nécessaires. Et pour l'interface, tu as des directives (texte, plein écran, graphique ?)
Sinon, un tableur, n'est qu'un grand tableau à 2 dimensions (plein ou non) qui contient des cellules, c'est à dire des données de type texte, numérique ou formules...
On peut imaginer de stocker le 'tableau' à l'aide de listes chainées comprenant une indication de 'coordonnées'. (lignes de 1 à n et colonnes de A à m). Le cellules du tableau sont vides par défaut (rien). On les rempli avec les données de la liste chainée.
Sinon, un tableur, n'est qu'un grand tableau à 2 dimensions (plein ou non) qui contient des cellules, c'est à dire des données de type texte, numérique ou formules...
On peut imaginer de stocker le 'tableau' à l'aide de listes chainées comprenant une indication de 'coordonnées'. (lignes de 1 à n et colonnes de A à m). Le cellules du tableau sont vides par défaut (rien). On les rempli avec les données de la liste chainée.
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
24
1 nov. 2009 à 16:28
1 nov. 2009 à 16:28
en fait, jaimerai deja avoir une base solide dans une fenetre d'executeur puis apres developer une interface graphique dans une autre fenetre.
Concernant la programmation , je cherche deja a faire une fonction qui parcoure le tableur, javais pensé le faire par l'intermediaire d'une liste chainée de liste chainée.
Pensez vous que cest une bonne idée ?
Concernant la programmation , je cherche deja a faire une fonction qui parcoure le tableur, javais pensé le faire par l'intermediaire d'une liste chainée de liste chainée.
Pensez vous que cest une bonne idée ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
1 nov. 2009 à 16:30
1 nov. 2009 à 16:30
La liste chainée est pratique pour stocker des données séquentielles. Mais si il faut faire des traitements, il est préférable d'organiser les données en tableaux à 2 dimensions.
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
24
1 nov. 2009 à 16:32
1 nov. 2009 à 16:32
oui mais ac un tableau a 2 dimensions , la dimensions est fixée des le debut du programme cest assez contraignant !
Est il possible de modifier cette dimension ?
Est il possible de modifier cette dimension ?
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
1 nov. 2009 à 16:34
1 nov. 2009 à 16:34
Oui, bien sûr. à coup de realloc(). On le fait en doublant la taille à chaque fois, ça évite de passer sa vie à faire des réallocations. Attention, en 2D, la consommation mémoire devient vite énorme...
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
24
1 nov. 2009 à 16:36
1 nov. 2009 à 16:36
cest ce que nous voulons eviter ! existe t il des astuce comme par exemple stocker ds un fichier texte puis relectur du fichier texte ou autre ?
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
1 nov. 2009 à 16:47
1 nov. 2009 à 16:47
Non. Le fichier sert à stocker les données, pas à faire les traitements.
On pourrait envisager une liste chainée double composée d'éléments à 4 pointeurs : Haut Bas Gauche Droite, ce qui permet une navigation en ligne et en colonnes. mais le code est assez complexe... De plus, je ne suis pas convaincu que ce soit plus économe en mémoire qu'un simple tableau de pointeurs à 2 dimensions. Si le pointeur vaut NULL, la cellule est vide. Sinon il vaut l'adresse d'une structure de données allouée dynamiquement. C'est certainement le plus simple et le plus efficace.
On pourrait envisager une liste chainée double composée d'éléments à 4 pointeurs : Haut Bas Gauche Droite, ce qui permet une navigation en ligne et en colonnes. mais le code est assez complexe... De plus, je ne suis pas convaincu que ce soit plus économe en mémoire qu'un simple tableau de pointeurs à 2 dimensions. Si le pointeur vaut NULL, la cellule est vide. Sinon il vaut l'adresse d'une structure de données allouée dynamiquement. C'est certainement le plus simple et le plus efficace.
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
24
1 nov. 2009 à 23:55
1 nov. 2009 à 23:55
que me conseillez vous alors ?
Un tableau alloué dynamiquement en 2d et le parcourir et le remplir ac des pointeurs ?
Un tableau alloué dynamiquement en 2d et le parcourir et le remplir ac des pointeurs ?
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
2 nov. 2009 à 11:53
2 nov. 2009 à 11:53
Oui.
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
24
2 nov. 2009 à 17:30
2 nov. 2009 à 17:30
comment coderez vous alors un tableau ainsi et comment le modifier ?
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
2 nov. 2009 à 17:58
2 nov. 2009 à 17:58
Je dois faire ton travail à ta place ?
Allocation mémoire malloc()/realloc()/free() etc.
Allocation mémoire malloc()/realloc()/free() etc.
beberdu67
Messages postés
114
Date d'inscription
vendredi 18 avril 2008
Statut
Membre
Dernière intervention
30 juillet 2010
24
2 nov. 2009 à 18:01
2 nov. 2009 à 18:01
ce que je voulais dire cest sous quel forme coder un tableau et comment le modifier , cad sous forme d'une fonction l'appelant , une fonction modifiant sa taille, une fonction le remplissant etc ?
Emmanuel Delahaye
Messages postés
107
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
17 juillet 2019
7
2 nov. 2009 à 23:24
2 nov. 2009 à 23:24
Tu ne sais pas coder un tableau dynamique en C ?
http://www.bien-programmer.fr/notes.php
Tu peux lire tous les articles de "Pointeurs, tableaux, chaines "
http://www.bien-programmer.fr/notes.php
Tu peux lire tous les articles de "Pointeurs, tableaux, chaines "
Pour la conception d'un tableur, on ne sauvegarde généralement que les cellules non vides (pour le problème de mémoire justement) avec leurs coordonnées bien sûr. il y a un bel exemple dans le livre Qt4 et c++. la conception d'un tableur est entièrement expliquée.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
8 avril 2014 à 23:20
8 avril 2014 à 23:20
Ici, c'est du C pas du C++ ;-).
En plus, le post date de presque 5 ans...
En plus, le post date de presque 5 ans...