Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Problema con sottrazione

    Ciao a tutti.
    Ho un problema con una sottrazione

    Se i valori sono i seguenti funziona tutto:

    $BSC =264.2
    $SSCA= 100
    $EmailSubject= 164.2

    $Verifica=($BSC-$SSCA)-$EmailSubject;


    $Verifica=0

    Se i valori sono più alti:

    $BSC =244164.2
    $SSCA= 244000
    $EmailSubject= 164.2

    $Verifica=($BSC-$SSCA)-$EmailSubject;


    $Verifica=1.1652900866466E-11



    Qualcuno può aiutarmi?

    Grazie

  2. #2
    hai provato a dire in modo esplicito il tipo di dato che contengono le variabili?

    se leggi questo link http://stackoverflow.com/questions/5...le-subtraction

    l'ultimo post ha l'esempio di come si esplicita una variabile.

  3. #3
    Scusa l'ignoranza...
    Ma la variabile non viene esplicitata quando gli si assegna un valore?

  4. #4
    *alza le spalle*
    diciamo che cerca di decidere il tipo in base al valore inserito nella variabile.
    Tuttavia (per abitudine e/o necessità) puoi indicare in maniera univoca il "tipo" di variabile.
    Detto questo su taluni siti ho notato cercando per il tuo problema che a volte parlano di differenze tra i vari processori di come vengono fatte le operazioni...

    Detto questo, oltre a stampare il risultato hai provato a stampare le altre variabili?

    Son giuste come valori?

  5. #5
    Si le ho stampate e sono corrette.
    La cosa che mi lascia perplesso è che non è sistematico; in un caso funziona e nell'altro no.

  6. #6
    potrebbe dipendere dalla precisione del floating number. come dice il manuale di php

    http://www.php.net/manual/en/language.types.float.php

  7. #7
    Ho provato a scriverla così

    IF ((1!=(($BSC-$SSCA)/$EmailSubject))

    e non funzione.
    Sono sicuro che ($BSC-$SSCA)/$EmailSubject sia uguale a 1 perché lo stampo in una variabile.
    Se utilizzo la variabile scrivendo

    IF ($verifica!=1)
    Non va lo stesso ($verifica è 1)

    Help

  8. #8
    Qualcuno può indicarmi come aggirare il problema?

    Grazie

  9. #9
    Codice PHP:
    <?php
    $BSC 
    244164.2;
    $SSCA 244000;
    $EmailSubject 164.2;

    $Verifica = (int) (($BSC $SSCA) - $EmailSubject);

    echo 
    $Verifica;
    ?>
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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.