|
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. | NEI PREFERITI | .:: | RSS Forum | RSS News | NEWS web | NEWS software | |
| PUBBLICITA' | | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | | CERCA nel FORUM » | |
![]() |
#16 |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
![]() |
![]() |
![]() |
![]() |
![]() |
#17 |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
Certo, potresti chiamare 'atoi' e saltare così un passaggio e ritornare semplicemente:
atoi(c) - 64 però l'atoi non fa altro che fare un casting (solo formale) da char a int, perché il C tratta già i char come int. Bye ![]() |
![]() |
![]() |
![]() |
#18 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
![]() ![]() ![]() |
Hai già pensato alle dimensioni della griglia in righe e colonne ?
Hai già pensato al controllo da effettuare per un possibile "fuori griglia" ? Le coordinate le fornisci attraverso l'input da tastiera oppure col mouse ? Hai già un'idea di quante navi è composta la flotta ? Hai già pensato di quanti "pezzi" deve essere composto ogni elemento ? Hai già un'idea di come segnalare l'affondamento di un elemento visualizzando il nome dell'elemento affondato ? Hai già pensato come segnalare il numero di elementi affondati in base al numero di elementi totali della flotta ? Chi sarà il vincitore ? Sono un mucchio di domande ma mi piacerebbe sapere se hai già un'idea generale del programma o se stai ancora pensando come agire ![]() |
![]() |
![]() |
![]() |
#19 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
![]() ![]() ![]() |
LoryOne, hai mai pensato a farti i c@zzi tuoi ?
Questa l'aggiungo ![]() ![]() |
![]() |
![]() |
![]() |
#20 | ||||||||
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
![]() |
Quota:
Quota:
Codice:
... if (colonna < 11 && riga < 11 && colonna > 0 && riga > 0) then controlla la casella corrispondente else messaggio d'errore e ripeti la richiesta di una nuova mossa ... Quota:
Quota:
Quota:
Quota:
o = acqua * = affondato Quota:
Quota:
|
||||||||
![]() |
![]() |
![]() |
#21 | |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
![]() |
Quota:
![]() ![]() |
|
![]() |
![]() |
![]() |
#22 | |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
Quota:
Bye ![]() |
|
![]() |
![]() |
![]() |
#23 | |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
![]() |
Quota:
![]() Tenete presente che non ho fatto alcun corso di C (a parte piccole pillole), lo sto imparando in parallelo con questo programma. |
|
![]() |
![]() |
![]() |
#24 | |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
![]() ![]() ![]() |
Quota:
![]() (Y) Ottima domanda Alh. Ho letto ma cerchi di semplificare un po troppo. Tutte le navi da un solo pezzo non è propriamente una Battaglia Navale. In una griglia da 10x10 le coordinate possono essere espresse da una semplice stringa Es: A10, B1, C7 La prima parte della stringa definisce la prima coordinata, il resto la seconda. Non voglio assolutamente fare il professore sia chiaro ma valuta attentamente la complessità dell'applicativo che vuoi realizzare. Un programma lo si fa prima con la testa, poi con le dita. Ultima modifica di LoryOne : 29-06-2004 alle ore 11.00.35 |
|
![]() |
![]() |
![]() |
#25 | |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
Quota:
Codice:
// gestione strutturata dell'input switch(getch()) { case(0+'H'): // codice freccia su break; case(0+'P'): // codice freccia giù break; case(0+'K'): // codice freccia sinistra break; case(0+'M'): // codice freccia destra break; case (' '): // spazio break; } ![]() |
|
![]() |
![]() |
![]() |
#26 | |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
![]() |
Quota:
|
|
![]() |
![]() |
![]() |
#27 |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
![]() |
Mi sta sorgendo un dubbio, una volta che avrò scritto tutto il codice per il programma, come farò a testare se funziona? Dovrei lanciare 2 volte lo stesso file, ma posso farlo? La seconda volta non mi direbbe che il programma è già in esecuszione?
|
![]() |
![]() |
![]() |
#28 |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
No no ... puoi lanciare tranquillamente due istanze del processo, basta che tu sia in grado di "accorgerti" che esiste un'area di memoria condivisa e paginata .. questa costituisce il tuo spazio di lavoro.
Per semplificare la gestione potresti costruirti un mini-loader che carica già due istanze del processo predisponendo la memoria condivisa per entrambe... Bye ![]() |
![]() |
![]() |
![]() |
#29 | |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
![]() ![]() ![]() |
Quota:
|
|
![]() |
![]() |
![]() |
#30 |
Made in Japan
Top Poster
Registrato: 04-07-2001
Messaggi: 4.461
![]() |
E' giunto il momento di postare un po' di codice, questo è il processo che dovrebbe leggere dalla memoria condivisa
Codice:
void leggi(HANDLE mapping) { char colonna_c; int colonna_i; t_Mossa *p; p = (t_Mossa *)MapViewOfFile(mapping, FILE_MAP_READ, 0, 0, 0); if(p == NULL) Errore_("Impossibile attaccare la memoria condivisa"); scanf("%s", p->colonna); colonna_i = ChartoI(colonna_c); scanf("%u", p->riga); /*non servono controlli, se i dati sono nella memoria condivisa di sicuro sono già stati controllati dal processo "scrivi"*/ /************************** qui le verifiche del colpo o forse lo metterò nel main **************************/ ExitProcess(0); } Spero di non aver scritto boiate ![]() Editato per non aggiungere post inutili. Ultima modifica di Alhazred : 29-06-2004 alle ore 16.41.40 |
![]() |
![]() |
![]() |
Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti) | |
Strumenti discussione | |
|
|
![]() |
||||
Discussione | Autore discussione | Forum | Risposte | Ultimo messaggio |
La grande battaglia dei super eroi! | Sbavi | Chiacchiere in libertà | 83 | 27-02-2009 10.43.39 |
battaglia navale in c# | Joy&Lu | Programmazione | 3 | 01-09-2008 15.08.58 |
Il Signore degli Anelli - La Battaglia per la terra di mezzo | Darth Maul | Masterizzazione Giochi Games | 0 | 01-09-2006 18.16.18 |
[C] Battaglia Navale (versione client server) in Linux | Nanri | Programmazione | 11 | 06-08-2005 14.50.27 |