ciao a tutti, da poco a scuola abbiamo iniziato il c++ e subito giu con le matrici
il codice riempe una matrice 3x3 con i valori da 1 a9 e poi deve copiarli nella matrice2 nell'ordine inverso ([0][0] diventa [2][2]).
inoltre lo scambio deve essere fatto seguendo questo percorso:
codice:
--->---|
|
---<---|
|
|-->----
in teoria saprei come fare, solo che all'esecuzione da o err e 0 warn ma da "matrice.exe il prog ha eseguito un operazoine nn valida e verrà terminato"
prima avevo anche provato a prendere i valori in input da tastiera, li prenderva e sutbito dopo errore...
che c'è che nn va?!?
codice:
#include "iostream.h"
#include "stdio.h"
#include "string.h"
int inv(int f){
int tmp;
tmp=f;
switch(tmp){
case 1:
f= 3;
break;
case 3:
f=1;
break;
}
return tmp;
}
int main()
{
int v1[2][2];
int v2[2][2];
int r,c,ir,ic;
cout << "Input valori\n";
for(r=0;r<3;r++){
for(c=0;c<3;c++){
v1[r][c]=(r-1)*3 +c;
cout<< v1[r][c];
}}
r=0;
c=0;
for(r=0;r<3;r++){
for(c=0;c<3;c++){
cout <<"Ciao\n";
ir=inv(r);
ic=inv(c);
if(r%2==0){ //pari
v2[r][c]=v1[ir][ic];
}else{
v2[ir][ic]=v1[r][c];
}
cout<< r << " - " << c << "\n";
}
}
cout << "Matrice1\n";
for(r=0;r<3;r++){
for(c=0;c<3;c++){
cout << v1[r][c] <<"\t";
}
cout << "\n";
}
cout << "\n\n";
cout << "Matrice2\n";
for(r=0;r<3;r++){
for(c=0;c<3;c++){
cout << v2[r][c] <<"\t";
}
cout << "\n";
}
return 0;
}