Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di Zalex
    Registrato dal
    Aug 2001
    Messaggi
    357

    [ALGORITMI]Precedenza degli operatori...

    ciao a tutti,
    mi servirebbe trovare un algoritmo che mi permetta di implementare una calcolatrice in modo da garantire nelle operazioni la precedenza degli operatori....
    mi spigo meglio... 5+5/2=7.5 e non 5+5/2=5 come dice la calcolatrice di Winzozz
    idee?grazie

  2. #2
    probabilmente vista l'ora tarda :bubu: non ho capito quello che chiedi

    sicuramente non 5 + (5 / 2) = 7.5 // non un problema di parentesi

    ma un parser o roba del genere che riconosca gli operatori

    aritmetici e dia loro una "gerarchia"...


    ES: un algoritmo che legga una stringa tipo "5+5/2"

    e stabilisca la priorità di "processo"

    eseguendo prima la divisione e poi l'addizione [GIUSTO???]

    Ok, lo riprendiamo "domani" che ora sono fuso...
    ...Terrible warlords, good warlords, and an english song

  3. #3
    Utente di HTML.it L'avatar di Zalex
    Registrato dal
    Aug 2001
    Messaggi
    357
    giusto
    stabilisca la priorità di "processo"
    l'idea e' quella:gren:

  4. #4
    Utente di HTML.it L'avatar di Zalex
    Registrato dal
    Aug 2001
    Messaggi
    357
    cmq io credo sia piu' costoso esaminare una stringa,quindi avevo intensione di procedere in nel modo seguente:
    Sapendo che il tutto sara' interfacciato da una GUI,e trascurando gli errori dell'utente(tipo 5++6...)

    codice:
    *click sul primo numero;
    *click sul primo operatore;
    :label1
    *click sul secondo numero;
    :label2
    *click sul secondo operatore;
     se primo operatore e' *,/
           primo_num=primo_num primo_op secondo_num;
     eltrimenti
         se secondo operatore e' un +,-,=
              primo_num=primo_num primo_op secondo_num;
              primo_op=secondo_op;
              goto label1;
         se secondo operatore e' un *,/
             **accetto terzo numero
               and
               secondo_num=secondo_num secondo_op terzo_num
               goto label2;

    che ne dite?
    ora lo rivedo meglio...per non fare figure..

  5. #5
    Guarda che se nella calcolatrice di winows scegli la visualizzazione scientifica il risultato viene corretto...

    E' molto valida come calcolatrice, anche perchè esegue calcoli simbolici sulle frazioni, per cui 10 /3 * 3 = 10, a differenza di molte calcolatrici tascabili.

  6. #6
    Utente di HTML.it L'avatar di Zalex
    Registrato dal
    Aug 2001
    Messaggi
    357
    Originariamente inviato da Andrea Simonassi
    Guarda che se nella calcolatrice di winows scegli la visualizzazione scientifica il risultato viene corretto...

    E' molto valida come calcolatrice, anche perchè esegue calcoli simbolici sulle frazioni, per cui 10 /3 * 3 = 10, a differenza di molte calcolatrici tascabili.
    lo so che la calcolatrice scientifica funge..............ma cmq non volevo pareri sulla calcolatrice di winzozz

  7. #7
    Utente di HTML.it L'avatar di Zalex
    Registrato dal
    Aug 2001
    Messaggi
    357
    niente idee?:metallica

  8. #8
    parser di espressioni?

  9. #9
    Utente di HTML.it L'avatar di Zalex
    Registrato dal
    Aug 2001
    Messaggi
    357
    Originariamente inviato da Andrea Simonassi
    parser di espressioni?
    ma il parsing richiede una stringa finita.........

  10. #10
    No, il parsing richiede un flusso.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.