|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Jun 2007
Messaggi: 8
|
[Java] come ordinare un array bidimensionale
ciao ragazzi sono nuovo e sono un novello come vedrete anke in programmazione
pero voglio imparare spero mi potrete aiutare anke se so che forse per voi faro domande banali vi espongo il mio problema /************************************************************************************************** Esercizio della seconda prova d'esame di Prog1 Scrivere un metodo che prenda in input un array bidimensionale A di long, e restituisca un array A' ottenuto da A invertendo l'ordine degli elementi in ogni singola colonna di indice dispari es:input [(2,6,4),(1,9,0),(3,7,7),(5,8,5)],output[(2,8,4),(1,7,0),(3,9,7),(5,6,5)] ****************************************************************************************************/ public class Esame{ public static void main(String[]args){ long [][] A={{1234,456,876,9876,},{7545,38,377,3442,}}; System.out.printl(metodo(A)); } public static long[][] metodo(long [][]A){ } } ho fatto il main ma nn ho capito come fare ad invertire larray sapete aiutarmi Ultima modifica di kusco : 29-06-2007 alle 14:21. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Tieni presente che in Java gli array a più dimensioni sono semplicemente degli "array di array". Cioè tecnicamente è possibile che ogni riga dell'array bidimensionale sia di lunghezza diversa dalle altre (cioè una matrice non rettangolare). Nel tuo caso presupponiamo che quella che viene passata sia rettangolare. Innanzitutto inizia a determinare il numero di colonne. Questo lo scopri andando a vedere la lunghezza della prima riga, cioè A[0].length (e qui appunto supponiamo che l'array sia rettangolare). Quindi determini il numero di righe, cioè A.length. A quel punto devi fare un ciclo for per prendere tutte le colonne con indice dispari 1, 3, 5 ..... Quindi dovresti fare l'ordinamento della colonna. L'unica cosa è che non hai specificato quale algoritmo devi usare, se puoi sceglierlo tu o se ti è stato richiesto di usarne uno ben preciso.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: Jun 2007
Messaggi: 8
|
intanto grazie per l'aiuto
lalgoritmo lo posso scegliere io inoltrevolevo chiederti quando si costruisce uun metodo conviene dichiaarlo come public o come private??? |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2780
|
Se intendi usarlo all'esterno della classe lo dichiari come public, se invece lo usi solo all'interno dichiaralo pure private.
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 7863
|
Quote:
Esempio banale class Numero int numero public void somma(int i){ boolean b=verifica(i);..........} private boolean verifica(int c){ verifica qualcosasu c} come vedi dall' esterno nessuno deve conoscere e poter chiamare il metodo verifica che tu hai implementato. |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Sep 2006
Città: Catania
Messaggi: 742
|
kusco sei di catania?
__________________
Voglio sapere di che tessuto deve essere un discorso per non fare neanche una piega Alternativa ai pacchi di NLITE MacBook & Canon Ixus 80 |
|
|
|
|
|
#7 |
|
Junior Member
Iscritto dal: Jun 2007
Messaggi: 8
|
Grazie ragazzi ho capito la storia del public e del private nell'esercizio che devo fare io sicuramene lo devo dichiarare Public...
Cmq nn ce nessuno di voi che sa come svolgere l'esercizio.. Cmq si sono di ct e sei di informtica se nn sbaglio ti ho visto tu l'hai passat prog 1??? |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Mah ... io credo di averti spiegato bene, a grandi linee, come svolgere l'esercizio.
Tralascia un momento il public/private sul metodo. Essendo un esercizio, credo nessuno che si scandalizzi se dichiari il metodo public, private o con accesso di default .... Stabilisci innanzitutto quante righe e colonne ha l'array bidimensionale (l'ho spiegato sopra ...) quindi fai un ciclo for in cui la variabile del ciclo indica la colonna. Devi prendere quelle con indice dispari. Ti basta testare se il bit 0 è a '1' per sapere se l'indice è dispari. A quel punto utilizzi l'algoritmo di ordinamento che hai scelto (e che fino ad adesso non hai specificato quale). Consiglio: inizia a buttare giù del codice, se hai problemi, postalo che vediamo.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Sep 2006
Città: Catania
Messaggi: 742
|
Quote:
ormai gli esercizi di Gallo li conosco a memoria... il difficile non è farli, ma capire il testo Ti ricordi di me vedendo sta foto? allora non passo inosservato ok ora passiamo all'esercizio: http://pastebin.ca/597030 e questa è una classe fatta da me che mi serve per velocizzare le cose sugli array, come stampe,riempimenti random e cosi via http://pastebin.ca/597032 L'esercizio è fatto tutto sul main. Inoltre ho utilizzato interi per semplicità.è la stessa cosa per passarlo a metodo: public long[][] reverseColonne(long[][] in); alla fine fai un return out ps:si l'ho passata prog adesso sto combattendo con prog2
__________________
Voglio sapere di che tessuto deve essere un discorso per non fare neanche una piega Alternativa ai pacchi di NLITE MacBook & Canon Ixus 80 Ultima modifica di feboss : 30-06-2007 alle 15:15. |
|
|
|
|
|
|
#10 |
|
Junior Member
Iscritto dal: Jun 2007
Messaggi: 8
|
[quote=feboss;17733961]è pazzesco, ho riconosciuto che sei di catania solo dal tipo di esercizio...
ormai gli esercizi di Gallo li conosco a memoria... il difficile non è farli, ma capire il testo Ti ricordi di me vedendo sta foto? allora non passo inosservato certo che ti ho visto per quanti siamo in informatica, siamo 4 gatti hai ragione il difficile è capire il testo , mua vedremo come va sta rog 1 cmq grazie a te per la classe che hai creato e per leserizio svolto a desso lo studiero. grazie anke a tutti quelli che mi hanno risp vediamo che si po fa??? Ultima modifica di kusco : 30-06-2007 alle 15:54. |
|
|
|
|
|
#11 |
|
Bannato
Iscritto dal: Apr 2005
Città: sicily island
Messaggi: 3594
|
toh....dei miei colleghi
a breve io ho l'esame di prog1 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:59.




















