Exporter tableau

3463 Messages postés 23 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 22 juin 2011 - 17 juin 2011 à 10:34
3463 Messages postés 23 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 22 juin 2011 - 22 juin 2011 à 09:19
Salut à tous !! J'ai vraiment vraiment besoin de votre aide

J'ai un problème sur mon programme que je me traîne depuis super longtemps et j'arrive pas à avancer... D'abord un énorme merci à Pop70 qui m'a vachement aidé, sans lui, mon prog serait encore à l'état d'ébauche
Je suis débutant en C et je souhaite que mon programme fasse des calculs entre les différentes valeurs de mon tableau. Ensuite, qu'il stocke ces calculs dans un nouveau tableau pour les exporter sous excel.

Merci pour vos réponses rapides !!!

11 réponses

3463 Messages postés 23 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 22 juin 2011
17 juin 2011 à 10:37
# include <stdio.h>
# include <stdlib.h>
# include
# include <fstream>
# include <string>
# include <math.h>
# include<conio.h>


using namespace std;
//int rechercheDicho(int [], int, int);
void afficheColonne(float [], int); // Fonction pour vérifier le contenu d'une colone
void EnregistrerUneColonne(float[], float[], float[], float[], int); // Fonction qui enregistre les 4 colonnes


int main()
{
// Déclaration des variables
int hauteur1=0; // hauteur anémomètre 1
int hauteur2=0; // hauteur anémomètre 2
int resultathauteur=0;
int site;
int duree=0; // duree de mesure
int nbredemesures=0;
int nbredemesures2,nbreanemo;


// Programme


printf("\n CHOIX DES ANEMOMETRES");
printf("\n Hauteur anemometre 1 en metres : ");
scanf("%d",&hauteur1);

printf("\n Hauteur anemometre 2 en metres : ");
scanf("%d",&hauteur2);


resultathauteur=abs(hauteur1-hauteur2);
printf("\n La difference de hauteur entre les 2 anemometres est de : %d m ",resultathauteur);


printf("\n \n Veuillez indiquer la duree de mesure en jours : ");
scanf("%d",&duree);
printf("\n \n La duree de mesure selectionnee est de %d jour(s).\n",duree);



nbredemesures=144*duree;
printf("\n \n Il y a %d mesures prises en compte.\n",nbredemesures);




printf("\n \n Combien d'anemometres voulez vous prendre en compte ? ");
scanf("%d",&nbreanemo);
nbredemesures2=nbredemesures*nbreanemo;


printf("\n \n \n \n CALCUL DU COEFFICIENT DE CISAILLEMENT");


double param1, param2, result;
param1=5;
param2=hauteur1/hauteur2;
result=log (param1)/log (param2);
printf("\n \n Alpha = ln(%lf) / ln(%lf) = %lf\n", param1, param2, result );

/*Récupération et lecture du tableau*/

float *INPUT = new float[nbredemesures2];
int nbElementsColonne = (int)(nbredemesures2 / 4);

FILE*ReadInput;

ReadInput=fopen("c:\\Mâts de mesures\\12.txt","r" ) ;

if(ReadInput==0)
{
fprintf(stderr,("\a Erreur ouverture fichier\n "));
exit(-1);
}


for (int i=0 ; i < nbredemesures2; i++)
{
fscanf(ReadInput,"%f", &INPUT[i]);
}


printf("\n\n");
float ligne[4] = {0};

fclose(ReadInput) ;
for (int i=0 ; (i+nbreanemo)<nbredemesures2 ; i+=nbreanemo)
{
for (int j=i; j\n<Root xmlns:xsi="http:\/\/www.w3.org\/2001\/XMLSchema-instance">\n";
// Remplissage :
for (int i=0; i<nbreLignes; i++)
{
fichier << "\t<row>\n\t\t<ColonneA>";
fichier << colonneA[i];
fichier << "</ColonneA>\n\t\t";
fichier << "<ColonneB>";
fichier << colonneB[i];
fichier << "</ColonneB>\n\t\t";
fichier << "<ColonneC>";
fichier << colonneC[i];
fichier << "</ColonneC>\n\t\t";
fichier << "<ColonneD>";
fichier << colonneD[i];
fichier << "</ColonneD>\n";
fichier << "\t</row>\n";
}
fichier << "</Root>";// Pour finir le fichier en xml correctement

fichier.close(); // Et fermeture
}


printf("\n \n Appuyer sur une touche pour fermer le programme");

getch();
}
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
17 juin 2011 à 11:23
Hello,
Merci pour vos réponses rapides !!!

Oui mais...quelle est la question? Sachant que:
- nous ne répondons qu'à des questions précises
- nous ne ferons pas le travail à ta place

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
3463 Messages postés 23 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 22 juin 2011
17 juin 2011 à 11:30
Salut !

nous ne ferons pas le travail à ta place


Il ne me semble pas avoir demander que quelqu'un fasse le travail à ma place...
J'ai peut être mal formulé ma question mais je voulais savoir si quelqu'un a un début de piste pour m'aider faire des calculs entre les différentes colonnes de mon tableau que m'affiche le prog

nous ne répondons qu'à des questions précises


C'est assez précis ??
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
17 juin 2011 à 11:52
Non.
J'ai peut être mal formulé ma question mais je voulais savoir si quelqu'un a un début de piste pour m'aider faire des calculs entre les différentes colonnes de mon tableau que m'affiche le prog

Je vois au moins 3 question là dedans...

[humour]
je vais donc répondre à la 1ère et te laisser les autres:
Question: m'aider faire des calculs[...]
Réponse: regarde du côté des opérateurs +, -, x, /,...
/humour

Tu vois ce que je veux dire par "être précis"? Où en es-tu? Où bloques-tu? Qu'est-ce que tu n'arrives pas à faire...
Est-ce que c'est:
- les calculs? -> cf. la partie humour
- la récupération des données des colonnes? -> ce sont des tableaux à ce que je vois: tu te déplaces dedans à coup d'index
- l'export en Excel? -> regarde le format csv, ce sera le plus simple


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 juin 2011 à 13:16
Son format d'export en colonnes séparées par des TAB est impec, c'est le pilote standard d'import pour Excel.

ciao...
BruNews, MVP VC++
0
3463 Messages postés 23 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 22 juin 2011
17 juin 2011 à 14:08
Merci BruNews et Buno je pense avoir été très clair mais bon... si tu veux pas m'aider c'est pas grave mais je vais pas écrire des romans et raconter ma vie sur ce forum
Alors si t'as pas compris, ben jdois très mal m'exprimer alors...Je demande juste des pistes pour pouvoir faire des calculs entre des colonnes d'un tableau que le programme affiche
Je vois au moins 3 questionS là dedans...


Moi je vois qu'une seule question
0
cs_patatalo Messages postés 1466 Date d'inscription vendredi 2 janvier 2004 Statut Modérateur Dernière intervention 14 février 2014 2
17 juin 2011 à 14:43
salut,

Je comprends Buno, la question semble bizarre, tu sais afficher les valeures de ton tableau mais pas faire des opérations dessus ? Très étonnant.

Ton programme est un mélange de C et C++. Je ne pensais même pas que les opérateurs new et delete etaient accessibles en C. De même que std::cout.

Tab[x] = Tab1[y] + Tab2[z].

Bien sur, Tab doit avoir un type qui correspond au type le plus volumineux de l'opération mais j'ai du mal a croire que ton problème soit réellement cela. Ou alors, il faudrait effectivement commencer par lire quelques docs car c'est le B.A. BA de la programmation...

Il y a eut une question il n'y a pas longtemps sur le forum pour integrer des valeurs à Excel, je te laisse la retrouver.

@++
0
3463 Messages postés 23 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 22 juin 2011
20 juin 2011 à 16:11
Salut,

en fait je veux juste une ptite aide de rien du tout : j'ai fait le plus gros !!

Maintenant je veux que le prog fasse des opérations entre des valeurs des colonnes du tableau et c'est tout. Je suis absolument pas spécialiste de la programmation et je veux juste faire ce petit quelque chose pour me permetttre d'aller plus vite et faire des calculs intéressant. Je me suis dit qu'une personne l'avait déja fait et peut m'expliquer et/ou m'indiquer les 3 ou 4 lignes de codes à taper.
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
20 juin 2011 à 16:29
Bin c'est là qu'on ne comprends pas...
Voici un ligne qui additionne A0 avec B2:
float resultat_add = colonneA[0] + colonneB[2]



@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
20 juin 2011 à 16:29
Avec un point-virgule à la fin, bien sûr


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
3463 Messages postés 23 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 22 juin 2011
22 juin 2011 à 09:19
Merci Buno,

Donc si je tape cette ligne, les valeurs de mon tableau affiché précédemment vont s'additionner ? Je cherchais beaucoup trop compliqué alors... Je pensais que c'était un truc assez dur pour récupérer les valeurs du tableau...

Je vais voir. Merci encore pour la réponse
0
Rejoignez-nous