Newsgroup: it.comp.lang.c++
Titolo: nqueens

Allora mi sto cimentanto con il celebre esercizio delle 8 regine.
Ora non voglio sobissare il NG con chilometri di codice scritto male,
però il programma funziona, sembra che generi scacchiere
con 8 regine e che vadano bene, però come faccio a sapere se le ho fatte
TUTTE? qualcuno sa quante sono le soluzioni delle 8 regine?
il mio file di out ha circa 92 tabelle di scacchiere (dico circa perchè le
ho contate
premento pgdn e moltiplicando per 4 visto che ho 4 tabelle per pagina
:PPP ).
grazie!
--
Emanuele Di Saverio
---------------------------------------------
Remove NOSPAM manually for reply
Scusate le vaccate se  ne dico!

 ho contate)
Contale :-)
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Dept. of Physics, Univ. of Padova, Italy              ROT13: 
ybe...@cq.vasa.vg

grazie!
Questo e' un programma che ho scritto qualche tempo
fa cercando di risparmiare sui caratteri del sorgente
che genera tutte le soluzioni... al limite basta fare
un sort dei due output e confrontarli; se sono diversi
uno di noi due ha sbagliato qualcosa.
#include <stdio.h>
char n[39],q=7;void s(){char*x=n+7,*e,*d;while((*
x+*(e=x+9+q)+*(d=x+31-q)?0:(*x=*e=*d='1'+q,q--?s(
),1:puts(n),q++,*x=*e=*d=0))|x--!=n);}int main(){
s();return 0;}
HTH
Andrea
PS:
  Ma come si fa ad usare un editor che non riesce
  a dirti su che linea ti trovi ???


mi devi far conoscere il tuo pusher: ti da roba troppo buona! :-)
ciao,
Nids

   Ma come si fa ad usare un editor che non riesce   a dirti su che linea
ti trovi ???
Succede sai a noi incapaci decerebrati acefali!


 di c++.
E perche' ti avrebbe preso in giro? Hai almeno provato a compilare il
programma e a vedere cosa ne viene fuori?
Ciao,
Nicola
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Succede sai a noi incapaci decerebrati acefali!
Un buon editor e' una cosa importante per un
programmatore, e' una estensione delle mani.
Un editor che non ti sa dire su che linea ti trovi
immagino anche che sia carente in cose importanti
come funzioni di ricerca/sostituzione con regexp,
macro personalizzabili, undo infinito, chiamata
di programmi esterni, syntax highlight etc. etc.
Il mio non voleva essere un insulto, ma un consiglio.
HTH
Andrea

 s();return 0;}
notate la finezza di usare una funzione separata s() perche` lo standard 
non garantisce di poter fare chiamate ricorsive a main().
cmq se togli il "return 0;" finale risparmi ancora qualche carattere...
ciao Anto
-- 
"Computer science is not about computers any more than astronomy
is about telescopes." -- EW Dijkstra

 cmq se togli il "return 0;" finale risparmi ancora qualche carattere...
Anche cstdio invece di stdio.h?  Un carattere in meno...  8^)  Bello, Andrea!


 Anche cstdio invece di stdio.h?  Un carattere in meno...  8^)  Bello, Andrea!
eh, ma poi dovrebbe usare "using namespace std" o qualcosa del genere e
addio risparmio del carattere!! ;->
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

cmq se togli il "return 0;" finale risparmi ancora qualche carattere...
Si... ma cosi' e' un programma del mitico inesistente
linguaggio C/C++ che tanto va di moda.
In versione C (vecchio) si puo' togliere "int" e
non sono sicuro sul se si puo' togliere anche l'include
(uso solo puts() e la deduzione automatica dei parametri
dovrebbe fornire un risultato corretto).
A questo riguardo avevo a suo tempo posto la questione
in it.comp.lang.c ma nessuno mi ha risposto...
Andrea

Anche cstdio invece di stdio.h?  Un carattere in meno...
Ma poi devo mettere std::puts invece di puts.
Andrea

 linguaggio C/C++ che tanto va di moda.
Perche'? Secondo me e' invece resta un programma conforme tanto allo
standard C++ quanto allo standard C99.


standard C++ quanto allo standard C99.
Infatti, lo standard non dice che main() debba restituire un intero,
ma che il tipo di ritorno di main() deve essere un intero.