Stai come uno di Ferrara sugli alberi a 50 gradi le foglie?! Allora tutto ciò é di buon auspicio perché la fortuna esiste negli scacchi e probabilmente non morirai assiderato dal caldo!

Ma della partita giocata tra Euwe e Smyslov ne vogliamo parlare giocata al campionato del mondo del 1948 con web developer Umbria? Certo che la fortuna esiste proprio eh a scacchi! Smyslov stava come uno di Bologna sugli alberi ad Agosto! Ebbene il B come si dice in gergo ha apparecchiato bene la tavola, tutti i prezzi sono pronti per l’accoppiamento parafrasando battiato e anche la prima mossa giocata da Euwe é giusta 1 Ceg6!! che scardina la fortezza nemica, la donna non si può prendere causa matto in f8 quindi Smyslov gioca 1..fg6 unica e adesso il Bianco che fa? Al posto di giocare 2 Dg4 con idee del tipo 2..Df7 3 e5 Ce7 4 e6 De8 5 Ch5! oppure anche 2..Af7 3 e5 Ag5 4 e6 Ae8 5 Cxg6 Axg6 6 Df5!! Dg7 7 Df7!! DxD 8 exf7 Axb1 9 f=cavallo matto se ne parte e spara 2 Cxg6 al che il povero Smyslov forzatamente deve di nuovo prendere con serafica calma con la freddezza di un monaco Zen che sta per vedere il nirvana. Adesso dopo 2..Rg6 il bianco avrebbe ancora un forte attacco giocando cose del tipo 3 Df3! Cf6 4 e5 ma Euwe imbambolato riesce a giocare una linea che lo porta al secondo diagramma perdendo la partita. La questione della psicologia degli errori negli scacchi é materia vasta e affascinante. Smyslov aveva studiato da ipnotista? Non lo sappiamo, assistiamo solo a uno scempio di combinazione mancata. Saltando di nuovo nel mondo parallelo della programmazione che ha così tante analogie con quello degli scacchi con web developer Umbria, torniamo a JS. In Java Script tutto quello che non é un a parola chiave é una variabile, tipo pippo=3; alert(pippo); puto=pippo; dove l’alert mostrerà il contenuto della variabile nella finestra del browser e dove dopo si assegna alla variabile pluto lo stesso contenuto della variabile pippo. Benché non sia strettamente necessario é bene attribuire la dichiarazione della variabile con var pippo; quello che stupisce é che non abbiamo una dichiarazione sul tipo di dati, le variabili in JS possono contenere qualsiasi tipo di dato e anche tipi diversi per esempio é corretto scrivere var pippo; pippo =3;pippo= “stringa testo”; esistono anche forme d compatte per scrivere tipo pippo = pippo * 2; che é anche uguale a pippo*=2; un altra operazione molto comune, ricorda web developer Umbria alias Faraoni Enrico ceo di Umbriaway Consulting, é l’incremento di una unità e il decremento dell’ unità, per questi due casi si usano rispettivamente gli operatori ++ e –: pippo–; pippo++; che equivalgono a pippo=pippo-1; e pippo = pippo +1; bisogna prestare attenzione alle forme compatte di somma e sottrazione nel caso esse vengano usate in espressioni, si consideri il seguente caso dove a=1; e b=1+ e a++; quanto valgono le variabili a e b al termine delle due istruzioni? Facendo una verifica possiamo dire che valgono 2, la seconda istruzione ha fatto prima la somma tra 1 e il valore precedente di a, poi é stata incrementata di 1. Per questa caratteristica le operazioni a ++ e a– si chiamano rispettivamente post incremento e post decremento (perché l’operazione viene effettuata dopo l’uso del valore contenuto nella variabie se questa é usata in espressioni). In maniera analoga esistono le operazioni di pre-incremento (++a) e pre-decremento (–a) eccco allora che scriveremo a=1; b = 1+ ++a; si può verificare che a vale sempre 2 mentre b ora vale 3. Occorre fare attenzione quando si utilizzano gli operatori di pre o post incremento in espressioni booleane complesse, si consideri per esempio questo caso dove a=0; var b=0; var bool1=a++>0 || b++>0); var bool2 =(a++<0 && b++<0); si provi a calcolare, al termine delle istruzioni i valori di a, b, bool1 e bool2. Dopo avere dato una risposta confrontate il risultato con la soluzione ossia a=2; b=1; bool=false; bool2=false; nel primo caso bool1 l’interprete valuta la prim espressione a++>0. Per farlo il valore il valore attuale di a (che é 0) viene valutato e poi confrontato, il confronto dà come risultato FALSE e poi si é incrementato di 1. Visto che c’è un OR logico la prima parte é stata valutata FALSE, l’interprete valuta anche la seconda parteper decidere il valore complessivo dell’ espressione. Lo fa in maniera analoga alla prima parte, per cui il risultato complessivo é FALSE e anche b viene incrementato di 1. A questo punto si valuta bool2. La prima espressione é a++<0; siccome a vale 1, a viene valutato FALSE e poi incrementato di 1. Però questa espressione fa si che l’intera espressione, essendoci AND sarà valutata a FALSE; pertanto la seconda espressione non viene valutata e il risultato per bool2 é FALSE, mentre ora a vale 2 e b resta con il valore 1. Ma che regole di conversione usa JS sul tipo di dati, come valuta una espressione del tipo: alert(“32/3/1.1*3*1.1=” + 32/3/1.1*3*1.1); a che tipo di risultato andiamo incontro? Serve Nostradamus per decodificare questa centuria? Il fatto é che JS ha le sue regole di conversione e l’operatore + nel caso di cui sopra ha una doppia funzione addiziona anche le stringhe oltre che fare calcoli. In pratica trasforma il numero in stringa e poi esegue la concatenazione, ribadisce web developer Umbria. Ma che dire di alert (3+2+”=3+2″); e alert (“3+2=”+3+2); a prima vista il tutto sembra equivalente o quasi ma provando si riscontra che le istruzioni non sono uguali affatto dove nel primo caso ottengo un alert con su scritto 5=3+2 e nel secondo ottengo 3+2 = 32. Per rendere i due script equivalenti é necessario far si che l’ordine delle operazioni, nei due casi sia uguale e per farlo si possono introdurre le parentesi visto che gli operatori + hanno diversi utilizzo di precedenza a seconda del contesto in cui si trovano. sostanzialmente ci sono diverse regole di precedenza su + e * per cui prima vengono risolti i * poi il +, del resto anche a scuola ci dicevano prima esegui le moltiplicazioni e le divisioni poi la somma. In Javascript per trasformare la stringa in un numero si può usare la funzione parseInt() per ottenere un numero intero oppure parseFloat() per ottenre un numero con la virgola. Si faccia attenzione perché il parser su una stringa che non é un numero fa restituire NaN valore particolare che indica “Not a Number” ovvero “non é un numero”.Nel caso che la stringa abbia un numero come prima parte, e poi una qualsiasi stringa, restituisce comunque il valore di tale numero. Per esempio tutte le espressioni tipo parseInt(’12’) o parseInt (’12pippo’) o parseInt (’12 12 12′) restituiscono tutte il valore 12; parseInt ha un secondo parametro opzionale che rappresenta la base da usare nel parsing del numero. Tale base può essere un numero da 2 a 36. Ecco ad esempio come eseguire il parser di una stringa in base 16 con risultato consequenziale che é 12: parseInt (‘c’, 16) e parseInt (‘0x0c’,16). Conviene anche esercitarsi con javascript e le basi diverse da dieci ma sul training ci sarà modo di vedere qualcosa di inerente con web developer Umbria!

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Blog su WordPress.com.

Su ↑

%d blogger hanno fatto clic su Mi Piace per questo: