Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1

    Homme Profil pro
    Étudiant
    Inscrit en
    novembre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Territoire de Belfort (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : novembre 2012
    Messages : 1
    Points : -1
    Points
    -1

    Par défaut problème de résolution des équations linéaires

    bonjour
    j'ai déjà commencer a faire mon programme de résolution avec la méthode de gauss j'ai un problème dans la partie de résoudre d’équation

    voila mon programme

    methode de gauss v1.cpp*: définit le point d'entrée pour l'application console.
    Code :
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    //
     
    #include "stdafx.h"
     
     
    int _tmain(int argc, _TCHAR* argv[])
    {
    	float M[100][100],rs[100];
    	int i,j,k,a,b;
    	int n,m;
    	float Coef,mn;
    	//saisie des donnés/
    	printf("Nombre de ligne (max100): \n");
    		scanf("%d",&n);
        printf ("Nombre de colonnes (max100): \n");
    	    scanf("%d",&m);
        for (i=0 ; i<n ; i++)
    	    for(j=0 ; j<m ; j++)
    		{
             printf("Element[%d][%d] :\n ",i,j);
             scanf("%f", &M[i][j]);
            }
    		/* Affichage de la matrice */
     printf("Matrice donnee :\n\n\n");
     for (i=0; i<n;i++)
        {
         for (j=0; j<m; j++)
              printf("%10.4f", M[i][j]);
         printf("\n");
        }
     
     for(k=0;k<i-1;k++)
    	{	printf("==========================");
    		printf("========<ETAPE : %d>========",k+1);
    		printf("======================\n");
     
    		a=k+1;
     
    		while(a<i)
    		{  Coef = M[a][k]/M[k][k]; 
    			for (b=0;b<=i;b++)
    			{ M[a][b]=M[a][b]-(M[k][b]*Coef); }
     
    			a++;
     
     
    		}
     
    		for(n=0;n<i;n++)
    	{ for(m=0;m<j;m++)
    		{ 
    			printf("%12.4f",M[n][m]);
    		}
    	    printf("\n");
    	}
        }
     //AFFI/
      i=0;
    for(i=n-2;i>=0;i--)
              rs[n]=(M[n-1][m-1])/(M[n-1][m-2]);
     
             {
             mn=0;
              for(j=n-1;j>i;j--)        
              {  
     
                 mn=mn + M[n][m] * rs[n];
    		  }
     
                 rs[i]=(M[n][m]-mn)/ M[n][m] ;                 
     
              }
     
            printf("\n\nles solutions sont : \n"); 
            for(i=0;i<n;i++) 
            {
               printf("\n  x%d = %f\n ",i+1,rs[n]);
    		}
     
     
     
    	system("pause");
    	return 0;
    }
    la partie en gras c'est la ou j'ai mon problème je ne sais pas comment faire
    c'est vous pouvez m'aider merci bien
    Images attachées Images attachées

  2. #2
    Expert Confirmé Sénior
    Avatar de Sve@r
    Homme Profil pro Frédéric
    Ingénieur développement logiciels
    Inscrit en
    février 2006
    Messages
    4 366
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric
    Âge : 46
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : février 2006
    Messages : 4 366
    Points : 8 506
    Points
    8 506

    Par défaut

    Citation Envoyé par HI9IMOMO Voir le message
    ...je ne sais pas comment faire
    Ben tu mets des printf() pour vérifier tes valeurs quoi. Tu prends le forum pour un débugueur géant ? On pourra t'aider sur comment maniper tel concept en C mais on va pas se casser la tête à détecter à ta place où t'as foiré ton algo...
    Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
    Tout ce qu'un individu reçoit sans rien faire pour l'obtenir, un autre individu a dû travailler pour le produire sans en tirer profit.
    Tout Pouvoir ne peut distribuer aux uns que ce qu'il a préalablement confisqué à d'autres car on n'accroît pas les biens en les divisant.
    Quand la moitié d'un peuple croit qu'il ne sert à rien de faire des efforts car l'autre moitié les fera pour elle, et quand cette dernière moitié se dit qu'il ne sert à rien d'en faire car ils bénéficieront à d'autres, cela s'appelle le déclin et la fin d'une nation.
    Dr. Adrian Rogers, 1931

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    novembre 2012
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : novembre 2012
    Messages : 16
    Points : 24
    Points
    24

    Par défaut

    Tu peux aussi mettre des point d'arrêt ou lancer ton programme ligne par ligne et vérifier ce que contiennent tes valeurs.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •