Matrici

di il
3 risposte

Matrici

Devo fare un programma che mi inverte la prima riga di una matrice con l'ultima e viceversa, ma riesco solo ad invertire la prima con l'ultima
mi potete aiutare?
#include <stdio.h>
#include <math.h>

void inverti_righe(){
  int r,c;
  int righe;
  printf("righe:\n");
  scanf("%d", &righe);
  int colonne;
  printf("colonne:\n");
  scanf("%d", &colonne);
  int a[righe][colonne];
  int prima[0][colonne];
  int copia[0][colonne];
  int ultima[0][colonne];

  for(r=0; r<righe; r++){
    for(c=0; c<colonne; c++){
      printf("riga %d, colonna %d\n", r, c);
      scanf("%d", &a[r][c]);
    }
  }
  for(r=0; r<righe; r++){
    printf("\n");
    for(c=0; c<colonne; c++){
      printf(" %d ", a[r][c]);
    }
  }
  if(righe>=2){
for(r=0; r<=0; r++){
  printf("\n");
  for(c=0; c<colonne; c++){
    copia[0][c] = a[0][c];
    a[righe-1][c] = prima[r][c];


  }
}

for(r=righe; r<=righe-1; r++){
  printf("\n");
  for(c=0; c<colonne; c++){
  a[0][c] = copia[0][c];
  }
}

for(r=0; r<righe; r++){
  printf("\n\n");
  for(c=0; c<colonne; c++){
    printf(" %d ", a[r][c]);
  }
}




  }
else{
  printf("Non si può effettuare lo scambio\n");
}
}

int main(){
  inverti_righe();


}

3 Risposte

  • Re: Matrici

    e viceversa
    Questa non si capisce.
    ma riesco solo ad invertire la prima con l'ultima
    Che è quello che vuoi a quanto hai detto. Quindi?
  • Re: Matrici

    Devo mettere la prima riga al posto dell'ultima e di conseguenza l'ultima al posto della prima, ma riesco a fare solo il primo passaggio
  • Re: Matrici

    Perché tutto quel codice? Ti basta
    
    int x;
    
    for (c = 0; c < colonne; c++) {
    	x = a[0][c];
    	a[0][c] = a[righe - 1][c];
    	a[righe-1][c] = x;
    }
    
    Pensaci un po' ...
Devi accedere o registrarti per scrivere nel forum
3 risposte