Resultat de compilation C++

tija -  
 tija -
Bonjour,


pourquoi j'obtient des resultat acompagner de nombre forme d'adress dans ce programme
#include <iostream>
int n=22; //par defaut n==22;
using namespace std;

main()
{
int i,j;
float M[n][n];
float x[n];
float b[n];
cout<<"********MATRICE M*************";
cout<<"entrez la dim de la matrice \n";
cout<<"dim=";
cin>>n;
for(i=0 ; i<n ; i++)
for(j=0 ; j<n ; j++)
{
if(i>j) M[i][j]=0;
else { cout<<"M["<<i+1<<"]["<<j+1<<"] ";
cin>>M[i][j]; }
}

cout<<"***les valeures du vecteur b:\n";

for(i=0 ;i<n ;i++) cin>>b[i];
x[n]=b[n]/M[n][n];

for(i=n ; i<=1 ; i--)
{

float f=0;
for(j=n ; j<=1 ; j--)
f+=(M[i][j]* x[j]);
x[i]=(b[i]-f)/M[i][i];
}
cout<<"la resolution du systeme MX=b \n";
for(i=0 ; i<n ; i++ )
{cout<<"[";
for(j=0 ; j<n ; j++) cout<<" "<<M[i][j];
cout<<"]";
cout<<" [X"<<i+1<<"] ";
cout<<" =[";
cout<<b[i]<<"]\n";}
cout<<"est le vecteur \n" ;
cout<<"X (";
for(i=0 ; i<n ; i++) cout<<x[i]<<";";
cout<<")t ";//TRANSPOSET
system("pause");

}

A voir également:

3 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Plusieurs points à corriger :

Le point d'entrée doit être : int main(), et tu dois avoir un return 0; à la fin.

Lorsque tu fais float M[n][n];, n doit être constant, donc const int n=22;
Après libre à toi d'utiliser une dimension moins importante par exemple cin >> m

Avec ces modifications, le résultat donne un format float classique (en notation scientifique) X (-1.07374e+008;-1.07374e+008;-1.07374e+008;)t par exemple
0
tija
 
le probléme c'est ke je veux po cette forme d'affichage je veux just des resultat de forme float 3,09132
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
C'est l'affichage ostream& operator<< (float& val); qui fait ça par défaut, regarde comment fonctionne le manipulator fixed ça devrait résoudre ton problème.
0
tija
 
aider moi svp
0