IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

[debutant] une fonction main appelle une autre array


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 112
    Par défaut [debutant] une fonction main appelle une autre array
    voila le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     
    # include <stdio.h>
    # include <conio.h>
    //---------------------------- matrix input sequence
    float input_matrix()
    {
     
    int i,j;
    int sum;
    int M[2][3];
    printf("PLEASE ENTER THE MATRIX ELEMENTS  \n\n");
    for (i=0;i<2;i++)
          {
          for (j=0;j<3;j++)
          scanf("%f", &M[i][j]);
          printf("\n");
          sum+=M[i][j];
          }
    }
    float main(void)
     
    {
    float total;
    total=input_matrix(sum);
    printf("%f", total);
    getch();
    }
    seulement voila comment je pourrai avoir le total des nombres qui sont a l'interieur du tableau dans la fonction input_matrix.

    merci

  2. #2
    Membre expérimenté Avatar de Pikwik
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 237
    Par défaut
    Ton code n'est pas compilable. En effet tu fais appel dans le main à la variable "sum" qui est crée localement dans la fonction "input_matrix"...

    Ne recopie pas ton code, fait un copier coller...

    Deplus ta fonction main doit retourner un "int" et non un float.

    Tu ne test pas le retour du scanf, si je lui met des lettres à la place d'un nombre ?

    Man du scanf

  3. #3
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    "sum" n'est pas initialisé.

  4. #4
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    # include <stdio.h>
    # include <conio.h>
    //---------------------------- matrix input sequence
    int input_matrix()
    {
    int i,j;
    int sum=0;
    int M[2][3];
    printf("PLEASE ENTER THE MATRIX ELEMENTS  \n\n");
    for (i=0;i<2;i++)
          {
          for (j=0;j<3;j++)
          scanf("%f", &M[i][j]);
          printf("\n");
          sum+=M[i][j];
          }
    return sum;
    }
    int main(void)
     
    {
    float total;
    total=input_matrix();
    printf("%f", total);
    getch();
    return 0;
    }

  5. #5
    Membre expérimenté Avatar de Pikwik
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 237
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    #include <stdio.h>
    #include <stdlib.h>
     
    float input_matrix(void)
    {
        int i,j;
        float sum = 0;
        int M[2][3];
        printf("PLEASE ENTER THE MATRIX ELEMENTS  \n\n");
        for (i=0;i<2;i++)
        {
            printf("Zone %d \n", i);
            for (j=0;j<3;j++) {
                printf("Valeur #%d :", j);
                scanf("%f", &M[i][j]);
            }
            printf("\n");
            sum+=M[i][j];
        }
     
        return sum;
    }
     
    int main(void)
    {
        float total = 0;
        total=input_matrix();
        printf("%f", total);
        getch();
        return EXIT_SUCCESS;
    }
    Essaye ca voir si c'est le resultat escompté.

    EDIT: Je ne comprend pas trop ce que tu souhaites faire, car pour ajouter des valeurs tu n'as pas besoin de faire un tableau... Deux variables suffisent.

  6. #6
    Membre Expert Avatar de gnto
    Homme Profil pro
    Ingénieur système logiciel
    Inscrit en
    Janvier 2006
    Messages
    923
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur système logiciel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2006
    Messages : 923
    Par défaut
    Citation Envoyé par Pikwik
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    #include <stdio.h>
    #include <stdlib.h>
     
    float input_matrix(void)
    {
        int i,j;
        float sum = 0;
        int M[2][3];
        printf("PLEASE ENTER THE MATRIX ELEMENTS  \n\n");
        for (i=0;i<2;i++)
        {
            printf("Zone %d \n", i);
            for (j=0;j<3;j++) {
                printf("Valeur #%d :", j);
                scanf("%f", &M[i][j]);
            }
            printf("\n");
            sum+=M[i][j];
        }
     
        return sum;
    }
     
    int main(void)
    {
        float total = 0;
        total=input_matrix();
        printf("%f", total);
        getch();
        return EXIT_SUCCESS;
    }
    Essaye ca voir si c'est le resultat escompté.

    getch() => conio.h
    scanf("%*c"); => stdio.h

  7. #7
    Membre expérimenté Avatar de Pikwik
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 237
    Par défaut
    getch() => conio.h
    scanf("%*c"); => stdio.h

  8. #8
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 112
    Par défaut
    Citation Envoyé par Pikwik
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    #include <stdio.h>
    #include <stdlib.h>
     
    float input_matrix(void)
    {
        int i,j;
        float sum = 0;
        int M[2][3];
        printf("PLEASE ENTER THE MATRIX ELEMENTS  \n\n");
        for (i=0;i<2;i++)
        {
            printf("Zone %d \n", i);
            for (j=0;j<3;j++) {
                printf("Valeur #%d :", j);
                scanf("%f", &M[i][j]);
            }
            printf("\n");
            sum+=M[i][j];
        }
     
        return sum;
    }
     
    int main(void)
    {
        float total = 0;
        total=input_matrix();
        printf("%f", total);
        getch();
        return EXIT_SUCCESS;
    }
    Essaye ca voir si c'est le resultat escompté.

    EDIT: Je ne comprend pas trop ce que tu souhaites faire, car pour ajouter des valeurs tu n'as pas besoin de faire un tableau... Deux variables suffisent.
    Le code que tu avais ecrit renvois un resultat de type float mais qui n'est reellement en relation avec les chiffres entrees

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. appeler une fonction php dans une fonction javaScript
    Par geeksDeve dans le forum Langage
    Réponses: 3
    Dernier message: 17/04/2012, 15h30
  2. Appeler une fonction js dans une autre
    Par Seta-san dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 01/06/2011, 16h49
  3. Appeler une fonction à partir d'une autre fonction
    Par touta1 dans le forum Langage
    Réponses: 2
    Dernier message: 07/10/2009, 18h15
  4. [POO] appeler une fonction contenue dans une autre fenetre
    Par pepper18 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 06/09/2008, 02h27
  5. Réponses: 1
    Dernier message: 25/10/2007, 21h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo