Pages: 1 [2] 3   Go Down
Print
Author Topic: II prova 26-04-10  (Read 5141 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #15 on: 10-02-2011, 13:22:23 »

ok, fammi sapere per altri problemi
Logged

"Che la Forza sia con Te"
Impact
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 107



« Reply #16 on: 10-02-2011, 13:37:29 »

Per quanto riguarda questo esercizio, mi sono bloccato all'ultimo punto... il resto mi va che è una meraviglia:

2 ) si inseriscano in una matrice 20×20 di char i caratteri restituiti da guess (un oggetto
per ogni riga) e successivamente si concatenino nell’ordine tutti gli elementi della
diagonale principale.

io stavo facendo così:
Code:
char [][] matrice = new char [20][20];
for (int i=0;i<matrice.length;i++)
{
for (int j=0;j<matrice[0].length;j++)
{
matrice[i][j] = ????;//che devo mettere qua?
}
}
Logged
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #17 on: 10-02-2011, 13:52:05 »

non riesco a fare il punto 1  [Emoticon] Rosik Asd
Code:
String str="";
for (int i=0;i<vett.length;i++)
{
if(vett[i] instanceof B)
str += (vett[i].estrai());
}
System.out.println(str);
Logged
Impact
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 107



« Reply #18 on: 10-02-2011, 13:58:49 »

non riesco a fare il punto 1  [Emoticon] Rosik Asd
Ecco come l'ho fatto io:
Code:
//1) si concatenino nell’ordine tutti i caratteri restituiti da estrai, relativamente agli oggetti di classe B;
String concatena="";
for (int i=0;i<vett.length;i++)
{
if (vett[i] instanceof B)
concatena += ((B)vett[i]).estrai();
}
System.out.println(concatena);
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #19 on: 10-02-2011, 14:00:39 »

esattamente come ha fatto impact, estrai esiste nella classe B quindi devi fare un cast forzato a B, xkè ricordati che in realtà il vett è una collezione di oggetti di tipo A, anche se poi si referenziano i B e C...
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #20 on: 10-02-2011, 14:50:04 »

benissimo.. ora nel secondo punto però.. non capisco cosa vuole di preciso... in pratica dovrei convertire in array di char il metodo guess() e poi passare ogni carattere in ogni casella del nuovo array20*20???
Code:
char [][] c = new char [20][20];
for(int i=0;i<c.length;i++)
{
        for(int j=0;j<c[0].length;j++)
{
c[i][j] = (vett[i].guess()).toCharArray();// ??????? so che non è giusto xD
}
}
for(int i=0;i<c.length;i++)
{
System.out.print(c[i][i]);
}
System.out.println();
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #21 on: 10-02-2011, 15:06:45 »

no allora siccome la collezione vett è di 20 oggetti, e ogni oggetto ha come attributo due string di 10 caratteri ciascuno, praticamente devi prendere la matrice, prendere una riga e mettergli tutti i caratteri della stringa lunga 20 dell'oggetto. siccome hai 20 oggetti, hai 20 righe da riempire di char...
Logged

"Che la Forza sia con Te"
Impact
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 107



« Reply #22 on: 10-02-2011, 15:33:17 »

Stefano potresti gentilmente postare il codice di questo ultimo punto? Non riesco a venirne a capo neanche io...
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #23 on: 10-02-2011, 15:42:14 »

Code:
char[][] matchar=new char[20][20];
String diagonale="";
for(int i=0;i<matchar.length;i++)
for(int j=0;j<matchar[i].length;j++)
{
matchar[i][j]=vett[i].guess().charAt(j);
if(i==j)
diagonale+=matchar[i][j];
}
System.out.println(diagonale);

ecco qui, diagonale è la stringa che vuole che si stampi x la richiesta
Logged

"Che la Forza sia con Te"
Impact
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 107



« Reply #24 on: 10-02-2011, 15:46:58 »

Minchia che scemo che sono... mettevo vett.guess(charAt(j)) invece che vett.guess().charAt(j)
Grazie mille..
Logged
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #25 on: 10-02-2011, 15:57:42 »

cavolo xD
anch'io c'ero quasi...  testate
mah... questa prova la vedo brutta   
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #26 on: 10-02-2011, 16:19:23 »

è più facile forse fare la seconda che la prima....alla fine ti dice tutto ciò che c'è da fare con il diagramma, basta sapere la sintassi delle dichiarazioni di classi e metodi e state tranquilli
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #27 on: 10-02-2011, 16:33:09 »

eheh in effetti si.. c'è tutto nel diagramma.. è che mi confondo facilmente con tutti questi costruttori..richiamare i metodi.. controllare le instanze.. ecc ecc
boh.. vedremo 
ma tu come fai a sapere queste cose ?!
hai studiato su qualche libro o link?! 
Logged
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #28 on: 10-02-2011, 16:45:09 »

conosco un ragazzo che ha già dato la materia e mi aveva già fatto vedere anticipatamente un esempio di seconda e uno di terza e mi ha detto tante cose sul prof e su cosa si fa. il resto l'ho imparato solo, studiando...sono facili alla fine queste cose...è l'interpretazione dell'esercizio che è difficile..
Logged

"Che la Forza sia con Te"
markus182
Matricola
*
Offline Offline

Gender: Male
Posts: 28



« Reply #29 on: 10-02-2011, 16:53:13 »

capito..  
e per la terza io non ho capito granchè.. cioè.. qualcosina l ho capita.. per l'UML.. ma poi la parte del main non l'ho capita granchè bene  :S
secondo me il prof doveva dedicare un po' più di tempo per le esercitazioni  
« Last Edit: 10-02-2011, 16:55:27 by markus182 » Logged
Pages: 1 [2] 3   Go Up
Print
Jump to: