Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    99

    Confronto 3 variabili fra loro

    Ciao sto cercando di confrontare 3 variabili fra loro.
    Per ottimizzare notevolmente il codice ed evitare un infinità di if,
    mi chiedevo se qualcuno ha qualche suggerimento.

    La logica è questa.
    Ho 3 numeri random. Da 0 a 5 casuali.
    Codice PHP:
    $Rand_1 rand(05);
    $Rand_2 rand(05);
    $Rand_3 rand(05);

            
    // Gestione risultati Uguali
            
    if (($Rand_1 == $Rand_2) && ($Rand_2 == $Rand_3)) { //Se tutti i valori sono uguali
               //Tiro fuori il valore in comune
               
    $Unico=$Rand_1;
            } 
    Potete immaginare che la probabilità in cui questi numeri siano uguali o doppioni è molto alta. Quindi...

    • Qualora tutti risultino uguali devo prendere il valore di un solo numero (tiro fuori una sola variabile con lo stesso valore dei 3, avrò solo 1 numero).


    • Se due numeri sono identici devo prendere il valore di entrambi e il terzo (tiro fuori la variabile in comune e l'altra, quindi avrò 2 numeri).


    • Se tutti sono diversi fra loro tengo in considerazione tutti i 3 valori (3 numeri).


    Come posso impostare il codice?

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    crea un array vuoto
    calcola un random per volta dentro un ciclo for
    sempre dentro il for, usa if per verificare se il numero calcolato è già presente nel'array
    se non c'è, lo inserisci, altrimenti non fai nulla
    il risultato sarà un array con i valori unici

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    99
    non ho capito bene cosa intendi. Puoi farmi un esempio a codice, per favore?

  4. #4
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Codice PHP:
    $unico = array()for($i 0$i 3$i++) {
        
    $rand rand(05);
        if(!
    in_array($rand$unico) {
            
    $unico[] = $rand;
        }
    }
    var_dump($unico); 

  5. #5
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Oppure cosi.

    Codice PHP:
    list($r1,$r2,$r3) = array_rand(array(1=>1,2=>2,3=>3,4=>4,5=>5),3);    
    print 
    "$r1,$r2,$r3";    

    print 
    "<br/>";    

    list(
    $r1,$r2,$r3) = array_rand(array_flip(array(1,2,3,4,5)), 3);    
    print 
    "$r1,$r2,$r3"
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    99
    grazie a tutti!

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.