Facile con un po' di Perl!
Anzitutto la definizione: per distanza interessante intendo un numero di giorni multiplo di 10, anzi meglio, potenza di 10, ovvero
100
, 1000
, ecc.Detto questo, costruiamo la struttura base:
#!env perl use v5.20; use DateTime; my $begin = DateTime->new( year => ..., month => .., day => .. ); my $now = $begin->clone(); my $dates = [ { day => 4, month => 7 } , { day => 19, month => 7 } ... ]; push @$dates, { day => $begin->day, month => $begin->month }; my $base = 10;
Con
$begin
si indica la data di partenza, mentre in $dates
si inseriscono giorno e mese di alcune date a voi significative.Per capirsi,
$begin
potrebbe essere la data di nascita di vostro figlio e $dates
contenere il vostro matrimonio, laurea, ecc.Da notare che inserisco automaticamente la data di partenza nell'array delle date da cercare, così da valutare la data contro se stessa
spostata chiaramente di alcuni anni.
Fino a qui, nulla di sorprendente. Beh, anche il resto è abbstanza noioso:
for ( 1 .. 100 ){ $now->add( years => 1 ); for my $when ( @$dates ){ $now->set( day => $when->{ day }, month => $when->{month} ); my $delta = ( $now->epoch - $begin->epoch ) / ( 60 * 60 * 24 ); next if ( $delta % $base != 0 ); say "La data " . $now->dmy . " si trova a $delta giorni da " . $begin->dmy
if ( ( log( $delta )/log( $base ) ) =~ /^\d+$/ ); } }
In un ciclo di 100 anni (perché oltre diventa poco interessante, almeno per voi visto che non ci sarete piu') si processa un anno alla volta
sommandolo alla data di partenza
$now
(clone della vera data). Contro tale "annata" si testano tutte le date ricercate per vedere sela distanza in giorni
$delta
è multiplo di 10 ($base
) e piu' precisamente se è un logaritmo in base 10.Solo di quelle date si effettua una stampa a video.
1 commento:
Buongiorno,
Avete un progetto per il quale ricercavate finanziamenti; Vi siete purtroppo visti rifiutato dei crediti a vicino alle banche per causa diversa. Siete particolari, onesto e di buona moralità. Disporte di un reddito che può permettervi di verificarsi alle vostre mensilità; Più preoccupazioni sono un privato che dispone di un capitale, io desidero mettere a vostra disposizione sotto forma di prestito rimborsabile su una durata massima da 20 anni ad un tasso che va di 3% secondo la somma chiesta e la durata di rimborso. Non esitare più un solo momento poiché non sarete delusi. Le vostre proposte e le vostre proposte saranno analizzate e presa in considerazione per quanto possibile.
Posta elettronica: p.lauvergne@hotmail.com
Whatsapp : +33 7 52 57 30 53
Grazie
Posta un commento