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

    Chiedo aiuto nella conversione dell'algoritmo

    Ho un file di testo in cui verrà scritta una stringa, dipendente dallo stato di alcune variabili...lo stato è questo:

    $h = True && $r = 0 => allora non scrivere
    $h = True && $r = 1 => scrivi
    $h = False && $r = 0 => scrivi
    $h = False && $r = 1 => scrivi

    ho pensato di risolverlo scrivendo una funzione tipo

    Codice PHP:
    if ($h True && $r 0){
         
    //NULL
    }else{
         
    //codice per scrivere la stringa nel file TXT

    a livello visivo, e forse anche di pulizia del codice, non mi piace vedere quella zona //NULL che non contiene codice....esiste un altro metodo?

  2. #2
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Prova cosi'

    if ($h != true || $r != 0){

    //codice per scrivere la stringa nel file TXT
    }

    O.T. (scusa ma perche sto nick? )

  3. #3
    Basta negare tutto (e risolvere gli errori - nota il doppio uguale):

    Codice PHP:
    if (!($h && $r == 0)){ 
         
    //codice per scrivere la stringa nel file TXT 


  4. #4
    Originariamente inviato da zakros
    Prova cosi'

    if ($h != true || $r != 0){

    //codice per scrivere la stringa nel file TXT
    }

    O.T. (scusa ma perche sto nick? )
    Diciamo che sono DARK!!!

    Basta negare tutto (e risolvere gli errori - nota il doppio uguale):

    codice PHP:
    if (!($h && $r == 0)){
    //codice per scrivere la stringa nel file TXT
    }
    ma andando per logica, se $h = F && $r = 0 negando tutto diventa $h => True e ($r == 0) risulterebbe vera, quindi si trasformerebbe nel primo caso in cui la stringa non verrà scritta, quando in realtà in quel caso dovrebbe scriverla, mi spiego meglio...

    prendiamo solo il 3° caso:

    $h = FALSE && $r = 0 => In questo caso dovrebbe scrivere ma se applico
    !($h && $r==0) per come è scritta nega $h e verifica $r, quindi per logica...
    diventa...
    $h = True && $r risulta vera, quindi non scriverebbe la stringa.

    Cmq, provo a fare i test e vedo se ho ragione!

  5. #5
    Io ti ho consigliato di negare tutto (per semplicità) e quindi ho messo tutta la condizione tra parentesi e l'ho negata con un !
    zakros l'ha proprio negata (la mia e quella di zakros sono uguali) e se fai caso ha sostituito && con ||

    Cmq ti ricordo che = in una condizione si scrive == (doppio uguale)

  6. #6
    Cmq ho capito perchè non mi trovavo...non mi ero accorto di non aver chiuso il tag di input che restituisce il valore di $h per questo risultava sempre FALSE :P

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.