Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Calcolare l'età

  1. #1

    Calcolare l'età

    Per provare un po' le capacità minime di JavaScript, ho scritto questo piccolo programmino matematico che calcola l'età di una persona inserendo la data di nascita delle variabili attraverso dei prompt. (per ora ho solo impostato le variabili per comodità).ù
    Ma non so perché, se il mese di nascita è lo stesso del mese presente e il giorno di nascita, successivo a quello presente, non so perché non sottrate 1 dall'anno risultante. Non so se stono stato chiaro, ma guardando lo script forse si capisce meglio:

    </script language="Javascript">
    var sd = 19
    var sm = 10
    var sy = 1985
    var td = 20
    var tm = 10
    var ty = 2003
    var diffd = td - sd;
    var diffm = tm - sm;
    var diffy = ty - sy;

    if (diffy >=0)
    if (diffm >=0)
    if (diffm =0)
    if (diffd >=0)
    document.write (diffy);
    else document.write (diffy -1);
    else document.write (diffy);
    else document.write (diffy -1);
    else document.write ("Sei nato nel futuro!!");
    </script>

    cosa c'è che non va? Help!
    La conoscenza non è nulla senza il POTERE! :gren:

  2. #2
    comunque le parentesi le hanno inventate apposta eh

    if(blabla){
    if (bla1bla1){
    }
    }


    ps: le parentesi si fanno con alt+123 e alt+125

    ----------------------
    i rulez.-.dovrebbero mettere "pippo" come parola riservata in tutti i linguaggi

    The Cyberpunk System One
    http://www.geocities.com/notoleranceforyou/Hymagition.html

  3. #3

    Boh!

    Con le parentesi non cambia molto... Se il mio compleanno è domani, non ho ancora 18 anni!

    </script language="Javascript">
    var sd = 21
    var sm = 10
    var sy = 1985
    var td = 20
    var tm = 10
    var ty = 2003
    var diffd = td - sd;
    var diffm = tm - sm;
    var diffy = ty - sy;

    if (diffy >=0) {
    if (diffm >=0) {
    if (diffm =0) {
    if (diffd >=0) {
    document.write (diffy);
    else document.write (diffy -1); }
    else document.write (diffy); }
    else document.write (diffy -1); }
    else document.write ("Sei nato nel futuro!!"); }
    </script>
    La conoscenza non è nulla senza il POTERE! :gren:

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Direi che e` l'algoritmo ad essere difettoso.

    Una data e` un numero complesso, che va affrontato con gli algoritmi appositi.
    Non puoi fare semplicemente la differenza di anni, mesi e giorni.

    In JS ci sono gli algoritmi per i calcoli con le date, e trovi vari esempi tra gli script utili (in testa al forum), ma forse sono un po' troppo complicati per un principiante.

    Direi che hai preso un esempio un po' sbifido per fare le prime esperienze.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Originariamente inviato da CYberpunkSystemOne
    ps: le parentesi si fanno con alt+123 e alt+125
    io le faccio premendo
    SHIFT+CTRL+ALT + è = {
    SHIFT+CTRL+ALT + + = }

    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  6. #6
    COMODISSIMO EH?
    ----------------------
    i rulez.-.dovrebbero mettere "pippo" come parola riservata in tutti i linguaggi

    The Cyberpunk System One
    http://www.geocities.com/notoleranceforyou/Hymagition.html

  7. #7
    per me si!
    risulta molto + facile che fare alt + 123
    in fondo lo faccio con 2 dita della mano sinistra (SHIFT e CTRL con il medio e ALT con l'indice) e un dito della mano destra...
    è tutta questione di abitudine!
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  8. #8
    beh per me che non uso praticamente il mouse , usando le freccette ho il pad vicinissimo
    ehhe indice+ medio+anulare+mignolo = {}
    ----------------------
    i rulez.-.dovrebbero mettere "pippo" come parola riservata in tutti i linguaggi

    The Cyberpunk System One
    http://www.geocities.com/notoleranceforyou/Hymagition.html

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.