Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Fondamenti di Informatica
Riassunto Creazione di un progetto Dev C Compilazione Esecuzione Hello World/comando printf Inserimento/comando scanf Somma dei primi 20 numeri/ciclo for 01/05/2019
2
Esercitazione 2 Cosa vedremo oggi? Costrutto decisionale IF-ELSE
Ciclo DO-WHILE e WHILE Gli ARRAY Il costrutto SWITCH-CASE L’istruzione BREAK 01/05/2019
3
IF-ELSE Il costrutto IF rappresenta un punto di decisione all’interno del codice, vediamo un esempio per capire cosa significa… 01/05/2019
4
IF-ELSE Come si trasforma tutto questo in codice C?
Verifichiamo SE un numero introdotto da tastiera è pari o dispari… usiamo le istruzioni viste nella lezione precedente… 01/05/2019
5
IF-ELSE Verifichiamo se un numero è pari o dispari…
#include <stdio.h> void main(void){ int numero=0; printf("Inserisci un numero intero: "); scanf("%i",&numero); printf("Il numero %i ",numero); if (numero%2==0){ printf("e' un numero pari"); }else{ printf("e' un numero dispari"); } printf("\n"); system("pause"); 01/05/2019
6
IF-ELSE #include <stdio.h> #include <math.h> void main(void){ int numero=0; printf("Inserisci un numero intero: "); scanf("%i",&numero); printf("Il numero %i ",numero); if (numero%2==0){ printf("e' un numero pari"); }else{ printf("e' un numero dispari"); } printf("\n"); system("pause"); Includo la libreria matematica che mi permette l’utilizzo del comando “fmod” x%y calcola il resto della divisione x/y 01/05/2019
7
Do-While E se volessi fare questa verifica su più numeri? …introduco un ciclo #include <stdio.h> #include <math.h> void main(void){ char risposta; int numero=0; do{ printf("Inserisci un numero intero: "); scanf("%i",&numero); printf("Il numero %i ",numero); if (numero%2==0){ printf("e' un numero pari"); }else{ printf("e' un numero dispari"); } printf("\n"); printf("Vuoi verificare un'altro numero? "); fflush(stdin); scanf("%c",&risposta); }while ((risposta=='y')||(risposta=='Y')); system("pause"); Eseguo questo codice per tutto il tempo che rispondo y o Y alla domanda 01/05/2019
8
Ambiente Dev C Avete notato che la condizione di controllo del ciclo era posta al termine del blocco??? … e se la mettessi all’inizio cosa otterrei??? Vediamo un esempio e nel frattempo introduciamo gli ARRAY 01/05/2019
9
WHILE con ARRAY Inseriamo 10 numeri da tastiera e vediamo come gestirli tutti insieme per poi moltiplicare tutto per 10… #include <stdio.h> void main(void){ int vettore[10]; int i=0; int numero; while (i<10){ printf("inserisci un numero "); scanf("%i", &numero); vettore[i]=numero; i++; } printf("\n\n"); for(i=0;i<10;i++){ printf("L'elemento numero %i e' %i \n",i ,vettore[i]); system("pause"); Dichiaro un vettore Scorrendone l’indice da 0 a 9 lo riempio con i valori introdotti da tastiera Stampo la posizione e i valori memorizzati 01/05/2019
10
SWITCH-CASE Adesso sappiamo fare diverse cose… proviamo a metterle insieme e aggiungiamo qualche cosa di nuovo… SWITCH-CASE Questo costrutto permette all’utente di effettuare una scelta multipla… Vediamo un esempio per capire meglio… 01/05/2019
11
SWITCH-CASE In questo esempio verifichiamo, a partire dalla data odierna, in quale stagione ci troviamo. N.B: Fate attenzione alle 4 possibili scelte 01/05/2019
12
SWITCH-CASE + - * / Costruiamo un programma che:
presi in ingresso 2 operandi, dia la possibilità di scegliere quale operazione aritmetica svolgere * / 01/05/2019
13
SWITCH-CASE Vediamo il codice. switch (operazione){
risultato=primo_operando+secondo_operando; break; case 2: risultato=primo_operando-secondo_operando; case 3: risultato=primo_operando*secondo_operando; default: if (secondo_operando==0){ printf(".... non si puo' dividere per zero!\n"); flag=1; }else{ risultato=primo_operando/secondo_operando; } if (flag==1){ printf("Peccato... non ho potuto calcolare il risultato\n"); printf("Il risultato dell'operazione e' %f \n",risultato); system("pause"); #include <stdio.h> void main(void){ int primo_operando; int secondo_operando; float risultato; int operazione; int flag=0; printf("Inserisci il primo operando: "); scanf("%i",&primo_operando); printf("Inserisci il secondo operando: "); scanf("%i",&secondo_operando); printf("Scegli quale operazione svolgere:\n"); printf("per la somma secegli 1\n"); printf("per la sottrazione scegli 2\n"); printf("per il prodotto scegli 3\n"); printf("per la divisione scegli 4\n"); do{ scanf("%i",&operazione); if ((operazione<1)||(operazione>4)){ printf("Scelta non corretta, riprovare\n"); } }while((operazione<1)||(operazione>4)); 01/05/2019
14
Esercizio Esercizio Scrivere un file C, all’interno di un progetto Dev C che permetta di effettuare + - * oppure / fra un array di 10 numeri ed un valore scalare, entrambi inseriti dall’utente, inoltre fare in modo da ripetere l’operazione senza dover rilanciare il programma. Obbligo dell’utilizzo della struttura switch-case e di un costrutto a scelta fra while e do-while 01/05/2019
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.