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 :

donner une valeur a une matrice


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    4
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 4
    Par défaut donner une valeur a une matrice
    Bonsoir a tous,

    j aimerai savoir comment me "balader" dans une matrice. En effet , la structure de ma matrice est la suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     typedef struct
    {
    int m; /* row - Zeile */
    int n; /* column - Spalte */
    DComplex *data;
    } DComplexMatrix;
     
    typedef enum{ FALSE, TRUE } Boolean;
    et j aimerais ercire les fonctions suivantes:
    Boolean setValueDComplexMatrix( DComplexMatrix* matrix, int row, int column, DComplex value);

    Boolean addValueDComplexMatrix( DComplexMatrix* matrix, int row, int column, DComplex value)

    Si vous connaissez aussi un tutoriel sur les matrices , j en serai ravi

    merci de votre aide si preciseuse.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 131
    Par défaut
    Perso je ne comprend pas bien ta structure.

    Ou est le tableau a 2 dimensions ??
    DComplex ?? Qu est ce que c est ?

    En plus tu nous jettes les noms des fonctions sans donner aucunes explications.

    Un peu plus de precisions seraient le bienvenu.

  3. #3
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    4
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 4
    Par défaut
    Ah oui tu as raison.

    DComplex est une autre structure:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    typedef struct {
     
    double Re; 
    double Im;
    }DComplex ;
    Pour cette premiere fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Boolean setValueDComplexMatrix( DComplexMatrix* matrix, int row, int column, DComplex value);
    , je dois initialiser la matrice, donner une valeur.
    Quand a la deuxieme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Boolean addValueDComplexMatrix( DComplexMatrix* matrix, int row, int column, DComplex value)
    elle consiste a additionner la matrice avec un vecteur. Le module du vecteur je l ai deja écrit.

    encore Merci

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    tu as bien alloué l'espace dans data ?

    Alors c'est tout simple..

    Comme dit hier je pense, dans un autre post, un tableau 2D ou un tableau 1D c'est du pareil au même.

    La seule différence est que dans le cas du 2D c'est le compilo qui écrit en assembleur l'algo pour calculer les adresses, et dans un tableau 1D c'est à toi de le faire si dans ce tableau tu veux mettre une matrice (ou un volume).

    Quel est l'indice du pixel j de la i ème ligne dans un tableau unidimensionnel ?

    Tu résous ça et tu as la solution à ton problème.

    Je te donne le départ que tu a déjà mis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Boolean setValueDComplexMatrix( DComplexMatrix* matrix, int row, int column, DComplex value);
    {
    }
    sachant que comme tu passes la structure par pointeur tu te référeras à un élément pas la -> (flèche) et non le . (point) .


    à toi...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 131
    Par défaut
    C est bien ce qu il me semblait, la matrice est un tableau de dimension 1

    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
      1 typedef struct {
      2     int row;
      3     int column;
      4     DComplex *data;
      5 } DComplexMatrix;
      6 
      7 typedef enum{ FALSE, TRUE } Boolean;
      8 
      9 
     10 Boolean setValueDComplexMatrix(DComplexMatrix* matrix, int row,
     11         int column, DComplex value) {
     12     Booolean res = FALSE;
     13 
     14     if (matrix != NULL
     15             && row >= 0
     16             && row < matrix->row
     17             && column >= 0
     18             && column < matrix->column) {
     19         matrix->data[matrix->column * row + column] = value;
     20         res = TRUE;
     21     }
     22 
     23     return res;
     24 }
    Je n ai pas compile ni verifie mais ca devrait etre quelque chose comme ca

    Pour l addition pratiquement identique .

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. Sélectionner seulement une partie d'une valeur d'une cellule
    Par ArthurO0O dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/08/2007, 11h05
  3. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48
  4. passer une valeur d'une requête a une table
    Par LesLemmings dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 09/06/2006, 14h13
  5. Mettre une valeur d'une table dans une variable
    Par Raphou96 dans le forum Access
    Réponses: 5
    Dernier message: 06/02/2006, 15h19

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