Friday, December 13th 2019

Esercizi linguaggio C: Prima parte

Mettiamo alla prova le nostra conoscenza di C con tre semplici programmi.

Albero di natale

Prova a scrivere un programma che stampa un albero di natale.

Verifica il suo funzionamento e poi confrontalo con il mio che trovi qua sotto.

Soluzione
#include <stdio.h>;

int main(){
    printf("   A   \n");
    printf("  AAA  \n");
    printf(" AAAAA \n");
    printf("   T   \n");

    return 0;
}
    A
   AAA
  AAAAA
    T

In questo programma utilizzo le lettere A e T per stampare un albero di natale. Utilizzo \n per andare a capo e stampare una nuova riga.

Calcolo della media

Prova a scrivere un programma che calcola la media tra due numeri e stampa il risultato.

Verifica il suo funzionamento e poi confrontalo con il mio che trovi qua sotto.

Soluzione
#include <stdio.h>;

int main(){
    dobule numero1 = 20;
    double numero2 = 30;

    //calcolo della media = ( num1 + ... + numN ) / N
    double media = ( numero1 + numero2 ) / 2;
    printf("Media: %lf",media);

    return 0;
}
Media: 25

Guarda come ho utilizzato le parentesi tonde nella riga 7. Essendo la parte a destra dell’uguale a tutti gli effetti un’espressione matematica, ho utilizzato le parentesi tonde per calcolare la somma tra i due numeri prima della divisione per 2. Ricorda che in C si possono utilizzare solo le parentesi tonde per ordinare le espressioni.

calcolo espressione matematica C

Trovare il numero più grande

Prova a scrivere un programma che dati due numeri in input stampa il numero più grande.

Verifica il suo funzionamento e poi confrontalo con il mio che trovi qua sotto.

Soluzione
#include <stdio.h>;

int main(){
    int numero1;
    int numero2;

    printf("Inserisci il primo numero: ");
    scanf("%d",&numero1);

    printf("Inserisci il secondo numero: ");
    scanf("%d",&numero2);

    //comparo i due numeri per trovare il maggiore
    if(numero1 > numero2){
        printf("Numero piu grande: %d",numero1);
    }
    else if(numero1 < numero2){
        printf("Numero piu grande: %d",numero2);
    }
    else{
        printf("I numeri inseriti sono uguali");
    }

    return 0;
}

Inserendo in input 10 e 20 ottengo il seguente risultato:

    Numero piu grande: 20

Chiedo in input all’utente due numeri e li paragono.

In questo programma i casi sono tre:

  • Il primo numero è maggiore del secondo
  • Il primo numero è minore del secondo
  • I numeri sono uguali

Per ogni caso ho creato una condizione in un if che mi stampa l’esito del programma.

Programma bonus

Prova a scrivere un programma che dato un numero in input avverte l’utente se è primo oppure no.

Guarda i prossimi tutorial per scoprire la soluzione!