stdin

stdin

In questa lezione parleremo di stdin ovvero dello standard input.

Lo standard input, abbreviato stdin, è un canale da cui giunge un flusso di dati.

Il linguaggio C prevede i dispositivi standard predefiniti, denominati anche stream, come la tastiera, il monitor e la stampante. A questi dispositivi sono associati quattro file: stdin, stdout, stderr, stdprn.

Il flusso di input proviene dalla tastiera, e il programma trasferisce i dati effettuando operazioni di lettura. Quindi ogni lettura da tastiera viene vista come una lettura dal file stdin.

Il linguaggio C mette a disposizione delle funzioni sia per l’input che per l’output tramite la Standard Library.

Le funzioni sono dichiarate in stdio.h che sta per “standard input-output” header.

L’header file stdio.h contiene funzioni sia per la manipolazione di file (fclose, fopen, remove, …), sia per la manipolazione dell’input/output (getchar, puts, …).

Oltre alle funzioni, in stdio.h, sono definite anche le costanti (EOF, SEEK_END, …), le variabili (stdin, stdout, …) e i tipi di dati.

L’header file si include in questo modo:

#include <stdio.h>

Le funzioni di input che studieremo nelle prossime lezioni sono: scanf, getc e getchar.

In questa lezione abbiamo introdotto lo standard input stdin, nella prossima lezione parleremo di stdout, lo standard output.

Corsi Python
Corso su JavaScript


Alcuni link utili

Indice tutorial linguaggio C

Realizzare un menù di scelta in C

Strutture complesse in C

Esercizio sulle struct in C

Typedef struct C

Media per riga e per colonna

Somma elementi diagonale principale di una matrice

Come sommare gli elementi della cornice esterna

Come sommare due matrici

Sommare dei numeri di una matrice

Matrice trasposta

Prodotto tra matrici

Ricerca elementi in una matrice

Inserire dati in una matrice

Tavola pitagorica in C

Array multidimensionali

Programma sui triangoli in C

Media dei numeri in un array

Array con numeri random

Quick sort in C

Selection sort in C

Merge sort in C

Insertion Sort in C

Switch case in C

Switch case in C

Switch case in C è un costrutto a selezione multipla, e si basa dunque sul confronto tra il risultato di un’espressione e un insieme di valori costanti.

Abbiamo già spiegato il costrutto nella lezione precedente, adesso facciamo degli esempi pratici per capire meglio il funzionamento.

Esempio di Switch Case in C

Ecco un esempio di switch case in C che chiede l’inserimento di un numero compreso tra zero e quattro. Se si inserisce un numero compreso tra 0 e 4 si ha un messaggio con la conferma del numero inserito. Altrimenti il programma restituisce il messaggio non compreso.

Utilizzeremo l’istruzione break che provoca dunque l’uscita immediata dallo switch, come avevamo accennato nel precedente tutorial.

Corsi Python
Corso su JavaScript

Ecco dunque l’esempio completo:

#include <stdio.h>

int main() { 
    int a; 
    printf("Inserisci un numero compreso tra zero e quattro:\n"); 
    scanf("%d", &a); 
    
    switch (a) { 	
        case 0: 
            printf("Il numero è zero\n"); 
            break;
        case 1: 
            printf("Il numero è uno\n"); 
            break; 
        case 2: 
            printf("Il numero è due\n"); 
            break; 
        case 3: 
            printf("Il numero è tre\n"); 
            break; 
        case 4: 
            printf("Il numero è quattro\n"); 
            break; 
        default: 
            printf("Numero non compreso\n"); 
            break; 
    } 
    return 0; 
}

In questo esempio, l’utente inserisce un numero che viene confrontato con una serie di valori tramite lo statement switch. A seconda del numero inserito, verrà visualizzato un messaggio appropriato.

Secondo esempio di Switch Case in C

Controlliamo che un carattere inserito da tastiera è una vocale.

#include <stdio.h>
#include <ctype.h>

int main() {
    char carattere;
    printf("Inserisci un carattere: ");
    scanf(" %c", &carattere); // Nota: lo spazio prima di %c nel formato di scanf ignora eventuali spazi bianchi precedenti

    // Converte il carattere inserito in minuscolo per semplificare il confronto
    carattere = tolower(carattere);

    switch (carattere) {
        case 'a':
        case 'e':
        case 'i':
        case 'o':
        case 'u':
            printf("Il carattere inserito è una vocale.\n");
            break;
        default:
            printf("Il carattere inserito è una consonante.\n");
            break;
    }

    return 0;
}

In questo secondo esempio, l’utente inserisce un carattere e lo statement switch determina se è una vocale (‘a’, ‘e’, ‘i’, ‘o’, ‘u’) o una consonante. Il carattere viene convertito in minuscolo utilizzando la funzione tolower() della libreria ctype.h per semplificare il confronto. Infine, viene visualizzato un messaggio appropriato a seconda del risultato.

Corsi Python
Corso su JavaScript

Conclusioni

In questa lezione abbiamo realizzato due esempi.

Nel primo esempio, abbiamo utilizzato lo statement switch in C per gestire le decisioni multiple basate su un numero inserito dall’utente. Attraverso una serie di case, abbiamo confrontato il numero inserito con una serie di valori costanti (da 0 a 4) e abbiamo eseguito un blocco di istruzioni corrispondente a seconda del caso. Inoltre, abbiamo incluso un caso default per gestire eventuali valori non previsti. L’utilizzo del break ha garantito l’uscita immediata dallo switch dopo l’esecuzione del blocco corretto. Questo esempio illustra chiaramente come lo statement switch possa semplificare la gestione di diverse alternative in un programma, migliorandone la leggibilità e la manutenibilità.

Nel secondo esempio, abbiamo utilizzato lo statement switch per determinare se un carattere inserito dall’utente è una vocale o una consonante. Dopo aver convertito il carattere in minuscolo per uniformare il confronto, abbiamo confrontato il carattere con una serie di case corrispondenti alle vocali (‘a’, ‘e’, ‘i’, ‘o’, ‘u’). Se il carattere inserito corrisponde a una delle vocali, viene visualizzato un messaggio indicante che è una vocale. Altrimenti, viene eseguito il blocco di istruzioni sotto il caso default, che indica che il carattere inserito è una consonante. Questo esempio dimostra l’efficacia dello statement switch nel gestire diverse alternative in base ai valori di una variabile, fornendo una soluzione chiara e concisa per determinare la natura di un carattere.

In entrambi gli esempi, l’utilizzo dello statement switch ha contribuito a migliorare la struttura e la chiarezza del codice, fornendo un modo efficiente per gestire decisioni multiple in base ai valori delle variabili.

Alcuni link utili

Corso linguaggio C

Indice argomenti linguaggio C

Strutture di selezione

Esempi di selezione in C

Media per riga e per colonna

Somma elementi diagonale principale di una matrice

Sommare elementi cornice esterna

Come sommare due matrici

Matrice trasposta

Prodotto tra matrici

Ricerca elementi in una matrice

Inserire dati in una matrice

Tavola pitagorica in C

Array multidimensionali

Programma sui triangoli in C

Media dei numeri in un array

Array con numeri random

Quick sort in C

Selection sort in C

Merge sort in C

Insertion Sort in C

Switch case

Switch case

L’istruzione switch case è utilizzata quando ci sono dei problemi in cui la soluzione richiede una serie di scelte successive.

Quando ci troviamo di fronte a problemi che richiedono una serie di scelte successive, l’utilizzo di una sequenza di if può diventare scomodo e poco pratico. È in queste situazioni che entra in gioco l’istruzione switch-case, offrendo un’alternativa più chiara e organizzata.

Corsi Python
Corso su JavaScript

Sintassi del costrutto switch case in C

La sintassi di base dell’istruzione switch-case in linguaggio C è la seguente:

switch (espressione) {
    case valore1:
        // blocco di istruzioni per il caso valore1
        break;
    case valore2:
        // blocco di istruzioni per il caso valore2
        break;
    // altri casi...
    default:
        // blocco di istruzioni predefinito
        break;
}

Dove:

  1. Espressione: Viene valutata una sola volta e il suo risultato viene confrontato con i valori dei vari case.
  2. Case: Ogni case specifica un valore costante da confrontare con il risultato dell’espressione. Se il risultato corrisponde a uno dei valori specificati, viene eseguito il blocco di istruzioni corrispondente. L’istruzione break viene utilizzata per uscire dallo switch dopo l’esecuzione del blocco corretto.
  3. Default: Questo è un caso opzionale che viene eseguito se nessun caso corrispondente viene trovato.

L’importanza dell’istruzione break

È importante notare che in C c’è una peculiarità dello switch case: il “fall-through” automatico tra le clausole dello switch. Questo significa che, anche se una clausola viene eseguita, il controllo passa automaticamente alla clausola successiva, inclusa quella di default, a meno che non venga utilizzata l’istruzione break.

Corsi Python
Corso su JavaScript

Esempio pratico dell’istruzione switch-case in C

Supponiamo di dover scrivere un programma che stampi il giorno della settimana corrispondente a un determinato numero, dove 1 rappresenta il lunedì, 2 il martedì e così via fino a 7 per la domenica. Utilizzeremo l’istruzione switch-case per gestire questa logica:

#include <stdio.h>

int main() {
    int numeroGiorno;

    // Input del numero del giorno dall'utente
    printf("Inserisci un numero da 1 a 7: ");
    scanf("%d", &numeroGiorno);

    // Verifica del giorno corrispondente utilizzando switch-case
    switch (numeroGiorno) {
        case 1:
            printf("Lunedì\n");
            break;
        case 2:
            printf("Martedì\n");
            break;
        case 3:
            printf("Mercoledì\n");
            break;
        case 4:
            printf("Giovedì\n");
            break;
        case 5:
            printf("Venerdì\n");
            break;
        case 6:
            printf("Sabato\n");
            break;
        case 7:
            printf("Domenica\n");
            break;
        default:
            printf("Numero non valido. Inserisci un numero da 1 a 7.\n");
    }

    return 0;
}

In questo programma, chiediamo all’utente di inserire un numero da 1 a 7. Utilizzando l’istruzione switch-case, controlliamo il valore inserito e stampiamo il giorno corrispondente. Se il numero inserito non rientra nel range da 1 a 7, stampiamo un messaggio di errore.

Questo esempio dimostra come l’istruzione switch-case può essere utilizzata per gestire efficacemente una serie di scelte in base al valore di una variabile in C.

Conclusioni

L’istruzione switch-case in linguaggio C si rivela estremamente utile quando si devono gestire situazioni in cui è necessario effettuare una serie di scelte in base al valore di una variabile. Nel nostro esempio pratico, abbiamo visto come questo costrutto sia efficace nel determinare il giorno della settimana corrispondente a un numero inserito dall’utente.

La chiarezza e la struttura fornite dall’istruzione switch-case rendono il codice più leggibile e organizzato rispetto a un’implementazione basata su una serie di if-else if. Inoltre, l’uso dell’istruzione break ci consente di interrompere l’esecuzione sequenziale e controllata del programma, garantendo che solo il blocco di codice corrispondente venga eseguito.

In definitiva, l’istruzione switch-case è uno strumento fondamentale nella cassetta degli attrezzi di ogni programmatore in C, offrendo un modo efficiente per gestire una serie di scelte in base ai valori delle variabili. È importante comprendere come utilizzarla correttamente per scrivere codice più chiaro, conciso e manutenibile.

Alcuni link utili

Corso linguaggio C

Indice argomenti linguaggio C

La funzione fopen

La funzione fclose

Funzione fprintf

Funzione fscanf

Allocazione dinamica della memoria con malloc

Strutture in C

Typedef struct in C

Esercitazione sulle struct in C

Realizzare un menù di scelta in C

Strutture complesse in C

Come sommare gli elementi della cornice esterna

Come sommare due matrici

Matrice trasposta

Prodotto tra matrici

Ricerca elementi in una matrice

Tavola pitagorica in C

Array multidimensionali

Quick sort in C

Selection sort in C

Merge sort in C

Insertion Sort in C

Creare un sito web

Creare un sito web

Perchè creare un sito web per la tua attività?

In questo tutorial vi spiego i passi necessari per creare un sito web anche utilizzando semplicemente html e css.

Innanzitutto, il primo passo da fare per creare il tuo sito web è avere le idee chiare su quello che vuoi realizzare.
Partire con le idee chiare e ben precise ti consentirà di ottenere un prodotto efficace e adatto ai tuoi obiettivi.

Sei un pò indeciso su qualche punto?

Continua a leggere, ti suggerirò come iniziare a creare un sito web, anzi il tuo sito web!

come creare un sito web

Domande da farti prima di procedere alla creazione del sito web.


1. Perchè voglio crearlo?

2. Cosa voglio inserire?

3. Cosa mi aspetto?

4. A chi affidarmi?

5. Posso fare da solo? Quali strumenti potrei utilizzare?

Perché voglio crearlo?

Cominciamo a vedere le motivazioni che ci spingono alla creazione di un sito web.

Diciamo innanzitutto che oggi avere un proprio sito web è fondamentale per vari motivi.

Motivazioni

Un motivo potrebbe essere quello di avere una semplice ma bella vetrina online, in modo che gli utenti possano vedere cosa vendi. Grazie alla newsletter si può riuscire a fidelizzare molti più clienti e gestire promozioni e scontisti-che.

Oppure un motivo potrebbe essere quello di aprire un’attività su internet per la vendita dei prodotti online. In questo caso ti serve un vero e proprio gestionale che ti gestisca le vendite, oltre alla già citata newsletter per fidelizzare i tuoi clienti.

Oppure perché vuoi creare un blog e iniziare a guadagnare qualcosina con i programmi di affiliazioni o le visite al tuo sito (più in la ti spiegherò come fare). In questo caso ti dovrai dare da fare scrivendo tanti articoli sull’argomento in cui sei più preparato. Anche in questo caso crea una newsletter per la tua nicchia di clienti.

O ancora perché hai semplicemente una passione e vuoi condividerla con gli altri.

Bene per tutti questi motivi e molti altri oggi è assolutamente necessario essere presenti sul web!

Cosa voglio inserire?

Dopo aver capito i motivi che ti portano ad avere un sito web occorre stilare un progetto per studiare cosa inserire all’interno del sito.

Avere ben chiaro come e cosa inserire è un buon punto di partenza che ti consentirà di avere le idee chiare fin dall’inizio.

Che cos’è lo storyboard?

Lo storyboard si può vedere come lo schizzo del tuo sito web, una descrizione tematica di come dovrà essere il tuo sito. Quindi occorre disegnare anche semplicemente su carta degli schizzi delle pagine che vuoi creare e quali voci del menù inserire.

storyboard di un sito web

Cosa mi aspetto dal mio sito web?

Cosa aspettarsi da un sito web è una domanda da porsi per capire la strategia da adottare.

Voglio trovare più clienti per vendere i miei prodotti?

Voglio creare una nicchia di clienti da tenere sempre aggiornata sull’uscita di nuovi articoli?

Oppure voglio aiutare i clienti a trovare una soluzione ai loro problemi?

Definire il target di utenti a cui rivolgersi è il passo successivo da definire.
Sia che ti aspetti un guadagno dal sito stesso, sia che vuoi solo pubblicizzare un prodotto, è importante avere le idee chiare al fine di trovare la giusta strategia.

A chi affidarmi per creare un sito web?

La scelta di chi curerà il tuo prodotto è importantissima.

Oggi ci sono tanti professionisti online e la scelta è varia.
E’ importante avere fiducia nella persona a cui stai affidando il tuo progetto, perché sarà quella che curerà in dettaglio la tua attività online.

Posso fare da solo?

Fare da soli oggi con gli strumenti che ci sono è possibile, ma non sempre si raggiungono i risultati desiderati, bisogna tenere ben presente che i professionisti hanno l’esperienza giusta mentre voi siete alle prime armi.
Ma! BISOGNA PUR INIZIARE! Quindi, se avete tanta pazienza e buona volontà, vi darò le giuste indicazioni per costruire un sito web da soli.

Quali strumenti utilizzare per creare un sito web?

Le strade da seguire possono esser queste:

  • Studiare il codice necessario per la realizzazione del sito web (HTML, CSS, Javascript, Php). Procurarsi un buon web-editor e iniziare a creare il sito web.
  • Utilizzare uno strumento gratuito, oggi ce ne sono molti, che vi consentono di realizzare il sito web senza conoscere o quasi il codice che sta sotto. Uno di questi strumenti è WordPress, un potente software open source che consente di creare blog, siti internet ed e-commerce.
Primo caso- studiare il codice

Nel primo caso per creare un sito web occorre procurarsi un manuale di HTML e di CSS. Ce ne sono tantissimi in giro, oppure potete seguire anche la mia semplicissima guida. Prendere anche un manuale di JavaScript se volete aggiungere qualche effetto accattivante al vostro sito internet e un manuale di PHP se volete aggiungere del codice dinamico (per la creazioni di cataloghi ed e-commerce ad esempio)

Può sembrare molto ma vi assicuro che è tutto molto semplice e piacevole da studiare e darà le sue soddisfazioni.

Il contro è il tempo a disposizione. Se dovete studiare ex-novo questi linguaggi ci vorranno all’incirca tre mesi per creare il vostro sito web.

Quindi se non avete questo tempo a disposizione allora optate per la seconda soluzione.

Secondo caso – utilizzare WordPress

La seconda soluzione può essere data da un potente software di creazione siti web che è WordPress.

Il tempo per imparare WordPress è molto più breve. Vi assicuro che con tanta buona volontà nel giro di una settimana gà metterete su una bozza del vostro sito web.

Insomma entro un mese potreste vedere il vostro sito web online.

Quindi appassionatevi e cominciate a programmarlo.

In giro ci sono tante guide su WordPress, ve ne posso consigliare qualcuna ottima che troverete su Amazon, basta seguire il link sotto.

WordPress. La guida completa. Creare blog e siti professionali

wordpress la guida completa
Guida WordPress

Webmaster con WordPress, Seconda Edizione: Creare Rapidamente e facilmente Siti Web Professionali a Costo Zero

webmaster con wordpress nuova edizione

Infine l’ultima che mi sento di consigliare:

Sviluppare con WordPress

creare siti web con wordpress

Alcuni link utili:

Immagini per il sito web

Scegliere il dominio per il sito web

Font per il sito web

Struttura del sito web

Quali colori scegliere per un sito web

Media fra tre numeri in C

Media fra tre numeri in C

In questa lezione, svilupperemo un semplice programma che calcola la media fra tre numeri interi in linguaggio C. I numeri saranno inseriti dall’utente.

Passaggi Principali:

  1. Input da Tastiera: Prendiamo in input tre numeri interi utilizzando la funzione scanf() e li memorizziamo nelle variabili a, b e c.
  2. Calcolo della Media: Calcoliamo la media dei tre numeri utilizzando la formula: media = (a + b + c) / 3. Nota che il risultato della divisione viene memorizzato in una variabile di tipo float per mantenere la precisione dei decimali.
  3. Visualizzazione del Risultato: Utilizziamo la funzione printf() per visualizzare il risultato della media. Abbiamo specificato la precisione %6.2f, che significa che verranno visualizzate 6 cifre in totale, con 2 cifre dopo la virgola.
Corsi Python
Corso su JavaScript

Ecco quindi il listato completo del semplice algoritmo per il calcolo della media fra tre numeri in linguaggio C:

#include <stdio.h>

int main() {
    int a, b, c;
    float media;
    
    // Input da tastiera
    printf("Inserisci il primo numero: ");
    scanf("%d", &a);
    printf("Inserisci il secondo numero: ");
    scanf("%d", &b);
    printf("Inserisci il terzo numero: ");
    scanf("%d", &c);
    
    // Calcolo della media
    media = (float)(a + b + c) / 3;
    
    // Visualizzazione del risultato
    printf("La media è: %6.2f\n", media);

    return 0;
}

Conclusioni

Questo esempio che calcola la media di tre numeri in linguaggio C è semplice ma efficace, in quanto ci consente di capire meglio come utilizzare le funzioni di input e output in C. Anche se il programma è relativamente breve, introduce concetti importanti come l’input da tastiera, il calcolo aritmetico e la formattazione dell’output.

Nelle prossime lezioni, esploreremo ulteriori concetti, come il casting degli operandi, che abbiamo utilizzato per garantire la precisione del risultato del calcolo della media. Continuate a praticare e non esitate ad esplorare nuovi argomenti per migliorare le competenze in C!

Alcuni link utili

Indice tutorial linguaggio C

Realizzare un menù di scelta in C

Strutture complesse in C

Esercizio sulle struct in C

Typedef struct C

Somma elementi diagonale principale di una matrice

Come sommare gli elementi della cornice esterna

Come sommare due matrici

Matrice trasposta

Prodotto tra matrici

Ricerca elementi in una matrice

Quali metodi per inserire dati in una matrice

Tavola pitagorica in C

Array multidimensionali

Quick sort in C

Selection sort in C

Merge sort in C

Insertion Sort in C

55711