c, birim matris
20/10/2009, 11:59 | c - c++ kategorisinde yayınlandı | Yorum yapınEtiketler: birim matris, c, code, kaynak, kod, matris, source
dizi içerisindeki matrisi birim matrise ceviren program
#include
#define str // satyr sayysy giriliyor
#define stn str+1 // sütün sayysy=satyr+1 giriliyor
void yaz( double x[str][stn] ); // dizi’nin ekrana yazdyrylmasy
int main(int argc, char *argv[])
{
double dizi[str][stn]={{10,2,-1,27},
{-3,-6,2,-61.5},
{1,1,5,-21.5}};
double temp;
int q,a,b,n;
// KLAVYEDEN GIRIS ICIN GECICI OLARAK SILINDI
/* printf(“n e n matrisin satir sayisini giriniz:” );
scanf(“%d”,&n);
for(a=0;a<str;a++){
for(b=0;b<stn;b++)
{
printf("matrisin %d. satir %d. stun elemanini giriniz:\n",a+1,b+1);
scanf("%f",&a[a][b]);
}
}//matrisin elemanlari girildi*/
yaz(dizi);
printf("\n");
for (q=0;q<str;q++){
temp=dizi[q][q];
for (a=q; a<stn;a++){ // q'ncü satyryn q'ncü elemanyny 1'e e?itliyoruz
dizi[q][a]=dizi[q][a]/temp;} // 1'e e?itleme bitti
for(b=q+1;b<str;b++){ // ileri do?ru yok etme uygulanyyor
temp=-1*dizi[b][q];
yaz(dizi);
printf("\n");
for (a=0; a=0 ; q–){ // Birim matris formuna indirgeniyor
for (a=q+1; a<stn-1; a++){ // Ylgili sütun ve son sütun üzerinde i?lem yapylyyor
temp=-1*dizi[q][a];
dizi[q][a]=dizi[q][a]+(dizi[a][a]*temp);
dizi[q][stn-1]=dizi[q][stn-1]+(dizi[a][stn-1]*temp);}}
printf("\n\n\n\n\n\n");
yaz(dizi); // Elde edilen birim matris ekrana yazdyrylyyor
system("PAUSE");
return 0;
}
void yaz ( double x[str][stn] ) // Dizi de?erlerinin ekrana yazylmasy
{
int m,n;
printf("———————————–\n");
for (m=0; m<str; m++){
for (n=0; n<stn-1 ; n++){
printf("%8.2f",x[m][n]);}
printf("%8.2f",x[m][4]);
printf("\n");
}}
Yorum yapın »
Bu yazıya yapılan yorumlar için RSS beslemeleri. URI'nin geri izlemesini yap.
Yorum yapın
WordPress.com'dan blog alın. | Tema Pool, Borja Fernandez tarafından yapılmıştır.
Yazılar ve yorum feeds.