26
Piero Scotto - C14 1 C14 #6 I VETTORI (#define e const)

Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Embed Size (px)

Citation preview

Page 1: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 1

C14 #6 I VETTORI

(#define e const)

Page 2: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 2

Finalità del corso

Finalità del corso

Finalità del corso

Finalità del corso

Finalità del corso

Page 3: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 3

Esercizio 8. Un sistema automatico di acquisizione della temperatura registra ogni giorno dell’anno la temperatura massima e minima e invia i dati ad un calcolatore. Scrivere un programma che fornisca, mese per mese la massima e la minima e i relativi giorni. Per semplicità si consideri solo il mese di gennaio, si inseriscano le temperature (max e min per ogni giorno) e si visualizzi la massima e la minima e i giorni in cui sono state registrate. Si stampi inoltre tutte le temperature al di sotto dello 0 e i relativi giorni.

Pensiamo di ottenere a, b, c da input e risolvere fornendo i valori dell’incognita x.

Page 4: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 4

Pensare di creare tutte le variabili (365 x 2) è assurdo!Occorre utilizzare una struttura che faciliti la memorizzazione dei dati e la relativa ricerca di minimi e massimi. Immaginiamo di lavorare su un mese (31 x 2 valori), il concetto non cambia. L’utilizzo di vettori permette di memorizzare per ogni “casella” un valore di temperatura

Page 5: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 5

Page 6: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 6

Page 7: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 7

Page 8: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 8

Page 9: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 9

Page 10: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 10

Page 11: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 11

Inoltre se volessi cambiare e al posto di 10 mettere 20 dovrei andare a sostituire il valore in tutti i punti del programma dove compare.

Page 12: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 12

Page 13: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 13

Page 14: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 14

Page 15: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 15

Page 16: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 16

Page 17: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 17

Page 18: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 18

Page 19: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 19

Page 20: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 20

Page 21: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 21

Page 22: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 22

Page 23: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 23

Page 24: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 24

Page 25: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 25

Versione temperature con l'introduzione dei vettoriScrivere un programma che memorizzi per il mese di gennaio le temperature (max e min per ogni giorno) e che visualizzi la massima e il giorno in cui e' stata registrata.

Page 26: Piero Scotto - C141 C14 #6 I VETTORI (#define e const)

Piero Scotto - C14 26

#include <stdio.h>int main(void){const int NT=63; /* costante per le temperature mensili */float T, Tmin, Tmax; int i, day=1;float temperature[NT];

printf(" Inserire le temperature di gennaio Max e min separate da spazio. ");for (i=1;i<NT;i++){ scanf("%f", &T); temperature[i]=T;}Tmax = temperature[1];for (i=2;i<NT;i++){ if (Tmax < temperature[i]) {Tmax = temperature[i]; day=i/2+i%2;}; }printf("La temperatura massima e' %.2f registrata il %d gennaio",Tmax,day);printf(" Inserire 0 per chiudere ");scanf("%d",&i);return 0;}