Programmazione iOS e Mac, Costrutti di selezione e operatori logici

Un costrutto di selezione denota la scelta (selezione) tra due insiemi di istruzioni, in dipendenza del valore di una condizione (predicato) .

Un costrutto di selezione deve specificare

1)Una condizione che può assumere due valori vero o falso

2)Due insiemi di istruzioni

Costrutto di selezione IF

Operatori Logici

Operatori Logici e di eguaglianza

== —————-> uguale

!=  —————-> diverso

Hanno priorità inferiore  a quella degli operatori di relazione

Operatori logici di connessione

! ————->negazione (not)

&& ———-> congiunzione (and)

|| ————> disgiunzione (or)

Hanno priorità inferiore a quella di tutti gli altri operatori logici

Esempio: programma Objective-C per il calcolo del valore assoluto di un numero 

</pre>
<div>
#include <Cocoa/Cocoa.h>
 Int main(int argc, char *argv[]) {
<pre> float x,val_assoluto;
 NSLog(@“inserire un numero ”);
 scanf(“%f”,&x);//salviamo il valore della variabile immessa da input
 if (x >= 0.0)

      val_assoluto = x;
   else</pre>
val_assoluto = -x; NSLog(@“\n valore assoluto di %f
<pre>        = %f\n”,x,val_assoluto);
 return 0;</pre>
}

Costrutto di selezione nidificato 

Esempio: programma Objective-C per determinare se un numero intero è positivo, nullo o negativo

</pre>
<div>
#include <Cocoa/Cocoa.h>
 int main(int argc, char *argv[])

{
 int x;
 NSLog(@“ inserire un numero\n”); scanf(“%i”,&x);
 if (x > 0)
<pre>     NSLog(@“%i e‟ positivo”,x);
   else if (x == 0)

       NSLog(@“%i e‟ nullo”,x);
      else

       NSLog(@“%i e‟ negativo”,x);
  return 0;</pre>
}</div>
<div>
Costrutti  di ripetizione
While
While <predicato>
<corpo del ciclo>
endwhile

repeat until

repeat
<corpo del ciclo>
until <predicato>

do while

do{
<corpo del ciclo>
}
while(<predicato>);

Il costrutto for in Obj-c è equivalente a while

for (i=a;i<=b;i=i+c)
{
<corpo del ciclo>
}
oppure possiamo scrivere
i=a
while (i<=b)
{
<corpo del ciclo>
i=i+c;
}