![]() |
Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Fondamenti di architettura e programmazione (http://www.dsy.it/forum/forumdisplay.php?forumid=234)
-- [Info Generale] Progetto LA DAMA (http://www.dsy.it/forum/showthread.php?threadid=2403)
Progetto Info Generale: LA DAMA
Ciao! Scrivo questo thread per riunire in un solo posto tutti i pareri, i commenti, i suggerimenti, i dubbi ecc ecc ecc sul progetto che dovremo fare per Malchiodi (Informatica Generale ).
Scrivete se avete qualcosa da dire o chiedere in merito!!
Ciao!
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
mha, non credo scriveranno in molti forse .. rischio copia o ruba idee ihih ![]()
cmq io avevo una curiosità: sul pdf di malchiodi le pedine sono disposte sulle caselle bianche e, muovendosi ovviamente solo in diagonale, non andranno mai sulle nere.
io però quando giocavo a dama negli anni passati ho spesso visto le pedine sulle caselle nere ... e non ricordo di averle viste sulle bianche.
ora: forse mi sbaglio io (molto probabile) ... voi?
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Per la storia delle caselle, è vero che nei luci di Malchiodi c'è un errore: le regole sono che tutte le pedine (sia bianche che nere) devono stare solo negli spazi neri e non vanno mai in quelli bianchi. Cmq è lo stesso ... ha cambiato solo gli spazi neri con quelli bianchi !
Per il progettino io ho iniziato a fare qualcosa, ma ho molti problemi nella gestione dei movimenti e nell'array per gestire le caselle della scacchiera !
Lui ci ha detto di mettere le lettere nelle colonne e i numeri nelle righe, ma di che tipo dovrà essere questa array ? String o Int ?
__________________
Peppe
http://www.peppedotnet.it
nessuno conosce l'url di un buon sito dove c'è una specie di indice con tutti i comandi java?
forse c'è già nel pacchetto j2se che ho scaricato ma non lo trovo.
se qualcuno mi può dare una mano sarebbe gradita ![]()
thanks
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Io ho trovato questo !
Sono tutti i package dell'ambiente Java, era questo che cercavi ?
__________________
Peppe
http://www.peppedotnet.it
Ah, un'altra cosa : noi i vettori li abbiamo trattati ?
__________________
Peppe
http://www.peppedotnet.it
beh, di certo non mi aspettavo che mi postassero il codice del programma già fatto...magari!
Il thread era anche per dubbi più generici tipo consegne, interpretazione delle indicazioni del malkiod...
x morf: In dos il nero e il bianco sono relativi, caselle colorate risultano bianche, anche se magari le si colora per intenderle nere... insomma avete capito, no? E poi in sostanza, ovunque le metti basta che non vanno su quelle dell'altro colore!
Ciao!
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
Ma ... per quell'array Joker ?
__________________
Peppe
http://www.peppedotnet.it
a dire il vero non ci ho ancora ragionato sopra, mi sembra difficile che debba essere fatto int... però non saprei esattamente come farlo, devo ancora vedere un po' di teoria nuova e vecchia.
I vettori non li abbiamo fatti, o almeno, a me non risulta.
ciao
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
io la scacchiera in array l'ho fatta dopo qualche peripezia (ho aggiunto dettagli non richiesti, sono un pirletto
).
cmq credo un array di stringhe sia più comodo che di interi ... a meno che fai una scacchiera graficamente con caratteri come 1 o 0 ... oppure fai array di interi, ci passi il codice unicode del carattere |, e stampi ... ma mi pare stupido ![]()
![]()
x rif: grazie per l'url ma quello l'avevo già trovato su http://java.sun.com ... io volevo più una lista generica di comandi e operatori, non tanto di classi e metodi. ma grazie per lo sbattimento cmq ![]()
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Originally posted by morf
nessuno conosce l'url di un buon sito dove c'è una specie di indice con tutti i comandi java?
forse c'è già nel pacchetto j2se che ho scaricato ma non lo trovo.
se qualcuno mi può dare una mano sarebbe gradita
thanks
__________________
http://www.twitter.com/0m4r
ok morf, sulla scacchiera ci sono anche io, ma per i movimenti ?
__________________
Peppe
http://www.peppedotnet.it
per il vector mi sono dimenticato di risponderti ![]()
malchiodi l'ha citato l'altro giorno dicendo "per esempio all'orale vi potrei chiedere: perchè avete usato un array e non un vector? e se vi vedo spaesati vi chiedo cosa è un vector" ... testuali parole ... porc
!
io sinceramente non ricordo che sia stato trattato in modo approfondito, ma sono cmq andato sul libro a vedere ed è spiegato ... non l'ho usato cmq (buon vecchi e spigolosi array
).
rif, i movimenti devo iniziarli oggi pomeriggio, visto che ho finite le classi scacchiera e pezzi vari. cmq non dovrebbe essere difficile (almeno, per come ho impostato io il mio progetto) ... è solo questione di cambiare le coordinate ai pezzi.
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
domanda: qualcuno sa se c'è un comando java che corrisponde al comando dos "cls" ? (cleanscreen, che appunto ripulisce lo schermo ... quello che in pascal era clrscr ... insomma, ci sarà pure in java!)
grazie 
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
vedo se posso dare una mano a qualcuno con qualche (spero) dritta.
Per quanto riguarda i vettori:
la traduzione di array in italiano è vettore quindi quando si parla di vettori si può intendere 2 cose:
a) Un array (fisso, cioè la dimensione va specificata prima di eseguire il programma)
b) La classe Vector, che nn è nient'altro che un array dinamico (cioè che può variare il proprio numero di elementi durante l'esecuzione del programma, a seconda del fabisogno)
poi per quanto riguarda la matrice, (o array bidimensionale) nn vedo perchè farla String, è molto meglio farla int, di dimensione 8x8 dove ad esempio il 0 = cella vuota, 1 = pedina, 2 = dama
nn credo che in java ci sia il clear screen, una valida alternativa potrebbe essere di fare tot '\n' quanti sono le linee dello schermo (circa 24, poi dipende dalla finestra di visualizzazione), l'effetto è simile, forse un po' + lento, ma per questo programma va benissimo
beh spero di essere stato d'aiuto a qualcuno, purtroppo nn ho avuto ancora tempo di guardare bene il progetto, quindi nn posso ancora dare nessuno spunto
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
vedo se posso dare una mano a qualcuno con qualche (spero) dritta.
Per quanto riguarda i vettori:
la traduzione di array in italiano è vettore quindi quando si parla di vettori si può intendere 2 cose:
a) Un array (fisso, cioè la dimensione va specificata prima di eseguire il programma)
b) La classe Vector, che nn è nient'altro che un array dinamico (cioè che può variare il proprio numero di elementi durante l'esecuzione del programma, a seconda del fabisogno)
poi per quanto riguarda la matrice, (o array bidimensionale) nn vedo perchè farla String, è molto meglio farla int, di dimensione 8x8 dove ad esempio il 0 = cella vuota, 1 = pedina, 2 = dama
nn credo che in java ci sia il clear screen, una valida alternativa potrebbe essere di fare tot '\n' quanti sono le linee dello schermo (circa 24, poi dipende dalla finestra di visualizzazione), l'effetto è simile, forse un po' + lento, ma per questo programma va benissimo
beh spero di essere stato d'aiuto a qualcuno, purtroppo nn ho avuto ancora tempo di guardare bene il progetto, quindi nn posso ancora dare nessuno spunto
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
ops chiedo venia, ho appena guardato bene il progetto, penso che l'idea di usare un'array di interi, per quanto corretto logicamente, nn penso che malchiodi lo accetti, questo progetto serve per valutare la nostra capacità di utilizzare un linguaggio ad oggetti (Java in questo caso), quindi con l'ereditarietà, il polimorfismo ecc... quindi penso che sia + appropiato creare un array 8x8 di tipo pezzo (che potrà contenere quindi nelle proprie celle sia oggetti di tipo pedina che di tipo dama (proprietà del polimorfismo)). Poi la gestione del movimento delle pedine gestirlo tramite la classe scacchiera con appropriate funzioni e controlli. La classe pedina (o pezzo) dovrà contenere le informazioni di stato sui pezzi.
anche se ammetto che con questa gestione ci si complica un bel po la vita, aiuterebbe se dovesse usare la grafica, ma è orientata agli oggetti. L'idea che avevo prima invece era + orientato ad una programmazione strutturata (modello C o Pascal)
Cmq questa è solo una mia idea, nn è detto che sia giusta o che nn ci siano altre soluzioni o altre strade da percorrere. Ditemi cmq cosa ne pensate
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
no bhe avrai chiarito dubbi a molti credo, sei stato molto chiaro.
per il comando cls che non ha corrispondenza in java, avevo pensato anche io a un tot \n però bisogna ammettere che è abbastanza squallido ![]()
e cmq la tua idea è in linea di massima molto buona perchè, come ti sei corretto tu nell'ultimo post, segue i grandi temi della programmazione ad oggetti che malchiodi preferirebbe vedere nel progetto. è ovvio che poi uno può scegliere di adottare alcuni accorgimenti ... ma la sostanza è quella.
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Bene, sono felice di essere stato d'aiuto. Comunque se qualcuno ha qualche altra idea per il progetto la dica pure, sarei felice di poterne discutere, anche perchè ultimamente nn mi vengono molte idee in quanto programmo da mattina a sera (causa lavoro) e alla sera ho molta voglia di programmare ancora
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
da mattina a sera (causa lavoro) programmi in che? java?
se è così, avrai una dimestichezza davvero notevole ...
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Per il cancellare lo schermo anche io mi stavo chiedendo come si potesse fare. Cercando in forum.java.sun.com ho appurato che in java c'è la clamorosa mancanza di un comando dedicato per cancellare lo schermo, e sempre leggendo lì ho visto alcune proposte di soluzione. Ne riporto due: 1)importare un programma scritto in c che cancelli lo schermo; 2)Utilizzare il comando Runtime.exec("cls") , che mi sembrerebbe perfetto, ma che non sono ancora riuscito a far funzionare (mi dà errore "non static method exec cannot be referenced from a static context"
, se qualcuno risolve l'errore siamo a cavallo! )
Ciao!
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
ok, mi sono trovato davanti ad un errore e non so come corregerlo !
Ho creato un array di oggetti e ho dato ad ogni elemento di questo array due valori uno se nella casella c'era una pedina e il secondo per dare la posizione di quella casella ! Chiaramente in nelle caselle senza pedine ho messo " " cioè uno spazio !
Mi da questo errore quando vado a stampare l'array :
Exception in thread "Main" java.lang.nullPointerException
che è ?
__________________
Peppe
http://www.peppedotnet.it
Originally posted by morf
da mattina a sera (causa lavoro) programmi in che? java?
se è così, avrai una dimestichezza davvero notevole ...
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
E sulla classe Pezzo devo aggiungere qualcosa di particolare ?
Cmq, come mi hai detto tu la parola "mioArray" la tratta come una variabile...
__________________
Peppe
http://www.peppedotnet.it
ops mi correggo era così
code:
Pezzo myArray; for (int i = 0; i < 8; i++) for (int j = 0; j < 8; j++) myArray[i][j] = new Pedina ();
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
scusa, non so se mi sbaglio ... ma se dichiari myArray con "Pezzo myArray" e dopo fai "myArray[i][j] ) new Pedina()" non so se va ... I mean, forse gliel'hai messo nel costruttore di Pezzo, ma non si specifica che myArray è, appunto, un array ... credevo si facesse qualcosa come:
Classe[][] nomeArray = new Classe[i][j];
e così veniva creato un array bidimensionale di oggetti.
io non sono molto ferrato in java
, ma non capisco come possa accettare quella parte di codice riportato ... se sto sbagliando non deridetemi ![]()
![]()
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Anche io avevo fatto così ! E poi avevo creato 24 elementi di questo array con un'array list e gli avevo inizializzati con b per pedina bianca e n per pedina nera, e avevo messo un altro elemento che era la posizione che occupavano questi oggetti nella scacchiera.
Ma su Pezzo cosa ci devo mettere ? Io ho nesso un costruttore che prendeva due parametri (colore e posizione) e basta ...
E mi dava quell'errore lì !
__________________
Peppe
http://www.peppedotnet.it
io attualmente ce l'ho così e non mi ha ancora creato problemi.
nel costruttore di pezzo ho distinto l'output grafico ("b" per esempio) dal valore del pezzo (0 per pedina, 1 per dama) ... così nel caso uno voglia cambiare la visualizzazione del pezzo, non è costretto a modificare tutti gli if in cui si certificava il valore del pezzo solo dall'output grafico.
ripeto, io in java sono un po incapace ... però ormai l'ho presa come una sfida con me stesso! ![]()
![]()
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Io rimango sempre con quel problema !
Mi da un errore perchè quando vado a stampare tutti gli elementi dell'arry ci sono degli spazi vuoti !
Io ho fatto un controllo del genere :
if (mioarray[i][j] == null)
{
mioArray[i][j] = " ";
}
E mi da errore NullPointerException nella riga dell'if !!!!
__________________
Peppe
http://www.peppedotnet.it
allora probabilmente hai inizializzato in modo errato mioarray[i][j].
ora purtroppo sono di fretta, ma ci penserò su, anche se non posso capire se non ho materiale sotto mano.
prova a controllare il costruttore della classe, sebbene non credo sia quello il prob.
al max posta la dichiarazione dell'array
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Pezzo[][] scacchiera;
public void scacchiera()
{
Pezzo[][] scacchiera = new Pezzo[8][8];
}
__________________
Peppe
http://www.peppedotnet.it
si scusate, mi ero dimenticato i le quadre: prima bisogna indicarglielo così Pezzo [][]myArray;
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
Originally posted by Rifinitore
Pezzo[][] scacchiera;
public void scacchiera()
{
Pezzo[][] scacchiera = new Pezzo[8][8];
}

__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Ma con cosa lo riempo l'array ? E' un array di oggetti pezzo. Non potrò mettermi a riempire ogni elemento ?!
Io metto le 24 pedine e il resto ?
__________________
Peppe
http://www.peppedotnet.it
cioè creare l'array e riempire l'array sono due cose diverse.
a ogni indice dell'array metti un oggetto che ha un suo valore (differenziando cosi pedina e dama) e la sua posizione.
se l'array rimane vuoto la sua utilità non c'è ![]()
attenzione ad usare l'ereditarietà però ...
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
e per gli spazi vuoti ?
__________________
Peppe
http://www.peppedotnet.it
gli spazi vuoti non c'entrano, c'entrano con la classe Scacchiera
un array di 24 oggetti corrisponde a 12 pezzi bianchi e 12 neri
gli spazi vuoti non devono stare in questo array bensì nella gestione della scacchiera, no ?
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
giusto !
Ma allora questa array di 24 elementi non c'è bisogno di farlo bidimensionale !
__________________
Peppe
http://www.peppedotnet.it
effettivamente è vero
dopo riguardo il mio codice e vedo se l'ho fatto effettivamente bidimensionale
la cosa che poteva confondere era che, utilizzando coordinate x e y, veniva normale pensare ad array bidimensionali.
ma l'array bidimensionale va usato per la scacchiera e non per i pezzi ![]()
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
La professoressa Agostini, nella sezione calendario di webcen (http://webcen.usr.dsi.unimi.it/2002...calendario.html) ha scritto che gli argomenti del terzo compitino sono dalla lezione 22 alla lezione 28.
la lezione 28, nella seconda parte, tratta però della ricorsione, argomento che mi pare la stessa professoressa abbia a voce e poi nel riassunto del 22 escluso dagli argomenti del compitino.
conferme, smentite?
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Da come ha detto nell'incontro di mercoledì scorso gli argomenti sono questi :
1) passaggio di classi come parametri
2) ereditarietà
- uso di super()
- uso di this e this()
- overriding
3) gestione delle eccezioni
- intercettazione
- header di un metodo che non intercetta
4) gestione file
- uso file binari (read o write) con apertura
- uso file testuali (read o write) con apertua
- classi e file ( overloading metodi di write o read)
- classe StringTokenizer (per leggere un file testuale che ha una stringa e un numero)
- classe file
Io della ricorsione non ne ho sentito neanche parlare !
__________________
Peppe
http://www.peppedotnet.it
si si quell'elenco ce l'ho pure io scritto sui miei appunti ![]()
era solo per sapere la vostra opinione 
ok, ho sentito altri e hanno confermato che la ricorsione è esclusa.
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Semmai riuscirò a scrivere l'array, come pensi di trattare le mosse morf ?
__________________
Peppe
http://www.peppedotnet.it
se si fa una matrice 8x8 un idea potrebbe essere metere una variabile di stato booleana, pezzoAttivo ad esempio, che è true se il pezzo è presente, e false se lo spazio è vuoto, poi per i movimenti basta cambiare i lo stato del pezzo.
okkio ad usare il polimorfismo. Per chi nn abbia ancora capito cosa sia, detto in poche parole:
alla variabile di tipo pezzo può essergli assegna una variabile di tipo pedina o di tipo dama in quanto pedina e dama sono figlie di pezzo. nn è vero l'incontrario. Quindi
Pezzo p = new Pezzo();
Pedina ped = new Pedina();
Dama dam = new Dama();
p = ped; // OK
p = dam; // Ok
ped = p; // KO
ped = dam; // KO pedina nn è padre di dama
segue questo ragionamente:
una pedina è un pezzo, ma un pezzo nn è necessariamente una pedina (infatti può essere anche una dama)
è possibile quindi fare così
Pezzo mat[][] = new Pedina[8][8];
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
Ciao a tutti, anche io mi sto cimentando in questo progetto (non ce la farò mai...
). Grazie alle vostre risposte però mi sto facendo un'idea e mi siete molto utili.
Ho trovato una cosa che potrebbe fungere da cleanscreen ma non sembra funzionare: il comando \f che dovrebbe fare una nuova pagina, ma a me non funziona. Ne sapete qualcosa?
__________________
ÞµÐе
Fatti non foste a viver come bruti ma per seguir virtute e canoscenza
]=-----=[ ¿ Need Contact ? ]=------=[
]=-----=[ ~ ICQ ‡‡ E-mail ~ ]=------=[
]=-----=[ ¥ My DeviantArt ¥ ]=------=[
per rif: ho controllato il mio codice e l'array di pezzi l'ho fatto monodimensionale ... se mai ho parlato di bidimensionalità probabilmente mi sono confuso con l'array della scacchiera ![]()
per le mosse stavo pensando di fare un bel po di if annidati, e SOLO se sono soddisfatti tutti il programma procede, altrimenti bisogna reintrodurre una mossa.
e poi angelus ha ragione a usare il polimorfismo ... per esempio io l'ho usato nel codice ma non lo sapevo nemmeno ![]()
![]()
ho inizializzato l'array così pure io.
c'è anche la gestione dei turni da fare 
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
ok, ma se faccio immettere da tastiera una stringa di questo tipo : a1-b2 che sarebbe la mossa che l'utente vuole fare, come faccio a trasformare a1 in scacchiera[0][0] e b2 in scacchiera[1][1] e eseguire lo spostamento ?
__________________
Peppe
http://www.peppedotnet.it
eheh ![]()
io ho fatto una bella equazione ... c'ho lavorato su un po' perchè ho fatto una scacchiera un po' diversa
(lol)
cmq dovresti usare l'apposito metodo .charAt(x) dove x è l'indice per la posizione del carattere che vai a leggere nella stringa.
sfrutti il carattere che prendi per farlo combaciare con gli indici dell'array di scacchiera ...
cioè, credo si faccia così ... però te l'ho detto, non sono sicuro
!
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
scusa morf, fammi capire, tu hai usato un'array bidimensionale per la scacchiera poi un altro array per i pezzi?
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
il programma si può tranquillamente fare con un solo array (quello della scacchiera), ma non credo che Malchiodi sarebbe d'accordo.
se si usasse solo un array (quello bidi della scacchiera) si potrebbero gestire tutte le mosse, gli output grafici, certo ... ma non si userebbe polimorfismo ereditarietà etc etc.
anche se ultimamente mi sono nate alcune idee che forse potrebbero farmi evitare l'array di pezzi ma usare lo stesso queste "buone regole di programmazione".
il fatto è che purtroppo non posso più stare dietro al progetto, perchè devo preparare info ma anche fisica quindi non posso più dedicarmici ora 
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
qualcuno ha un idea di come costringere il gicatore a fare la mangiata che fa guadagnare più punti? io ho crepato tutti i muri di casa mia a testate ma non ci sono ancora riuscito...
ps: non so voi ma solo per controllare che un pedone possa mangiare in un determinato punto mi è uscita una funzione mostruosa...
Per quello x me devi dopo ogni mossa verificare tutti i pezzi del tuo colore e vedere che non abbiano nelle caselle adiacenti (qui devi differenziare i pezzi pedina e i pezzi dama) pezzi (differenziare anche qui per evitare che una dama mangi una pedina) dell'altro colore. Se ne ha memorizzi la mossa "obbligata" e verifichi se è uguale a quella inserita il turno dopo dal giocatore. Mi sembra che come discorso fili, ma magari non ho pensato a delle cose e si inceppa...boh. Cmq tradurre queste 10 righe in codice è un gran bordello...
Ciao!
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
DOMANDA:
Malkiod ha detto qualcosa su come fare il MANUALE relativo al programma da consegnargli??
Come si deve fare e che si deve scrivere?!?
Grazie
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
malchiodi ha specificato che il manuale non deve essere troppo lungo, due pagine sarebbe l'ideale.
nel manuale ha detto che non va specificato perchè avete chiamato così un metodo o una classe ... ha fatto capire che il manuale deve proprio spiegare come si usa il programma.
per esempio: "sarà richiesto all'utente di introdurre una mossa. una mossa consiste nell'associare coordinate di partenza bla bla bla il programma riconoscerà che ... bla bla"
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
ok, grazie!
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
Allora, sono arrivato a questo punto e ho questo quesito :
Io nella classe scacchiera ho:
il costruttore
un metodo mossa
e un metodo stampa
nel costruttore ho inizializzato l'array e nel metodo stampa l'ho stampato, e nel metodo mossa registro la mossa scelta dall'utente e faccio in modo che la casella dove c'era la pedina diventi vuota e quella dove la pedina è destinata diventi piena (in poche parole), ma quando il programma esegue il metodo stampa, il metodo mossa è come se venisse ignorato !
Dove sbaglio?
__________________
Peppe
http://www.peppedotnet.it
è strano, credo che il codice l'avrai gia letto e riletto.
io l'ho fatto diversamente, e forse dovrei correggerlo, perchè i metodi di scacchiera li ho fatti statici.
guarda se nel metodo mossa modifichi effettivamente le variabili che servono per ridisegnare la scacchiera.
basta un piccolo errore di battitura e crei una variabile che poi non viene usata ![]()
anche se non credo che tu abbia fatto sto errore ...
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
scusate il dubbio, ma secondo voi è meglio mettere la x e la y in ogni pezzo e poi creare un array monodimensionale di 24 pezzi e quindi scorrerlo tutte le volte che devo sapere se un pezzo si trova in un determinato posto oppure.
Non mettere le x e le y nei pezzi e fare una matrice di puntatori a pezzi dove meto a null il puntatore quando la casella è vuota e invece metto il riferimento all'oggetto dove dovrebbe esserci il pezzo, ricavando così la posizione dalla matrice e non mettendo praticamente niente se non il colore nella classe Pezzo???
io ho fatto la prima
array di 24 oggetti
ogni oggetti, oltre ad avere il suo colore, ha anche x e y
mi sembra più buono dal punto di vista della buona programmazione
poi non fidatevi di me ![]()
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Finalmente!!!
Finalmente riesco a inserirmi in sto thread!!
GRazie morf per avrmi risposto su icq!!!
da ora i messaggi li mando qui!
in effetti ho rivisto un po' quello che avevo fatto e non è così disastroso!
Ma ho ancora molto a scrivere!
se vi interessa sapere qualcosa o regalarmi qualche dritta su come avete implementato la mangiata dei pezzi! vi sarei grato!
ciaociao
__________________
Non è vero che i videogiochi condizionano i bambini! se così fosse dopo anni di pac-man passeremmo il tempo in locali semi-oscuri mangiando pillole colorate e ascoltando musica elettronica ripetitiva.
Allora, sono a questo punto :
l'utente inserisce la mossa, il mio metodo la processa e ristampa la scacchiera con la nuova mossa (quindi la pedina si è spostata), poi il secondo utente inserisce la propria mossa, il mio metodo la processa e ristampa la scacchiera. Solamente che viene mossa solo la pedina del secondo utente e quella che aveva precedentemento mosso il primo utente viene rimessa al punto di partenza !
Dove sbaglio ?
C'è un modo per salvare i cambiamenti avvenuti all'array ?
__________________
Peppe
http://www.peppedotnet.it
mah
Si potrebbero usare 2 array di pedine dove memorizzare le posizioni, ammesso che l'oggetto pedina contenga la posizione della pedina.
pero non riesco a far funzionare la scacchiera!
quindi non so se sia giusto!
__________________
Non è vero che i videogiochi condizionano i bambini! se così fosse dopo anni di pac-man passeremmo il tempo in locali semi-oscuri mangiando pillole colorate e ascoltando musica elettronica ripetitiva.
io sono del primo turno perciò non devo farlo...ma visto che volevo esercitarmi e provare a fare la dama qualcuno che l'ha fatto via pm se ha voglia può mandarmi il programma? Così vedo se proprio non sarei stata neanche capace di iniziarlo oppure qualche ragno dal buco lo avrei cavato...
Grazie in anticipo
kokorina
__________________
ogni mattina in africa quando sorge il sole una gazzella muore, cioè si sveglia ed è già morta perchè non stava tanto bene il giorno prima
in africa ogni mattina quando sorge il sole un leone si sveglia, appena sveglio inizia a correre per non fare la fine della gazzella non importa se sei crotalo o pavone, l'importante è che se muori me lo dici prima
"il tu che conosci è l'io che sono"
in RINO veritas
joker402&luca:
Domanda :
E' possibile chiamare in una classe un metodo di un'altra classe su un oggetto generale(nel senso dell'oggetto che istanzio al momento es. tipo col this. per la stessa classe)???
Non è facilissimo da capire però....
Grazie
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
non ho capito benissimo dalla tua spiegazione
cmq ... vuoi usare il metodo esempio() appartenente alla classe B su un oggetto (usando this.) in una classe A ... e vuoi richiamare quell'esempio senza dovere istanziare altri oggetti?
se è così ... l'unico modo per non mandare in errore java è fare un bel A extends B 
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Joker&luca:
No allora io ho un metodo mossaValida() nella classe Pedina e uno nella classe Dama. In un altra classe Scacchiera devo chiamare questo metodo riferito all'oggetto che mi interessa cioè ad un astrazione di questi oggetti. Non so se riesco a spiegarmi...
__________________
Ogni uomo mente, ma dategli una maschera e sarà sincero.
~ joker402 ~
Ciao a tutti ho un prob. con le classi astratte.... ora vi spiego:
ho la classe astratta Pezzo che contiene 2 metodi astratti sposta() e mangia() dichiarati così:
public abstract void mangia();
public abstract void sposta();
Prima domanda: in questa classe abstract posso dichiarare un array e utilizzarlo in tutte le sue classi figlie?
inoltre ho dichiarato una classe figlio che appunto estende Pezzo e in cui ho dichiarato i metodi sposta e mangia assegnandoli anche dei parametri... preciso stesso ritorno cioè void, ma quando compilo mi dice che la classe figlio deve essere abstract anche lei perchè uno dei due metodi non è stato definito ma non è vero!!! cosa ho sbagliato?
effettivamente la risposta di java, cioè rendere astratta la classe figlio perchè i metodi non sono definiti, è proprio l'errore principale in cui si può incappare usando l'astrazione.
Mh ... teoricamente, a quando dice Java, non hai definito i metodi ereditati, ma tu dici di averlo fatto.
Non saprei, controlla bene, perchè alla fine senza vedere il codice e fidandomi di te il tuo discorso fila ... pero il prog non va
asdasd
per l'array non so ... io in java non sono molto buono ... credo di si, basta che definisci tutto dopo nelle classi figlie.
spero che qualcuno ti possa aiutare piu di me 
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Questa è la classe Padre
public abstract class Pezzo
{
protected String nome;
private final int lato=8;
public Pezzo [] [] scach=new Pezzo [lato] [lato];
protected int iA,jA,iP,jP,iM,jM;
public Pezzo( String newNome)
{ nome =newNome;
}
public abstract void sposta ();
public abstract void mangia ();
}
Nella classe figlio ho fatto:
public class Pedina extends Pezzo
{
public void sposta (int newxP,int newyP,int newxA,int newyA){
......}
public void mangia (int newxP,int newyP,int newyA){
.......}
che ne pensi morf....?
Il problema deriva dal fatto che tu effettivamente non hai sovrascritto i metodi, ma li hai semplicemente sovraccaricati.
Per ridefinire i metodi della classe padre, devi scrivere nella classe figlio dei metodi che accettano esattamente lo stesso tipo di parametri nello stesso ordine..ad esempio dovresti nella classe figilo scrivere due metodi sposta() e mangia() che non hanno parametri (come non li hanno nella classe padre)
Ciao 
o semplicemente metto dei parametri nella classe padre? ok o poi
non sono + abstract
ok risolto! grazie ma se dichiaro un array nella classe padre abstract posso usarlo nei figli e nei vari "nipoti" sfruttando l'ereditarietà???
Risolto errore di scrittura.... risolto tutto grazie ancora dell'auito
ma dai .. non ho fatto tempo a postare ![]()
cmq la risposta di aesse è perfetta 
stavi sovraccaricando e non ridefinendo.
good luck ![]()
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
non ce la farò mai a fare questa dama!
mi sa che faccio il prossimo appello anke perchè se no devo rifare lo scritto...
c'è qualcuno che, DOPO LA CONSEGNA (così siete sicuri che non ve lo copio), mi può spedire il programma? almeno vedo come andava fatto, tanto al prossimo appello ci daranno un progetto simile e magari sarò capace di farlo...
grazie in anticipo
__________________
http://www.myspace.com/bruzzband
va che spacchiamo i culicchi!
Ragazzi come vi è andata? Io ci ho rinunciato per mancanza di tempo, e sopratutto, di mezzi (causa PC fuso). farò l'appello sucessivo. Voi che cosa siete riusciti a fare? Sapete gia qualche risultato??
__________________
Empty your mind, be formless, shapeless, like water. If you put water into a cup it became a cup, if you put water into a bottle it became a bottle, if you put into a teapot it became a teapot. Water can flow or can crush. Be water my friend.
Nessuna via come via. Nessun limite come limite
- Bruce Lee -
io ho consegnato, dopo mille camicie sudate, e malchiodi, dopo aver testato il programma facendo qualche mossa sbagliata, mi ha detto che potevo presentarmi all'orale. punto !
__________________
Peppe
http://www.peppedotnet.it
io stessa cosa di rif 
__________________
mail, msn and steam account: morf@email.it
my blog: http://melien.blogspot.com
my shots: http://mr-anf.deviantart.com
" ... fear is how I fall ... "
Ragazzi non è che qualcuno di voi che ha fatto il progetto della dama potrebbe passarmi cortesemente i sorgenti?
grazie mille a tutti!!!
Marcolino82
| All times are GMT. The time now is 06:31. | Show all 79 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.