Utvalg (datavitenskap)

I informatikk , i sammenheng med programmering , er utvalget (også kalt betinget struktur ), innenfor en løsningsalgoritme for et gitt problem, en struktur for å kontrollere flyten av utførelse av et program som indikerer til datamaskinen , basert på verifisering av en spesifisert logisk tilstand , som skal utføres mellom to sekvenser eller blokker med instruksjoner , og dermed realisere en behandlingslogikkkontroll . Sammen med sekvensen og iterasjonen er det en grunnleggende struktur for den algoritmiske løsningen av et gitt problem i henhold til Böhm-Jacopini-teoremet .

Oppsummert snakker vi om IF og ELSE.

Beskrivelse

Den mest kjente formen er vanligvis (i pseudokode ):

SE (condizione) ALLORA

(blocco per condizione vera)

ALTRIMENTI

(blocco per condizione falsa)

FINE-SE

Eksempel i C if ( condition ) { / * THEN i C eksisterer ikke, mens i Pascal og BASIC finnes det. * / / * blokk for sann tilstand * / ...; ...; } annet { / * blokk for falsk tilstand * / ...; ...; } / * ENDIF i C eksisterer heller ikke. * /

På noen språk, som C , Perl eller Java , kan utvalget ta minimumsformen ( HVIS er fraværende, SÅ blir det et spørsmålstegn, ELLER blir det en :, SLUTT -HVIS er fraværende):

(condizione) ? (blocco per condizione VERA) : (blocco per condizione FALSA).
In C è detto operatore ternario.

Eksempel i C /* For å sette z til maksimum mellom a og b . * / z = (a> b) ? a : b ;

Et spesielt tilfelle av valg er SELECT-CASES :

SELEZIONA - CASI variabile

CASO valore1:

(sequenza1)

CASO valore2:

(sequenza2)

(. . .)

CASO DEFAULT:

(sequenza di default)

FINE-CASI

Eksempel i C -bryter ( variabel ) { case value1: / * sekvens1 * / ...; ...; bryte ; saksverdi 2: / * sekvens2 * / ...; ...; bryte ; (...) default : // Denne blokken er ikke obligatorisk. / * standard sekvens * / ...; ...; bryte ; }

Med SELECT - CASES blir bare én av de foreslåtte sekvensene utført, avhengig av verdien i variabelen.

Hvis variabel = verdi1, vil sekvens1 bli utført; hvis variabel = verdi2, vil sekvens2 bli utført; hvis det ikke er noen spesielle tilfeller av variabel = verdiX, blir STANDARD-tilfellet utført.

Andre prosjekter