cs_desco182
Messages postés15Date d'inscriptionjeudi 11 décembre 2008StatutMembreDernière intervention21 juin 2010
-
10 mars 2009 à 04:03
cs_desco182
Messages postés15Date d'inscriptionjeudi 11 décembre 2008StatutMembreDernière intervention21 juin 2010
-
11 mars 2009 à 17:52
Salut a quiconque sur le forum qui aimerait porter des corrections svp
#include
#include<conio.h>
#include
#include<dos.h>
#define max 10
float A[max][max], B[max], X[max], T;
int i, j, k, l, n;
char choix;
/***************************************************************************
phase de lecture
***************************************************************************/
void GAUSS(){
do{
clrscr();
gotoxy(9,11); cout<<" Entrer la dimension des matrices formant le systeme : ";
cin>>n;
if((n<2)||(n>max)){
clrscr();
gotoxy(9,11); cout<<"\a Dimension invalide, celle-ci doit etre comprise entre 2 et "<<max<<".";
gotoxy(15,12); cout<<" SVP, Pressez 'ENTER' pour un autre essaie. ";
delay(1700);
// getch();
clrscr();
}
}
while((n<2)||(n>max));
clrscr();
delay(800);
cout<<"\n\tMAINTENANT, ENTRER LES ELEMENTS DANS L'ORDRE QUI SUIT.\n\n";
delay(800);
for(i=0;i<n;i++){
for(j=0;j<n;j++){
cout<<"\tEntrer l'element "<<(i+1)<<"e ligne "<<(j+1)<<"e clonne de la matrice : ";
cin>>A[i][j];
}
cout<<endl<<"\tEntrer le "<<(i+1)<<"e element des termes constants : ";
cin>>B[i];
cout<<endl;
}
clrscr();
gotoxy(15,10);cout<<"\tVOICI LA MATRICE AUGMENTEE (A:B)"<<endl<<endl;
for(i=0;i<n;i++){
cout<<"\t\t\t";
for(j=0;j<n;j++)
cout<<setw(5)<=0;i--){
float s=0;
for(k=i+1;k<n;k++)
s=s+(A[i][k]*X[k]);
X[i]=(B[i]-s)/A[i][i];
}
for(i=0;i<8;i++){
clrscr();
gotoxy(25,i); cout<<" Le systeme a pour solution :"<<endl<<endl;
delay(80);
}
for(i=0;i<n;i++)
cout<<setw(25)<<setprecision(3)<<"\t\tX"<<(i+1)<<" = "<<X[i]<<endl;
}
getch();
}
void intro()
{
clrscr();
cout<<"\n\n\n\n\n\t\t\tBIENVENUE DANS LE PROGRAMME";
cout<<"\n\n\t\tCher utilisateur,\n";
cout<<"\t Dans le soucis de vous faciliter les taches\n";
cout<<"\t dans la resolution d'un systeme de n equation\n";
cout<<"\t … n inconnue qui est presenter sur la forme de:\n";
cout<<"\t\t\t [A].[x]= [b]\n\n";
cout<<"\t Cet programme est construit juste pour permettre,\n";
cout<<"\t en utilisant la methode de Gauss suite … n-1 iteration.\n\n";
cout<<"\t Cette methode consiste tout d'abord … triangulariser\n";
cout<<"\t la matrice de [A] augementer de [b] puis trouver\n";
cout<<"\t l'ensemble des solutions du systeme ainsi obtenu";
getch();
}
void MENU()
{
clrscr();
textbackground(MAGENTA);
gotoxy(10,4); cout<<"I-> INTRODUCTION";
gotoxy(10,6); cout<<"G-> METHODE DE GAUSS";
gotoxy(10,8); cout<<"Q-> QUITTER LE PROGRAMME";
gotoxy(15,9); cout<<"FAITES UN CHOIX : ";
choix=getch();
switch(choix){
case 'i':
case 'I':
{
intro();
break;
}
case 'g':
case 'G':
{
GAUSS();
break;
}
case 'q':
case 'Q':
{
break;
}
default:
{
gotoxy(10,22); cout<<"Mauvais choix";
getch();
}
}
}