Info:

twitter

Ultimi commenti: Comment feed

Tags:

Archivio 2017:

Mag Apr Mar Feb Gen

Archivio 2016:

Dic Nov Ott Ago Mag Mar Feb Gen

Archivio 2015:

Nov Ott Set Mar Gen

Archivio 2014:

Dic Nov Ott Set Lug Giu Mag Apr Gen

Archivio 2013:

Dic Nov Set Ago Lug Giu Mag Apr Feb Gen

Archivio 2012:

Dic Nov Ott Set Ago Giu Mag Apr Mar Feb Gen

Archivio 2011:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2010:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2009:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2008:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2007:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2006:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen
Congruenze

Piccole grandi formule interessanti. Da giovane ero in grado di calcolare la prima grazie ad un aiuto mnemonico per la parte più difficile relativa al mese e semplificando il calcolo limitandolo al secolo allora in corso e già passato. Raccolte qui per un piacere puramente estetico.

La congruenza di Zeller:

h = \left(q + \left\lfloor\frac{13(m+1)}{5}\right\rfloor + K + \left\lfloor\frac{K}{4}\right\rfloor + \left\lfloor\frac{J}{4}\right\rfloor - 2J\right) \mod 7,

(Analisi)

La luna nuova:

d = 5.597661 + 29.5305888610 \times N + (102.026 \times 10^{-12})\times N^2

(Spiegazione)

Formula di Oudin:

image

(spiegazione)

-quack

Pubblicato lunedì 4 giugno 2012 alle 5:46 AM - 0 commenti so far
Archiviato in: Codice

LunedìQuìz–serie 2012 #2

Implementare la seguente funzione:

bool SumExists(int[] data, int sum)

che restituisce true se esistono due elementi nell’array data la cui somma è sum e definirne la complessita in notazione O.

-quack

P.S. titolo leggermente alterato per arginare l’eventuale ondata spam

Pubblicato lunedì 20 febbraio 2012 alle 6:05 PM - 11 commenti so far
Archiviato in: Codice

Lunedì quiz - serie 2012 #1

Dato un albero binario (vedasi esempio figura)

image

si implementi la funzione:

TrovaAntenatoComune(node root, node first, node second)

che restituisce l’antenato comune più “vicino” ai due nodi o sollevi un’eccezione se uno dei due nodi non è raggiungibile dalla radice.

Esempio:

TrovaAntenatoComune(A, D, I) = B
TrovaAntenatoComune(A, P, F) = E

-quack

Pubblicato martedì 7 febbraio 2012 alle 2:51 AM - 18 commenti so far
Archiviato in: Codice

Quiz riflessivo per programmatori C#

Data una classe X_Class ed una proprietà Y_Property di tipo Zeta:

        class X_Class

        {

            public Zeta Y_Property { get; set; }

        }

ricavare il nome della proprietà sotto forma di stringa in maniera programmatica (hint: usare la versione 4.x del Framework).

BONUS POINT: L’esercizio ha anche un suo perché, stabilire quale.

Soluzione:

public static string YPropToString()

{

    return ((MemberExpression)
     ((Expression<Func<X_Class, object>>)
       ((o) => o.Y_Property)).Body).Member.Name;

}

Probabilmente si può fare di meglio. Lo scopo, come spiegato nei link dei commenti, è di fare in modo che il codice non compili se viene rinominata una proprietà

-quack

Pubblicato mercoledì 27 luglio 2011 alle 11:27 PM - 15 commenti so far
Archiviato in: Codice

Esercizio grammaticale

Per il dileggio del lettore interessato dall’affascinante mondo del parsing (sì, ne sto scrivendo un altro in virtù della già citata maledizione).

Data la seguente grammatica ( S il simbolo di partenza, in maiuscolo i terminali, in minuscolo le regole di produzione), convertirla in forma LL(1):

S –> q
q –> ( q ) | r
r –> A u | ( t )
u –> B | ( t )
t –> u | t t

-quack

Pubblicato mercoledì 9 marzo 2011 alle 11:15 PM - 4 commenti so far
Archiviato in: Codice, Cazzate