Blue Flower

Le strutture di controllo

Le istruzioni di un algoritmo, che rappresenta il procedimento risolutivo di un problema, sono organizzate secondo schemi classificabili in tre costrutti fondamentali, chiamati strutture di controllo.

  • Istruzioni organizzate in sequenza.
  • Istruzioni che vengono eseguite in alternativa con altre.
  • Istruzioni che devono essere eseguite in ripetizione.

Verranno ora descritti semplici esempi di programmi in linguaggio C in cui sono utilizzate le tre strutture di base.
La sequenza si rappresenta costruendo un blocco di istruzioni, ognuna terminante con il punto e virgola, delimitato all’inizio e alla fine da una coppia di parentesi graffe aperta e chiusa { }.
Per esempio, la parte di programma C che calcola la differenza tra due numeri viene codificata in questo modo:

#include <stdio.h>
main()
{

int num1, num2, differenza;
printf("Due numeri: ");
scanf("%d %d", &num1, &num2);
differenza = num1 - num2;
printf("risultato = %d",differenza);
}

Le istruzioni comprese tra le due parentesi graffe possono comparire all’interno di un’altra struttura di controllo (selezione o ripetizione), oppure possono essere le istruzioni che compongono la parte esecutiva del programma C.

ESEMPIO: Calcolare lo sconto del 20% sul prezzo di un articolo

Occorre acquisire in input la descrizione dell’articolo e il suo prezzo. Viene calcolato lo sconto e sottratto dal prezzo iniziale. Da ultimo si devono scrivere la descrizione dell’articolo e il nuovo prezzo scontato.

Programma C

/* CalcSconto.c : calcolo del prezzo scontato */
#include <stdio.h>
main()
{

/* input-output */
char descrizione[20];
float prezzo;
/* lavoro */
float sconto;
printf("Descrizione e prezzo: ");
scanf("%s %f", descrizione, &prezzo);
sconto = (float) prezzo * 20 /100;
prezzo = prezzo - sconto;
printf("%-20s %-10.2f \n", descrizione, prezzo);
}
Si noti che le variabili prezzo e descrizione sono sia di input sia di output.