inutilità

Ho appena scoperto che il mio numero di telefonino è il prodotto di tre fattori, uno di tre cifre, uno di quattro e uno di cinque, tutti inizianti per 1 e terminanti con tre cifre diverse. Ci dev’essere un significato nascosto in tutto ciò.

Ultimo aggiornamento: 2011-12-01 14:44

83 pensieri su “inutilità

  1. .mau.

    @mbuto hai dati sufficienti per avere la risposta @Hiraedd no, ci sono troppe possibilità possibili coerenti con la mia descrizione.

  2. mbuto

    il mio ha una curiosità nelle prime 4 cifre dopo il prefisso, tanto che quando lo dichiaro quasi nessuno ci crede :)

  3. it'S. me.

    Ovviamente sapendo io il numero di telefono di .mau. ho solo verificato che la fattorizzazione coincidesse con i dati forniti, non ho fatto delle prove chiamando numeri a caso :-P

  4. ?Daniele Minciaroni?

    Il mio numero è il prodotto di 2 primi. Scritto in notazione binaria ha 15 0 e 17 1. Scritto in esadecimale è formato da 6 lettere consecutive e 2 numeri, ed sarebbe molto più facile da ricordare. Qualcuno ha un cellulare con la tastiera esadecimale?

  5. .mau.

    la probabilità che un numero di telefonino a dieci cifre sia primo non è diffficile da stimare, sapendo che i primi inferiori a N sono circa N / log N (logaritmo naturale, non decimale). Quindi, o tornate a usare Wolfram Alpha per vedere quanto vale il logaritmo di 3 miliardi e di 4 miliardi e fate un po’ di divisioni, oppure lavorate spannometricamente sapendo che e^3 è circa 20 = 2*10^1, e quindi e^21 è circa 2^7 * 10^7, cioè circa 1.28 * 10^9. Insomma direi che la probabilità richiesta sia intorno al 4%.

  6. ?Daniele Minciaroni?

    .mau dimentichi che prima ho detto che non tutti i numeri che iniziano per 3 possono essere numeri di cellulare (i prefissi attualmente attivi sono: 330, 331, 333, 334, 335, 336, 337, 338, 339, 360, 361, 362, 363, 366, 368, 340, 341, 342, 343, 345, 346, 347, 348, 349, 383, 320, 322, 323, 324, 327, 328, 329, 380, 388, 389, 390, 391, 392, 393, 397, 313, 377, 370, 373, 350, 381, 383). Inoltre alcuni numeri TIM hanno 6 cifre + prefisso, quindi sono di 9 cifre.

  7. .mau.

    @D. Minciaroni e quindi? una stima spannometrica come quella che ho fatto non cambia molto, nemmeno considerando i cellulari a 9 cifre. Ho già arrotondato 1/22 a 1/25, tanto per dire… solo perché sei tu puoi dire 4,5%, occhei?

  8. ?Daniele Minciaroni?

    Se la distribuzione dei numeri primi nei numeri che iniziano per 320 è uguale a quella dei numeri che iniziano per 300 (per dire) allora la distribuzione sarà sempre intorno al 4% ma se è diversa no. Per i numeri di 9 cifre, mi pare siano solo quelli che iniziano per 335 (che quindi vanno esclusi dal conteggio dei numeri a 10 cifre). Ovviamente tutto questo ragionamento non tiene conto dell’età del prefisso, visto che una volta eliminato un prefisso i numeri dismessi non si riassegnano ma si cambia prefisso (nessuno, che io sappia, oggi può avere un numero con il prefisso 320)

  9. .mau.

    ribadisco (non per altro, ma perché è una questione metodologica): ho esplicitamente fatto approssimazioni tali per cui la differenza di probabilità per i numeri che iniziano per 320 e per 390 è trascurabile rispetto al risultato che ho dato, e anche quella per i numeri di 9 e 10 cifre è comunque piccola. Non ho neppure usato il logaritmo integrale per la stima dei primi, tanto per indicare a un matematico l’entità dell’errore…

  10. ?Daniele Minciaroni?

    .mau, questo conferma la barzelletta del miliardario che finanzia un team di matematici chiedendogli un metodo sicuro per vincere ai cavalli, dopo 10.000.000 di $ spesi e 2 anni di lavoro, loro convengono che il metodo esiste ed è unico. (non te la prendere, io ho sempre grandissima e incondizionata stima per i matematici)

  11. .mau.

    beh, il fisico la soluzione la trova, ma con una piccola approssimazione: assume che i cavalli siano sferici…

  12. ?Daniele Minciaroni?

    beh da informatico posso dire che sia nel mio sistema di testing che in quello di staging i cavalli sui quali puntavo vincevano sempre, quindi se così non è in produzione è un problema di configurazione.

  13. .mau.

    @il barbarico re: se un numero è dato, o è primo o non lo è: non si può parlare di probabilità :-)

  14. il barbarico re

    @.mau.
    sì, hai ragione, ma è comunque interessante usare la forma asintotica come hai fatto tu.
    @zar usando alpha 182 719 482-159 534 856 = 23 184 626 , cioè il 4.546%
    A Parigi il prefisso è 01 seguito da 8 cifre e la probabilità è 5.76%
    A Boston il prefisso è 617 seguito da 7 cifre e la probabilità 4.44%
    Non mi attardo su Roma e Milano perché la questione diventa complicata essendoci numeri lunghezze diverse.

  15. zar

    Sì, non capisco perché non mi fa allocare un array di long int, mentre mi lascia allocare dei long long int (anche se poi a un certo punto va in segmentation fault)

  16. zar

    Provo a copincollarlo qua: #include
    #include
    #include
    #include
    #define MAXP 3840000000ULL
    void main(void)
    {
    unsigned long long int *p,n,r,i,l;
    if (( p = (long long int *) malloc(sizeof(long long int)*MAXP) ) == NULL) {
    printf(“Not enough memory, exiting…\n”);
    exit(1);
    }
    *p=2;
    *(p+1)=3;
    l=1; // last
    n=5;
    do {
    i=0;
    r = (long long int) (sqrt(n) + 0.5);
    while ( ( *(p+i)r ) {
    *(p+(++l)) = n;
    printf(“%Ld – %Ld\n”,l,*(p+l)); n+=2;
    } while (l

  17. zar

    Comunque, ho trovato un’altra libreria che genera numeri primi a razzo, e ho calcolato questo: tra 330000001 e 3839999957 ci sono 164934007 numeri primi

  18. Paolo

    Spostiamo il problema ad un ambito ingegneristico che questi matematici sono sempre antipatici :D
    quanti centesimi di euro costerà usare il cloud di Amazon per trovare a forza bruta il numero del .mau.?

  19. Paolo

    Ma credo manco serva il cloud di Amazon :)
    Se con “prodotto di tre fattori” intendi tre numeri primi, allora:
    – ci sono 21 numeri primi tra 100 e 199 (primo fattore, numero di tre cifre che inizia per 1)
    – ci sono 135 numeri primi tra 1000 e 1999 (secondo fattore, numero di quattro cifre che inizia per 1)
    – ci sono 1033 numeri primi tra 10000 e 19999 (terzo fattore, numero di cinque cifre che inizia per 1)
    ci sono quindi 2.9 milioni circa di combinazioni possibili; scartando quelle che non sono numeri di telefono possibili, e aggiungendo il vincolo sulla cifra finale diversa, dovremmo ridurci a molte poche opzioni, o addirittura ad una sola, se ho inteso quello che dici.
    Ecco, appena finisce l’upgrade a Fedora 16, che si è utilmente incastrato, potrei perdere un altro pezzetto di pomeriggio a fare queste cose :)

  20. .mau.

    @paolo: non credo che la soluzione sia unica. Però il sistema pratico migliore è usare l’ingegneria sociale e farsi dare il mio numero di telefono da qualcuno che lo sa :-)

  21. Paolo

    A parte che se la soluzione non è unica allora non sei cattivo che ci stai illudendo tutti :D, io e te abbiamo comunque una amica in comune a cui chiedere, però vuoi mettere il piacere di scoprirlo? :)

  22. Paolo

    Per la precisione, sono oltre 100mila possibili numeri telefonici. Con il mio programma ne vengono 138687, ma la questione di quali prefissi considerare e quali no è delicata (ammettendo tutti i numeri da 311qualcosa a 392qualcosa vengono circa il doppio dei numeri di telefono), perché ho incluso tutti i prefissi che riporta Wikipedia (anche in omaggio al telefonando :D) ma alcuni forse sarebbero escludibili.
    Il programma è questo qui, ovviamente ho escluso la parte che contiene i numeri primi, ma è facilmente producibile con un utile esercizio di meta-programmazione che viene lasciato al lettore. Ho anche ignorato i numeri TIM da 6 cifre, non mi andava di modificarlo :P
    // telefonomau.c
    #include “stdio.h”
    int F1[]={
    101 ,

    199
    };
    int F2[]={
    1009 ,

    1999
    };
    int F3[]={
    10007 ,

    19997
    };
    int check(unsigned long target, int l, int m, int n) {
    int check_prefisso(int prefisso) {
    if (
    (prefisso==330) ||
    (prefisso==331) ||

    (prefisso==313)
    )
    return 0;
    return 1;
    }
    int prefisso;
    int c1, c2, c3;
    if ( (target3970000000) )
    return 0;
    prefisso=(target / 10000000) ;
    if (!check_prefisso(prefisso))
    return 0;
    c1 = l % 10;
    c2 = m % 10;
    c3 = n % 10;
    if ( (c1==c2) || (c2==c3) || (c1==c3) )
    return 0;
    return 1;
    }
    int main() {
    int I1, I2, I3;
    unsigned long target;
    for (I1=0; I1

  23. Gavagai

    Bhè, non sono mica molte come combinazioni! Vediamo… considerando una media di una chiamata al minuto e 10 ore al giorno di lavoro, direi che possiamo chiamare tutti i numeri in circa 231 giorni (7-8 mesi, più o meno). Allora, chi si offre? :)

I commenti sono chiusi.