🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Esercizi operatori logici in C

Codegrind TeamJul 22 2023

Ecco degli esercizi semplici con soluzione per praticare le basi degli operatori logici in C.

Esercizio 1

Chiedere all'utente di inserire un numero e verificare se è compreso tra due estremi dati.
#include <stdio.h>

int main() {
    int numero, estremoMinimo, estremoMassimo;

    printf("Inserisci un numero: ");
    scanf("%d", &numero);

    printf("Inserisci l'estremo minimo: ");
    scanf("%d", &estremoMinimo);

    printf("Inserisci l'estremo massimo: ");
    scanf("%d", &estremoMassimo);

    int verifica = (numero > estremoMinimo) && (numero < estremoMassimo);

    printf("Il numero è compreso tra gli estremi: %d\n", verifica);

    return 0;
}

Esercizio 2

Chiedere all'utente di inserire un numero e verificare se è pari.
#include <stdio.h>

int main() {
    int numero;

    printf("Inserisci un numero: ");
    scanf("%d", &numero);

    int verifica = (numero % 2 == 0);

    printf("Il numero è pari: %d\n", verifica);

    return 0;
}

Esercizio 3

Chiedere all'utente di inserire un numero e verificare se è sia positivo che dispari.
#include <stdio.h>

int main() {
    int numero;

    printf("Inserisci un numero: ");
    scanf("%d", &numero);

    int verifica = (numero > 0) && (numero % 2 != 0);

    printf("Il numero è positivo e dispari: %d\n", verifica);

    return 0;
}

Esercizio 4

Chiedere all'utente di inserire una stringa e verificare se è vuota.
#include <stdio.h>
#include <string.h>

int main() {
    char stringa[100];

    printf("Inserisci una stringa: ");
    scanf("%s", stringa);

    int verifica = (strlen(stringa) == 0);

    printf("La stringa è vuota: %d\n", verifica);

    return 0;
}

Esercizio 5

Chiedere all'utente di inserire una stringa e una sottostringa, quindi verificare se la stringa contiene la sottostringa.
#include <stdio.h>
#include <string.h>

int main() {
    char stringa[100], sottostringa[100];

    printf("Inserisci una stringa: ");
    scanf("%s", stringa);

    printf("Inserisci una sottostringa: ");
    scanf("%s", sottostringa);

    int verifica = (strstr(stringa, sottostringa) != NULL);

    printf("La stringa contiene la sottostringa: %d\n", verifica);

    return 0;
}

Esercizio 6

Chiedere all'utente di inserire due valori booleani (0 o 1) e verificare se almeno una delle due condizioni è vera.
#include <stdio.h>

int main() {
    int condizione1, condizione2;

    printf("Inserisci il valore della prima condizione (0 o 1): ");
    scanf("%d", &condizione1);

    printf("Inserisci il valore della seconda condizione (0 o 1): ");
    scanf("%d", &condizione2);

    int verifica = (condizione1 || condizione2);

    printf("Almeno una condizione è vera: %d\n", verifica);

    return 0;
}

Esercizio 7

Chiedere all'utente di inserire due valori booleani (0 o 1) e verificare se entrambe le condizioni sono vere.
#include <stdio.h>

int main() {
    int condizione1, condizione2;

    printf("Inserisci il valore della prima condizione (0 o 1): ");
    scanf("%d", &condizione1);

    printf("Inserisci il valore della seconda condizione (0 o 1): ");
    scanf("%d", &condizione2);

    int verifica = (condizione1 && condizione2);

    printf("Entrambe le condizioni sono vere: %d\n", verifica);

    return 0;
}

Esercizio 8

Chiedere all'utente di inserire un numero e verificare se è negativo o zero.
#include <stdio.h>

int main() {
    int numero;

    printf("Inserisci un numero: ");
    scanf("%d", &numero);

    int verifica = (numero <= 0);

    printf("Il numero è negativo o zero: %d\n", verifica);

    return 0;
}

Esercizio 9

Chiedere all'utente di inserire 5 numeri interi in un array e verificare se almeno uno dei valori è pari.
#include <stdio.h>

int main() {
    int numeri[5];

    printf("Inserisci 5 numeri interi:\n");

    for (int i = 0; i < 5; i++) {
        printf("Numero %d: ", i + 1);
        scanf("%d", &numeri[i]);
    }

    int verifica = 0;

    for (int i = 0; i < 5; i++) {
        if (numeri[i] % 2 == 0) {
            verifica = 1;
            break;
        }
    }

    printf("Almeno uno dei valori è pari: %d\n", verifica);

    return 0;
}

Esercizio 10

Chiedere all'utente di inserire una stringa e verificare se è palindroma (legge uguale al contrario).
#include <stdio.h>
#include <string.h>

int main() {
    char stringa[100];

    printf("Inserisci una stringa: ");
    scanf("%s", stringa);

    int lunghezza = strlen(stringa);
    int verifica = 1;

    for (int i = 0; i < lunghezza / 2; i++) {
        if (stringa[i] != stringa[lunghezza - 1 - i]) {
            verifica = 0;
            break;
        }
    }

    printf("La stringa è palindroma: %d\n", verifica);

    return 0;
}