Newsgroup: it.hobby.scacchi
Titolo: [ScaccoWeb]: Scacchi e Matematica #1

Ho appena messo sul sito il primo problema della nuova rubrica. Lo
raggiungete dalla pagina principale. 
http://www.robertograssi.net/scaccoweb
	Ciao, Rob

Ho aggiornato il sito. Lucio mi ha mandato una definizione migliore. 
Ciao, Rob

 Ho aggiornato il sito. Lucio mi ha mandato una definizione migliore.
Finalmente si è deciso :)
"Quante  partite di scacchi, in cui Nicola e Flavio rimangono con un re e un
cavallo ciascuno, senza che nessuno dei due pezzi sia immediatamente
minacciato, si possono fare?"
Questa domanda è inutile e fuorviante; la risposta è quasi incalcolabile (10
elevato a MOLTO) e non c'entra con il problema.
"In quanti modi si possono posizionare sulla scacchiera di Nicola e Flavio
il re bianco, il re nero, il cavallo bianco e il cavallo nero in modo che
"nessun" pezzo sia minacciato da quelli dell'avversario?"
Questa è chiara.
Alex



Finalmente ho scoperto che la soluzione esatta del quesito č:
8.282.676 posizioni possibili
Come ho fatto ad arrivarci?
Ve lo svelero' fra non molto ;-)
Ivo

 Come ho fatto ad arrivarci?
Contandole, no?
Alex

Contandole, no?
Il concetto di contare è molto labile oggigiorno... avevo una mappa e
non sapevo se la potevo colorare con solo cinque pennarelli... Dopo
avere contato tutte le combinazioni possibili... mi sono scordato
quello che dovevo fare!!!

 quello che dovevo fare!!!
Il teorema dei 4 colori dice che ne bastano 4 :)
Alex

Tutto tace e allora posto i miei due programmi; il primo "normale",
comprensibile e commentato. Il secondo per la gara "programma più breve"
proposta da Roberto. I due software sono in Pascal, e girano sotto Borland
Turbo Pascal 5 o superiore, scaricabile in rete (abandonware). Entrambi
danno il risultato, naturalmente, di 8.282.676.
N.B. Anche chi non è un esperto programmatore può capire il funzionamento
(del primo), dato che il Pascal è quasi linguaggio naturale.
Primo:
var a1,a2,a3,a4,a5,a6,a7,a8:byte;
    n:longint;
begin
 n:=0;
  for a1:=0 to 7 do {Re Bianco x}
   for a2:=0 to 7 do {Re Nero x}
    for a3:=0 to 7 do {Cavallo Bianco x}
     for a4:=0 to 7 do {Cavallo Nero x}
      for a5:=0 to 7 do {Re Bianco y}
       for a6:=0 to 7 do {Re Nero y}
        for a7:=0 to 7 do {Cavallo Bianco y}
         for a8:=0 to 7 do {Cavallo Nero y}
          {Pezzi sovrapposti:}
          if ((a1=a2)and(a5=a6))or((a1=a3)and(a5=a7))or((a1=a4)and(a5=a8))or
          ((a2=a3)and(a6=a7))or((a2=a4)and(a6=a8))or((a3=a4)and(a7=a8))or
          ((abs(a1-a2)<2)and(abs(a5-a6)<2))or {Re vicini}
          ((abs(a1-a4)<2)and(abs(a5-a8)<2))or {Re B vicino Cavallo N}
          ((abs(a2-a3)<2)and(abs(a6-a7)<2))or {Re N vicino Cavallo B}
          ((abs(a3-a4)=1)and(abs(a7-a8)=2))or {Cavalli attaccati}
          ((abs(a3-a4)=2)and(abs(a7-a8)=1))or
          ((abs(a1-a4)=1)and(abs(a5-a8)=2))or {Cavallo N attacca Re B}
          ((abs(a1-a4)=2)and(abs(a5-a8)=1))or
          ((abs(a2-a3)=1)and(abs(a6-a7)=2))or {Cavallo B attacca Re N}
          ((abs(a2-a3)=2)and(abs(a6-a7)=1))
          then else inc(n);
 writeln('Ci sono ',n,' posizioni con i pezzi non attaccati.')
end.
Secondo:
var r:array[0..13]of longint;
begin
 r[13]:=0;
 for r[9]:=0 to 8 do r[r[9]]:=0;
 repeat
  r[12]:=0;
  for r[9]:=0 to 2 do
   for r[10]:=r[9]+1 to 3 do begin
    r[11]:=abs(r[r[9]]-r[r[10]])*8+abs(r[r[9]+4]-r[r[10]+4]);
    if(r[11]=0)or((r[11]in[1,8,9])and(r[9]*4+r[10] in
[1,3,6]))or((r[11]in[10,17])and(r[9]*4+r[10] in [3,6,11]))then
inc(r[12])end;
  if r[12]=0 then inc(r[13]);r[9]:=0;r[12]:=0;
  repeat inc(r[r[9]]);if r[r[9]]=8 then begin r[r[9]]:=0;inc(r[9]) end else
inc(r[12]) until r[12]>0
 until r[8]=1;
 writeln('Ci sono ',r[13],' posizioni diverse con i pezzi non attaccati.')
end.
Alex

Alex, ti ricordo di mandare la TUA soluzione anche a Lucio. Rob

 Alex, ti ricordo di mandare la TUA soluzione anche a Lucio. Rob
Vabbè il numero è quello, che la mando a 'ffa? :)
Alex

Un saluto a tutti e un grazie particolare a coloro che hanno contribuito
alla vita di questa rubrica interessandosene.
Intervengo ora per puntualizzare alcune cose a riguardo.
Pubblicherò periodicamente dei problemi che abbiano per “tematica di
situazione” gli scacchi.
Inoltre, non essendo uno scacchista, mi scuso preventivamente per
eventuali errori di definizione. Per questo, invito tutti i
collaboratori del sito ad avvisarmi per eventuali errori. Poi
provvederemo alla correzione. TUTTO SI PUO’ RISOLVERE!
Inoltre, voglio ricordare che il problema NON E’ LA PARTE IMPORTANTE
DELLA RUBRICA!
Essi servono per introdurre, in maniera operativa, l’argomento di
matematica che tratterò.
Non solo, mi servirò di eventuali lezioni di “didattica” matematica, per
introdurre  concetti e problemi.
E’ anche importante che le soluzioni mi siano inviate all’indirizzo
luxl...@yahoo.it
 affinchè possiamo commentarle per poi passare alle
riflessioni. Il tutto, compreso le riflessioni, non sarà un qualcosa di
statico, di nozionistico anzi, cercherò con tutto l’impegno possibile di
coinvolgere tutti per chiarimenti, spunti e proposte. I problemi mi
sembravano un valido strumento per le finalità della rubrica.
Auguro a tutti un felice fine settimana
Bye
Lucio
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Il teorema dei 4 colori dice che ne bastano 4 :)
Si, ma hai contato le possibilità teoriche?

Perche', se ho capito bene  quello che ha in mente Lucio, trovare il
numero non e' fondamentale, quanto capire COME arrivare alla
soluzione.... :) Rob

 soluzione.... :) Rob
Lo ho scritto come, contando.
Alex