Ir ao conteúdo
  • Cadastre-se

Problema com programa em C (Matriz)


Posts recomendados

Opa Pessoal beleza?

Bem, primeiramente um feliz 2015 pra todos, tô eu aqui dia 02 já mexendo em código ;]

 

Mas vamos ao que interessa. 

Tem uma questão, na verdade é a última, da minha lista de exercício "das férias".

Segue a questão.

 

10. Fazer um programa que lê dois vetores bidimensionais e calcula o vetor diferença. Imprima o vetor diferença e a sua norma.
Exemplo 1:
Entrada:
1
2
2
2
Saída:
-1 0
1
 
 
Eu achava que ia fazer tranquilamente essa mas sinceramente TRAVEI. Ainda sou iniciante em C e fugiu um pouco do meu controle.
Não sei se a questão ficou clara, mas pra fazer uma Matriz simples (tab[2][2] mesmo) e SUBTRAIR as linhas dessa matriz, jogar o resultado na tela e depois fazer a norma matricial que eu saiba é:
lklINt.png
 
Só que não faz sentido por causa do exemplo que tá na pergunta.
 
Mas como na real vai acabar sendo só uma norma matemática deixei por último, mas se alguém souber e já ajudar fico agradecido. Mas vamos ao código de SUBTRAÇÃO DAS LINHAS DA MATRIZ
 
#include <stdio.h>
 
int main() 
{ 
int i = 0, j = 0;
float tab[2][2], sub = 0.0;
 
printf
("Digite os valores da matriz:\n: ");
for(i=0;i<2; i++)
for(j=0;j<2;j++) 
scanf
("%f", &tab[i][j]); 
printf
("\n\nTotal por linha:\n\n");
 for(i=0;i<2;i++)
  {
    for(j=0;j<2;j++)
      {
        sub = sub - tab[i][j]; 
        printf
("\n Linha %d :%f\n", i, soma); 
       
sub = 0.0;
      }
  } 
system
("pause");
}
 
Aí ficou sério...
 
Link para o comentário
Compartilhar em outros sites

Feliz ano novo pra você também!

 

Seguinte, eu to meio enferrujado em C mais acho que ficaria mais ou menos assim: 

 

int main(){        float vet[2][2];            // Carregando o vetor    printf("Carregando o vetor ..\n");    for(int i = 0; i < 2; i++){            for(int j = 0; j < 2; j++){                    scanf("%f", &vet[i][j]);            }    }    // Printando a diferença    printf("Diferencas por linha: \n");    for(int i = 0; i < 2; i++){            for(int j = 0; j < 1; j++){                    printf("%f\n", vet[i][j] - vet[i][j+1]);                                                    }        }    system("pause");}
 
Não sei se a função que você procura pra fazer a norma é essa: 
    
float max(float num1, float num2){        float result;        if (num1 > num2)              result = num1;        else              result = num2;        return result;     }

Espero ajudar :)

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...