Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    2

    Aiuto esercizio Java

    davvero questa programmazione non mi vuole entrare in testa,ho provato a procedere nello svolgere l'esercizio,ma non appena mi concentro mi perdo subito ed entro nel panico...
    l'esercizio dice questo:

    Scrivere un metodo che prenda in input tre matrici, con le stesse dimensioni, di double e restituisca un boolean che indichi se le tre matrici presentano (in qualunque posizione) una colonna comune.

    ora quello che non capisco,è come fare a confrontare solo e soltanto le colonne di ogni matrice prese una a una?ad esempio,come confrontare ogni singola colonna di una matrice A con ogni singola colonna di una matrice B e C e poi lo stesso con le colonne di B e C?non ci arrivo proprio e non ho idea di come procedere.inoltre avrei bisogno di esercitarmi con esercizi di questo tipo,ma se non riesco a farne nemmeno uno non penso di riuscire a farne altri,cosa mi consigliate di leggere?

  2. #2
    penso tu debba stabilire una colonna e fare il controllo shiftando sulle righe
    I miei esempi in Java qui: http://cdpjavaexamples.altervista.org/index.html

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,327

    Moderazione

    Come espressamente indicato nel Regolamento interno, cerca di dare dei titoli significativi alle discussioni.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    2
    si ma shiftare come?il mio problema è proprio che non riesco a trovare il giusto algoritmo per svolgere l'esercizio,nè penso di essere in grado di implementarlo

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Core23
    si ma shiftare come?il mio problema è proprio che non riesco a trovare il giusto algoritmo per svolgere l'esercizio,nè penso di essere in grado di implementarlo
    Data una colonna devi prendere elemento per elemento per confrontarlo con quello di un'altra colonna alla stessa riga (di un'altra matrice) per verificare se 2 colonne sono uguali.
    Si tratta di un semplice ciclo for. Se hai una matrice double[][] mat, allora tieni "fissa" una colonna con una variabile c e con un ciclo for con indice r cicli sulle righe (il numero di righe è dato da mat.length, la lunghezza della prima dimensione)

    Per i confronti tra le colonne delle varie matrici, beh, devi fare un po' di combinazioni. Ma basta ragionarci un pochino.

    Da quello che dici "se le tre matrici presentano (in qualunque posizione) una colonna comune" io deduco che in ognuna delle 3 matrici ci sia una colonna con gli stessi valori.

    Quindi con le prime due matrici A e B fai: ogni colonna di A la confronto con ognuna delle colonne di B. Hai già capito, tutte le combinazioni possibili. Se A ha 3 colonne e B 3 colonne farai 9 confronti tra colonne.

    Appena trovi che 2 colonne, una di A e una di B sono uguali allora scatta il confronto tra questa (di A o B è indifferente) con tutte quelle della matrice C.

    Se da questi confronti trovi una uguaglianza, vuol dire che in A, B e C c'è una colonna comune.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.