A recipe of: c basics (I costruttori condizionali: if, Switch)

In questo tutorial andremo a vedere cosa e’ e come utilizzare un costruttore condizionale e cosa e’ una condizione.

 

Ingredienti:

 

Che cosa e’ una condizione?

Una condizione e’ un qualcosa che riesce a far compiere una scelta al nostro programma “se questa condizione e’ verificata allora fai questo altrimenti fai quest’altro o semplicemente non fare niente”.

E’ una definizione un po’ blanda, ma andando avanti con gli esempi, il concetto dovrebbe entrarvi in testa piu’ facilmente.

Partiamo con degli esempi che non riguardano il linguaggio di programmazione ma vicende normali.

Facciamo finta di essere degli studenti e di dire “Se riesco a prendere 10 allo scritto stasera mi rilasso e mi premio con una pizza con gli amici”, qui abbiamo la nostra condizione ” se voto == 10 ” e la nostra azione che andremo a eseguire se e’ stata soddisfatta “prendo una pizza con gli amici e mi rilasso”. Quindi se vogliamo pensare a un modo per scriverlo, incominciando ad avvicinarci a un linguaggio di programmazione potremmo fare ” se ( voto == 10) allora stasera = pizza + riposo;

Capito questo esempio iniiziamo a vedere esattamente come scriverlo in c

 

L’if

L’if (in italiano se) imposta esattamente la nostra condizione si costruisce in questo modo :

if(condizione){ avvenimenti da eseguire se la condizione e’ vera }

Passiamo direttamente a un’esempio pratico per capire cosa succede
#include <stdio.h>

int main()
{
int a;
a = 2;
if(a == 2){
printf("la a vale 2!");
}
}

Se provate a scrivere nel compilatore questo stralcio di codice, quello che fate, e’ andare a controllare se il valore della nostra a e’ uguale a 2 e nel caso lo e’, allora andremo a stampare ” la a vale 2!” altrimenti non faremo niente

 

else

l’else (in italiano altrimenti), possiamo utilizzarlo in presenza di un’if per dirgli se la condizione dell’if non e’ vera allora fai quest’altra cosa, si struttura cosi:

if(condizione){cose che succedono se la condizione e’ verificata}

else{cose che succedono se la condizione non e’ verificata).

Riprendendo il programma di prima, andiamo a dirgli di stampare che la a non vale due nel caso abbia un valore diverso da 2.
#include <stdio.h>
int main()
{
int a;
a = 2;
if(a == 2){
printf("la a vale 2!");
}
else{
printf("la a non vale 2");
}
}

In questo caso, dentro l’else, andremo a dire al programma di stampare  “la a non vale 2” nel caso non valga 2.

 

else if

Se vogliamo scendere piu’ nello specifico, cioe’, se abbiamo la nostra condizione a==2 ma la nostra a vale 3, possiamo andare a specificare al nostro programma che se la vale 3 deve stampare “la a vale 3!” e che nel caso non valga ne 2 ne 3 stampi “la a non vale ne due ne tre”.

Per fare cio’ procediamo scrivendo questo codice:
int main()
{
int a;
a = 4;
if(a == 2){
printf("la a vale 2!");
}
else if (a == 3){
printf("la a vale 3");
}

else{
printf(“la a non vale ne 2 ne 3”);
}
return 0;
}
Questo codice ci stampera’ 2 se la a vale 2, 3 se la a vale 3, “la a non vale ne 2 ne 3” se la a non vale ne due ne tre.

Per testarlo vi basta cambiare l assegnamento alla a, in questo caso ad a assegnamo 4, di conseguenza il nostro programma entrera’ nell’ultimo else.

 

Switch

Lo switch,  possiamo utilizzarlo nel caso dobbiamo andare a specificare cosa succede in particolari valori di a.

Sara’ strutturato nel seguente modo:

switch(“variabile”) { case(“valore della variabile”) “cosa succede se il valore corrisponde” break }

Vediamo velocemente un esempio:
int main()
{
int a;
a = 4;
switch(a){
case(1):
printf("la a vale 1");
break;
case(2):
printf("la a vale 2");
break;
case(3):
printf("la a vale 3");
break;
case(4):
printf("la a vale 4");
break;
default:
printf("la a non vale ne 1 ne 2 ne 3 ne 4");
break;
}
return 0;
}

Alla fine, nel default, andate a scrivere quello che succede se la variabile non ha nessun valore tra quelli analizzati nei case.

Per concludere, vi segnalo un’altro ottimo compilatore online, visto che quello di tutorial point a volte puo’ dare dei problemi (o almeno a me a volte li sta dando non riuscendo a caricare il compilatore).

Nel caso potete usare QUESTO

 

 

Saluti dal vostro nabbo Developer

Marco Tamagno

Facebook

Google+

Rispondi