Visualizzazione dei risultati da 1 a 5 su 5

Discussione: esercizio matrice

  1. #1

    esercizio matrice

    salve,mi manca questo esercizio per completare un appello!!!sembra il più banale ma è l unico che nn mi parte...vi lascio la traccia e il mio procedimento:

    Scrivere un metodo CREA che riceve una matrice di interi A e restituisce una matrice B delle stesse dimensioni di A.La j-esima colonna di B sarà uguale alla j-esima colonna di A se j è pari,mentre sarà uguale all inverso della j-esima colonna di A se j è dispari.

    codice:
    public class esercizio33 {  
       public static int[][]crea (int[][]a){ 
      int[][]b=new int [a.length][a[0].length]; 	
      for (int j=0;j<a[0].length;j+=2){ 		
      for (int i=0;i<a.length;i++) 		   
      b[i][j]=a[i][j]; 		 		
      } 	 	 	
      for (int j=1;j<b[0].length;j+=2){ 		
      for (int i=b.length-1;i>0;i--) 		
      b[i][j]=a[i][j]; 	
      } 		 		 	
      return b;	 
      } 	
      public static void main(String[] args) {
      int[][]a={{1,0,3,9,1},{1,3,0,0,3},{0,1,6,2,12},{9,2,4,0,1},{0,5,5,11,8}}; 		   int[][]b=crea(a); 		
    for (int i=0;i<b.length;i++){
     for (int j=0;j<b[0].length;j++) 				
     System.out.print(b[i][j]+"  "); 			
     System.out.println(" "); 		
    }  	
    }  
    }
    Il seguente metodo mi restituisce la matrice originaria quindi non mi inverte le colonne dispari !!chi mi aiuta???
    perfavore

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non sappiamo piu' come dirtelo: javascript e java sono due cose diverse...
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    scusa br1 ho fatto di fretta è ho pubblicato la domanda nella sezione sbagliata!!!!ineffetti si non conosco la differenza con javascript!!!e lo ammetto sono una schiappa in questo campo!!!devo passare questo cavolo di esame e poi addio linguaggi di programmazione!non me ne può fregar di meno !!!perdonami ancora se ti ho irritato!!!!buon anno!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non è proprio un buon modo di mettere le cose in chiaro, ma almeno sei stato onesto. Non mi piace fare i compiti per casa di altri (soprattutto quando il codice è formattato di mmmmmm....a), comunque vediamo di metterci mano:

    - ottima l'idea di fare due cicli invece di arrovellarsi il cervello con if / else sugli indici delle colonne, quindi manteniamo l'approccio. Quello che invece non mi piace molto è l'inversione nel secondo doppio ciclo, da "a" a "b"... per carità, tanto hanno le stesse dimensioni, garantito, ma è solo un fatto di ordine "mentale"

    - altra cosa, a me piace ciclare su righe e colonne, ma quello è del tutto personale.

    Dunque mettendo insieme un po' di cose:
    codice:
    for (int i = 0; i < a.length; i++) {
        for (int j = 0; j < a[0].length; j=j+2) {
            b[i][j] = a[i][j];
        }
    }
    for (int i = 0; i < a.length; i++) {
        for (int j = 1; j < a[0].length; j=j+2) {
            b[i][j] = a[a.length-1-i][j]; //inverto la colonna, ovvero pesco dal fondo (righe)
        }
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    grazie mille Andrea!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.