terça-feira, 10 de maio de 2011

Calcular orbitais de uma matriz em C

#include<stdio.h>
#include<stdlib.h>
int main(void){
int D[3][3], i, j, k, A[3][3], cont2, v[3], cont, B[3][3], d[3];

    printf("Calcularemos as orbitas de um vetor, mas antes, entre com uma matriz A: \n\n");
    for(i=0;i<3;i=i+1){//Entrada dos valores da Matriz
             for(j=0;j<3;j=j+1){
                  printf("Digite o valor de A[%d][%d]: ", i , j);//Nao coloquei \n pq nao queria um espacamento muito grade, uma vez q eu digito e dou enter ele ja pula linha mesmo sem o \n
                  scanf("%d", &A[i][j]);         
             }
    }
    printf("\nAgora digite um vetor para calcularmos suas orbitas: \n\n");
    for(j=0; j<3; j=j+1){
                  printf("Digite o valor de v[%d]: ", j);
                  scanf("%d", &v[j]);
             }
           for(i=0; i<3; i=i+1){
             for(j=0;j<3;j=j+1){
                                D[i][j]=A[i][j];
                                B[i][j]=0;
                                }
                                }  
    for(cont=0;cont<50;cont++){
      for(i=0; i<3; i=i+1){
                d[i]=0;
                }
            
                               
                               
                                               
             for(i=0; i<3; i=i+1){
             for(j=0;j<3;j=j+1){
                                for (k=0;k<3;k=k+1){
                                B[i][j] = B[i][j] + D[i][k] * A[k][j];
            }
        }
      }
       for(i=0; i<3; i=i+1){
             for(j=0;j<3;j=j+1){
                                D[i][j]=B[i][j];
                               
                                }
                                }
      
       for(i=0; i<3; i=i+1){
             for(j=0;j<3;j=j+1){
                               
                               
                                d[i] = d[i] + B[i][j] * v[j];
           
        }
        }
                  
       
        printf("A^%d * v = (%d,%d,%d)  \n",cont, d[0],d[1],d[2]);
        }
                     
                     
getchar();
getchar();                     
                      }

Nenhum comentário:

Postar um comentário