Scopo di questa esercitazione è di familiarizzarsi con i costrutti di controllo del C, con l' utilizzo di alcune funzioni standard del linguaggio nonché con i convertitori di formato della printf e con l' utilizzo e le caratteristiche dei tipi dati primitivi del linguaggio.
Al solito, si suggerisce di creare una directory apposita per i files relativi a questa esercitazione.
1) if ( x >= 10 ) x = x + 6; if ( x >= 16 ) x = x % 16;
2) if ( x <= 10 ) x = x - 5; if ( x <= 5 ) x = x - 5;
3) if ( x >= 10 ) x = 10 + x % 10; if ( x > 20 ) x = x / 16;Verificare le previsioni compilando ed eseguendo un programma che implementi i 3 costrutti e scriva il valore di x (variabile intera). Verificare poi se non sia possibile semplificare il confronto usando un unica condizione per ciascuno dei tre.
if (x > 12) if(y > 20) printf(" Hello \n"); else printf(" Hi! \n");
if ((x ==1) || (x==2)) printf(" Caso 1 \n"); else if ((x == 3) || (x == 4) || (x == 5)) printf(" Caso 2 \n"); else if ((x == 6) || (x ==7)) printf(" Caso 3 \n"); else if (x == 8) printf(" Caso 4 \n");
#include <stdio.h> #define MAX 50 int main() { int i=1; int total = 0; while (i < MAX){ total = total + i++; } printf("%d \n",total); return 0; }
Se si include, oltre a stdio.h anche il file math.h e si compila con l' opzione -lm di gcc ( gcc -ansi -pedantic -lm -o nomefile.x nomefile.c) si può utilizzare la funzione di libreria sqrt(x) per calcolare la radice quadrata di x.a
1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 .... . . . 10 20 30 40 50 60 70 ...Per questo esercizio puo' essere utile consultare la descrizione delle conversioni di formato della printf
x = r cos(phi)
y = r sin(phi)
e
r = sqrt( x2 + y2 )
phi = arc tg (y/x)
L' inclusione della libreria matematica mette a disposizione, oltre alla radice quadrata anche le funzioni trigonometriche dirette e inverse (sin(x),cos(x), atan2(y,x)=arc tg (y/x)). Per maggiori informazioni su ciascuna function man nome_function.