Visualizzazione dei risultati da 1 a 3 su 3

Discussione: il numero più alto

  1. #1
    Utente di HTML.it L'avatar di Base
    Registrato dal
    Apr 2001
    Messaggi
    822

    il numero più alto

    ho creato un semplice test di 10 domande dove facendo clic sulle risposte A B o C si incrementano i valori rispettivamente:
    rA
    rB
    rC

    con questo script calcolo semplicemente chi ha il valore più alto, nel caso di parimerito dovrebbe essere soddisfatto l'ultimo else.. invece non si comporta così:
    ad esempio:
    rA = 9
    rB = 1
    rC = 0

    dovrebbe soddisfare solo la prima condizione, invece soddisfa sia la prima che l'ultimo else ?
    perchè ?????

    ecco lo script:
    codice:
    on (release) {
    	rA = _level0.risp_a;
    	rB = _level0.risp_b;
    	rC = _level0.risp_c;
    	if ((rA>rB) && (rA>rC)) {
    		trace("MAGGIORANZA A");
    		gotoAndStop("a");
    	}
    	if ((rB>rA) && (rB>rC)) {
    		gotoAndStop("b");
    		trace("MAGGIORANZA B");
    	}
    	if ((rC>rA) && (rC>rB)) {
    		trace("MAGGIORANZA C");
    		gotoAndStop("c");
    	} else {
    		gotoAndStop("m");
    		trace("MAGGIORANZA MIX");
    	}
    }
    chi mi aiuta sto impazzendo.

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182

    Re: il numero più alto

    il comportamento anomalo è probabilmente dovuto al fatto che gli if non sono collegati e di conseguenza l'else fà capo solo all'ultimo if, per collegarli devi fare la serie con

    if(){
    } else if(){
    } else if(){
    } else{
    }

  3. #3
    Utente di HTML.it L'avatar di byaur
    Registrato dal
    Aug 2004
    Messaggi
    1,061
    quoto quello che ha detto and80...
    inoltre vedendo il codice che hai scritto tu hai una serie di if senza else, quindi non esclusivi, nel senso che se vedi il flusso di codice, con i dati riportati, è normale che ti stampa prima "MAGGIORANZA A" e poi "MAGGIORANZA MIX"... questo perchè entra nel primo if... ->stampa, non entra nel secondo, non entra nel terzo ALLORA entra nell'else e ->ristampa....

    Chi di noi non vorrebbe
    sollevare il velo sotto cui sta nascosto il
    futuro...
    David Hilbert

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