I.S.I.S. “B.VARCHI”
LICEO SCIENTIFICO-CLASSICO-ARTISTICO -IPSSCTA R. MAGIOTTI
Viale Matteotti, 50 - 52025 MONTEVARCHI
Tel. 055 9102774 – 0559103434 – fax 055 9103252
C.F. 81004290516 e-mail: [email protected]
Materia/e:Informatica
ANNO SCOLASTICO 2015/2016
Classe: 2 B Scienze Applicate
(LICEO “B.VARCHI”)
Prof.Marco La Grassa email [email protected]
PROGRAMMA SVOLTO
Testo adottato: Corso di Informatica Linguaggio C e C++ Volume 1 Hoepli
ARGOMENTI SVOLTI
PROGETTAZIONE DI ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE
Definizione di algoritmi e caratteristiche, Diagramma di Flusso , convenzioni Grafiche.
Linguaggi informatici, linguaggi ad alto livello, compilatori ed interpreti.
PROGRAMMARE IN LINGUAGGIO C
• IDE DEV c++. Caratteristiche e funzionamento dell’ambiente di sviluppo.
• File.c file.exe.
• Struttura di un Programma in c
• Utilizzo delle librerie stdlib e stio
• Istruzioni di Input e di Output, utilizzo delle istruzioni printf() e scanf(), getchar().
Specifiche di conversione per l’output di numeri int e float
• Variabili, tipi di variabili (int , float , char), dichiarazione di una variabile, assegnazione di un valore ad
una variabile.
• Operatori tra numeri interi, divisione tra numeri interi, resto intero della divisione (operatore modulo).
• Casting (conversione di tipi di dato), casting esplicito.
• Operatori unari, incremento e decremento, var++; var—
• Selezione semplice e doppia, istruzione IF () …. ELSE, struttura e utilizzo
• Istruzione IF()… ELSE, nidificato.
• Operatori logici, operatore AND &&, operatore OR||; diverso !.
• Utilizzo degli operatori logici nell’istruzioni IF.. , WHILE(), DO WHILE().
• Istruzioni di Iterazione
• Istruzione WHILE() , ciclo a condizione iniziale
• Istruzione FOR(), ciclo a conteggio
• Istruzione DO WHILE(), ciclo a condizione finale
• Esempi di ciclo FOR() nidificati
• Generazione di Numeri Random
1
•
•
•
Funzioni srand(), rand() , generazione di numeri random in determinato intervallo.
Libreria Matematica MATH.H
Funzioni sqrt(), pow(), exp()
PROGRAMMAZIONE LABORATORIO
• Programmi con operazioni matematiche di numeri interi
• Programmi per il calcolo di aree e perimetri di figure geometriche
• Programma che calcola il massimo e il minimo di tre numeri interi
• Programma che ordina in maniera crescente tre numeri interi
• Programma che cola la media di tre numeri reali
• Programmi per il calcolo dell’importo lordo, dato l’importo netto e iva %
• Programmi per il calcolo dell’importo scontato, con utilizzo dell’istruzione IF
• Programmi che individuano se un numero è pari o dispari
• Programmi che individuano se un numero appartiene ad un determinato intervallo
• Programma che somma tutti i numeri da 0 a n
• Programma che svolge il fattoriale di n
• Programmi che sommano n numeri inseriti da tastiera
• Programmi che generano numeri random in un determinato intervallo.
• Programmi che utilizzano funzioni della libreria MATH.H ( calcolo dell’ipotenusa di un triangolo
rettangolo , calcolo della potenza di un numero)
• Programma per la stampa della Tabellina Pitagorica pag 533
• Programmi pag 516 e pag 521
Data: Montevarchi 15/06/2016
Gli allievi
___________________________
Il Docente
Marco La Grassa
________________________
2
OBBIETTIVI MINIMI
•
Istruzione IF… ELSE
•
Iterazione, (istruzioni for(), while(), do while())
•
Operatori logici (AND, OR, NOT)
•
Somma di una sequenza di n di numeri
•
Utilizzo dell’istruzioni for(), while(), do .. while()
•
Generazione di numeri random in un determinato intervallo
3
Esercizi 1
1) Scrivere un programma in linguaggio che calcola la l’importo Totale della spesa
• Il programma richiede N numero max di prodotti da acquistare
• Il programma esce dal ciclo quando si raggiunge il numero dei prodotti o quando l’utente
inserisce 0
• Si calcola l’importo totale
• Si calcola la media
• Si stampano i valori
2) Scrivere un programma in linguaggio che consenta di inserire una sequenza di numeri interi
• Esce dal ciclo quando si è inserito il valore -1 o si supera N° 10 elementi
• Il programma somma e conta quanti sono i numeri multipli di 4
• Il programma stampa la somma e il numero dei numeri che soddisfano la condizione
• Stampa il numero complessivo dei numeri inseriti
3) Scrivere un programma in linguaggio c che consenta di calcolare l’altezza media degli alunni di una
classe, il programma richiede:
• Il numero degli alunni
• L’altezza di ogni alunno
• Calcola il valore medio dell’altezza
• Stampa l’altezza_media e il numero complessivo degli alunni
• Se l’altezza_media è minore di 150 cm, stampa “altezza molto bassa”
• Se altezza_media>=150, ma altezza:_media <160 stampa “altezza media bassa”
• Se altezza_media>=160, ,ma altezza:_media <170 stampa “altezza media alta”
• Se altezza_media>=170 stampa “altezza media alta”;
4
Esercizi 2
1) Scrivere un programma in linguaggio c che svolge le seguenti operazioni:
a) Genera una sequenza di numeri random compresi tra 1 e 6
b) Quando il numero 6 è stato estratto 3 volte si esce dal ciclo
c) Conta quanti lanci effettuati sono stati fatti
d) Se il rapporto tra il numero di volte che è stato estratto il 6 e il numero di lanci è >0,3 scrive
“valore elevato” altrimenti scrive “OK”
e) Stampa il numero dei lanci
f) Stampa il numero di volte estratto il 6
g) Stampa il rapporto precedentemente trovato.
2) Scrivere un programma in linguaggio c che svolge le seguenti operazioni:
a) Permette l’inserimento di un numero N da tastiera
b) Estrae N numeri random compresi tra 10 e 105
c) Somma e conta i numeri estratti
d) Conta tutti i numeri multipli del 5
e) Stampa tutti i risultati
3) Scrivere un programma in linguaggio c che svolge le seguenti operazioni:
a) Permette l’inserimento di un numero N da tastiera
b) Estrae N numeri random compresi da 0 a 100
c) Si stampano i numeri estratti
d) Si contano i numeri estratti
e) Si esce dal ciclo quando vengono estratti N numeri o quando viene estratto il numero 0
f) Si verifica se il numero dei numeri estratti estratti coincide con N
Domanda aggiuntiva
Realizzare un programma in c che genera una sequenza di numeri random da 10 a 20 stampa i numeri
estratti , esce dal ciclo quando vengono estratti 3 numeri pari consecutivi
5
2 B Compito di Ottobre
A)
1) Realizzare un programma in linguaggio C che svolge le seguenti operazioni:
riportare il diagramma di flusso.
a. Definisce le variabili necessarie
b. Legge n numero intero da tastiera
c. Legge m numero intero da tastiera
d. Effettua la divisione tra interi n/m, calcola la divisione e il resto intero della divisione e stampa i
risultati indicando cosa viene stampato
e. Stampa multiplo di 5 se il numero N inserito è multiplo di 5
2) Realizzare un programma in linguaggio C, che svolge le seguenti operazioni:
a. Dichiara le variabili necessarie
b. Legge 4 importi , importo1, importo2, importo3, importo4
c. Calcola l’importo totale , (e stampa il valore)
d. Calcola l’importo medio ( e stampa il valore)
e. Se l’importo totale è maggiore di 2000 si effettua uno sconto del 20% altrimenti del 5%
f. Stampa ImportoScontato, ScontoVal
g. Spiegare il tipo di variabili utilizzate e spiegare il motivo
3) Dato la seguente porzione di programma, riportare cosa stampa il programma
.
.
.
Printf(“ fase di elaborazione \n”);
n=5;
a=1;
n=n*a+2
printf(“\n si riportano i risultati”);
a=2;
n=a+n
printf(“la variabile a vale %d, \n la variabile n vale %d”,a,n);
.
4) Spiegare che cosa sono le variabili e i tipi di variabili
5) Spiegare la sintassi e il funzionamento della funzione scanf();
N.b.Nelle operazioni di input e output il programma stampare all’utente cosa deve essere inserito o cosa
viene stampato
6
2 B compito Dicembre
Fila B
Esercizio1
Scivere un linguaggio in linguaggio c che svolge le seguenti operazioni, definisce le variabili necessarie,
il programma deve comunicare con l’utente indicando le operazioni che svolge
1) Legge un numero intero N da tastiera
2) Somma i primi N numeri multipli di 5
3) Stampa la somma ottenuta
4) Se la somma è compresa nell’intervallo [30,50] o [70,80] stampa “buono”
Esercizio 2
Scrivere un programma in linguaggio c che consenta di calcolare il peso medio dei giocatori di una classe, il
programma richiede:
definisce le variabili in maniera idonea , (utilizzare come variabili contatore variabili int, variabili alpeso
somma, media float)
1) Il numero dei giocatori
2) il peso di ogni giocatore somma tutti i pesi
3) Stampa la somma dei pesi
4) Calcola il peso medio e stampa il valore trovato
Se il peso_media è minore di 50 Kq, stampa “peso molto bassa”
Se peso_media>=50, ma peso_media <60 stampa “peso media bassa”
Se peso_media>=160, ,ma peso_media <170 stampa “peso media alta”
Se peso_media>=170 stampa “peso medio alto”;
Esercizio 3
Scrivere un programma in linguaggio che consente di inserire n°3 numeri con la virgola
1) Inserisce i 3 numeri
2) Ordina i numeri in modo decrescente , stampa i numeri in ordine decrescente
3) Spampa il valore massimo
Esercizio 4 spiegare l’istruzione if() come si usa e a cosa serve
7
2 B compito Marzo (svolto in laboratorio)
Fila A
Esercizio A
Definire le variabili necessarie interi, i, n, somma, ecc.
Esercizio A
1) Stampare “Punto 1 Cognome”
Inserire un numero n da tastiera stampare tutti i numeri che vanno da 1 a n, sommare tutti i numeri
che vanno da 1 a n, stampare la somma
“ porre a 0 tutte le variabili utilizzate”
2) Stampare “Punto 2 Cognome”
Si vuole generare una sequenza di numeri random() compresi da 10 a 20
Si interrompe la sequenza ( si esce dal ciclo ) quando la somma dei numeri estratti è maggiore di
100, stampare la somma e il numero dei numeri estratti.
3) Stampare “Punto 3 Cognome”
Inserire un numero da tastiera sommare tutti i numeri multipli di 3 compresi da 0 al numero inserito
“ porre a 0 tutte le variabili utilizzate”
Esercizio B
Inserire la libreria
# include <math.h>
Definire le variabili float e int necessarie
Esercizio A
1) Stampare “Punto 1 Cognome”
Inserire i cateti di un triangolo rettangolo , calcolare l’ipotenusa ,
Stampare l’ipotenusa
2) Stampare “Punto 2 Cognome”
Elevare l’ipotenusa alla potenza 1.5 (ipotenusa1.5 ) stampare il valore
“ porre a 0 tutte le variabili utilizzate”
3) Stampare “Punto 3 Cognome”
Definire le variabili dato, e somma2 di tipo float
Si vuole inserire una una sequenza di numeri (float ) da tastiera , sommare i numeri inseriti.
Si esce dal ciclo quando si inseriscono 5 numeri o quando si inserisce il numero 0.
Stampare la somma dei numeri inseriti
8
2 B Maggio Compito
Fila A
1)Scrivere un programma in linguaggio c che svolge le seguenti operazioni:
g) Permette l’inserimento di un numero intero chiamato “valore” intero da tastiera
h) Se valore = 3 il programma richiede un numero e stampa tutti i numeri moltiplicati 2 che
vanno dal numero inserito a 0 , i numeri vengono stampati in verticale
Esempio viene inserito il numero 5 e si stampa
5*2
4*2
…
i) Se valore =6 il programma richiede un numero da intero tastiera, estrae un numero random
da 10 a 20 e stampa ok se i due numeri sono diversi
j) Se il numero inserito è diverso da i numeri previsti nel meno , si stampa “dato non previsto “
e si esce dal programma
2)Scrivere un programma in linguaggio c che mi consenta di calcolare la media dell’altezza dei giocatori
di una squadra:
a) Il programma consente l’inserimento dell’altezza di ogni singolo giocatore
b) Si esce dal ciclo quando si inserisce un’altezza <0
c) Il programma calcola somma totale delle altezze
d) Il programma calcola l’altezza media
e) L’altezza minima
f) L’altezza massima
g) Stampare i valori
Il programma non deve considerare le altezze negative nel calcolo dei parametri calcolati
( svolgere con do ….while()))
3)
Scrivere un programma in linguaggio c che mi consenta di inserire N coppie di punti del piano di
coordinate x,y
a) Il programma consente l’inserimento di N numero intero , N deve essere >0 e pari altrimenti
viene richiesto nuovamente
b) Consente l’inserimento di N coppie di punti di coordiante x,y,
(x1,y1) e (x2,y2)
c) Calcola la distanza tra ogni coppia di punti
d) Somma tutte le distanze tra i due coppie di punti
e) Conta quante sono le distanze tra due punti minori di 1
f) Stampa tutti i valori
Descrivere le differenze tra l’istruzione while() .. e do while(), anche con degli esempi
9