Programa en C++ (matrices)

balmunG_

Buenas, hace poco que estoy programando y me he enzarzado en el tema de vectores y matrices, y después de escribir un programilla pues veo que no me funciona (típico). El caso es que no me da ningún error al compilar y lo que pasa es un poco raro, y es que cuando hace el primer scanf se queda pillado, bueno, sale la _ parpadeante pero no me deja entrar nada. Lo compilo con DevC++ para windows.

Aquí os dejo el código, aparte si queréis opinar y mejorarlo, por mí bien, pero me interesa más que me digáis que falla porqué así lo veo y lo aprendo.

#include <stdio.h>
#include <math.h>
int main()
{
&nbsp;&nbsp;float matriu1[3][3],matriu2[3][3],matriu3[3][3],resultat;
&nbsp;&nbsp;int i=0,j=0,i2=1,j2=0;
&nbsp;&nbsp;//Entrada de datos
&nbsp;&nbsp;while(i2<=2)
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;while(i<3)
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("Introdueix la fila %i de la matriu %i: ",i+1,i2);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(j<3);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(i2==1) scanf("%i",&matriu1[j]);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(i2==2) scanf("%i",&matriu2[j]);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j++;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i++;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;i2++;
&nbsp;&nbsp;}
&nbsp;&nbsp;//Producto de matrices
&nbsp;&nbsp;i=0;
&nbsp;&nbsp;j=0;
&nbsp;&nbsp;i2=0;
&nbsp;&nbsp;j2=0;
&nbsp;&nbsp;while(i<3)
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;j=0;
&nbsp;&nbsp;&nbsp;&nbsp;while(j<3)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resultat=resultat+matriu1[j]*matriu2[j];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j++;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;matriu3[i2][j2]=resultat;
&nbsp;&nbsp;&nbsp;&nbsp;i2++;
&nbsp;&nbsp;&nbsp;&nbsp;j2++;
&nbsp;&nbsp;&nbsp;&nbsp;i++;
&nbsp;&nbsp;}
&nbsp;&nbsp;//Muestra el resultado del producto
&nbsp;&nbsp;i=0;
&nbsp;&nbsp;j=0;
&nbsp;&nbsp;i2=0;
&nbsp;&nbsp;j2=0;
&nbsp;&nbsp;while(i<3)
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;j=0;
&nbsp;&nbsp;&nbsp;&nbsp;while(j<3);
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("%i ",matriu3[j]);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j++;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;printf("\n");
&nbsp;&nbsp;&nbsp;&nbsp;i++;
&nbsp;&nbsp;}
}

Se que es un código un poco tosco, pero tened en cuenta que soy principiante, así que no me empaléis ni nada xD
EDIT: He tabulado como he podido ;\

Saludos y gracias de antemano.

Gn0m4

Tal vez el int main () deberia de ser un void main (), sino, pon abajo del todo un Return 0;
Por otro lado, deberias acostumbrarte a inicializar los arrays a 0 en este caso.
Por otro lado, como dices, el codigo es un poco tosco xd

Un saludo

Riu

printf("Introdueix la fila %i de la matriu %i: ",i+1,i2);
el problema esta aqui tu pides el dato pero no le das entrada por lo que, en el siguiente no puede hacer la comprobacion con ningun dato, tienes que hacer un scanf y pasarle la variable que estas pidiendo , pd: no se catalan no se lo qu estas pidiendo.

BlisZ

hay que ser un poco torpe para no saber que significa "introdueix", "resultat", etc

#1 si programaras en Español, como Dios manda, no te pasaria

y para pegar codigo te recomiendo www.pastebin.com, asi no tendras que indentar a mano y los demas lo leeremos mejor y con colorines

Cyph3r

Porque lo llamais C++ si eso es C ? :S

C++ es una capa más de C que incluye la orientación a objetos y ahí no hay nada de eso.

Y almenos podrías decir cual es tu objetivo , sumar matrices ? División ? multiplicación ?

De esta forma te podríamos ayudar mejor.

Usuarios habituales

  • Cyph3r
  • BlisZ
  • Riu
  • Gn0m4
  • balmunG_