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: 4 B Scienze Applicate
(LICEO “B.VARCHI”)
Prof./ssa Marco La Grassa
PROGRAMMA SVOLTO
Testo adottato: Corso di Informatica Linguaggio C e C++ Volume 2°
ARGOMENTI SVOLTI
LINGUAGGIO C++
• Ambiente Di sviluppo
• Istruzioni di input e output cin, cout
Funzioni
• Definizione di funzioni in un programma c++
• Funzioni che restituiscono un valore e funzioni tipo void
• Passaggio dei parametri, parametri per indirizzo o per valore.
• Visibilità delle variabili
• Utilizzo delle funzioni nei programmi
• Funzioni ricorsive.
Struct (record)
• Definizione di una struct nel programma
• Operazione sui record
• Vettori di struct
• Archiviazione dei dati attraverso vettori di struct
• Operazioni con numeri complessi, utilizzando dei record
• Libreria Cmath, funzioni sqrt(), pow(), cos(), sin(),atan()
Puntatori
• Definizione di puntatore
• Utilizzo dei puntatori
• Allocazione dinamica della memoria
• Vettori dinamici (vettori e puntatori)
Programmazione ad Oggetti
• Classi, e oggetti
• attributi
• Metodi void , metodi che restituiscono dei valori,
• Passaggio dei parametri ai metodi
• UML: rappresentazione grafica di classi e istanze
• Incapsulamento
• Costruttore senza parametri, costruttore con parametri
1
•
•
•
•
Accesso pubblico e privato ai membri
Istanziare gli oggetti
Chiamata di un metodo
Operazioni con numeri complessi, utilizzando le classi
DATABASE
•
•
•
•
•
•
•
Definizioni di database e di DBMS
Modellazione dei dati: modello concettuale, logico, fisico
Modello E/R: entità, attributi, associazioni
Tipi di associazione: 1:1, 1:N, N:N
Regole di lettura delle associazioni
Il modello relazionale
Regole di derivazione delle relazioni dal modello E/R
ACCESS
•
•
•
•
Caratteristiche generali
Tabelle: creazione, immissione dei dati e tipo di dati
Definizione delle associazioni: applicazione della proprietà referenziale
Realizzazione di semplici database e interrogazioni attraverso query
LINGUAGGIO SQL
•
•
•
•
Comando SELECT…FROM…WHERE…
Congiunzione tra tabelle
Funzioni di aggregazione
Raggruppamenti funzioni Group by , Query nidificate
PROGRAMMAZIONE LABORATORIO
(tipologie di programmi effettuati in laboratorio)
Programmi che utilizzano le STRUCT
• Somma di numeri complessi in coordinate cartesiane (con vettori di struct)
• Prodotto di numeri complessi in coordinate polari (con vettori di struct)
• Trasformazioni di numeri complessi da coordinate polari a cartesiane e viceversa
• Archiviazione dei dati in vettori di struct (es. alunni di una classe, clienti)
• vettori dinamici con puntatori
Programmi Classi Oggetti
• Esercizio Classe rettangolo
• Esercizio classe punto
• Esercizio classe numero complesso
DataBase
• Access
• Database Alunno Voti:_informatica Query
• Database Clienti Acquisti e query
Data: 14/06/2016
Gli allievi
___________________________
Il Docente
Marco La Grassa
________________________
2
OBBIETTIVI MINIMI
STRUCT E PUNTATORI
•
•
•
•
Definizione di struct
Archiviazione dei dati attraverso vettori di struct
Definizione di puntatori
Vettori dinamici
CLASSI ED OGGETTI
•
•
•
•
•
Definizione di classe
Attributi e metodi
Istanziare degli oggetti
Richiamare dei metodi
Esercizi oggetti classe punto, oggetti classe complesso
DATABSE
•
•
Definire semplici database con 2, 3 tabelle
Effettuare delle semplici Query di ricerca
Si allegano Testi di compiti :
3
4Bs compiti
23/10/2015
Fila A
Alunno
Classe
a)
Una squadra di atleti è composta da 4 atleti , i campi che interessano sono: Cognome, nome,
punteggio
(float)
1) Stampare “punto 1”, caricare gli elementi da tastiera indicando gli elementi che vengono
caricati (caricare nomi e cognomi con possibilità di inserire spazio)
2) Stampare “punto 2” calcolare la media di tutti i punteggi e stamparla.
Contare quanti sono gli atleti con un punteggio minore della media,stampare tutti i campi
degli atleti con un punteggio minore della media.
3) Stampare “punto 3” Stampare nome e cognome dell’atleta con il punteggio più alto
4) Stampare “punto 4” verificare se è presente “rossi” “mario” o “luca”
b)
1) Caricare una serie denominata B di n°4 vettori di forze con coordinate x, y, numeri caricati da
tastiera, indicare l’elemento caricato. (utilizzare vettori di strutture)
2) Stampare “punto 2” calcolare la risultante in coordinate x, y, . indicare in quale quadrante del
piano si trova la risultante.
3) Stampare “punto 3” trasformare la risultante in coordinate cartesiane in coordinate polari ,
modulo e angolo (espresso in gradi)
4) Stampare “punto 4” estrarre in maniera random una forza inserita e stampare le sue componenti
c)
Caricare b[] e c[] vettori di interi di 10 elementi con numeri random da 0 a 10
Con l’utilizzo delle funzioni
1) Trovare il min di b[]
2) Calcolare c[]= c[]-a[];
Stampare tutti i risultati
4
Fila A Gennaio
a) Una classe è composta da un numero n di elementi , i campi che interessano sono: Cognome, punteggio
(float), sesso
1) Stampare “punto 1 fila a”, dichiarare e definire gli elementi necessari , caricare da tastiera i dati
indicando i campi caricati., con la possibilità di inserire gli spazi ( inserire cin.ignore() ogni volta
che inserisco un numero con cin). Caricare i dati in un vettore dinamico di strutture, stampare tutti i
dati una volta inseriti.
2) Stampare “punto 2 a” Inserire un cognome da tastiera e verificare se presente nel vettore di strutture.
3) Stampare “punto 3 a” contare gli alunni di sesso “maschile” e sesso “femminile”, stampare il
risultato
4) Stampare “punto 4 a” trovare il campo con il punteggio max, stampare il valore max e l’indice
corrispondente
5) Stampare “punto 5 a” copiare il record precedentemente trovato, in un nuovo record
b) Definire una struttura punto con i seguenti campi : (float x, float y)
1) Stampare “punto 1a ”, Inserire da tastiera n punti ed inserirli in un vettore dinamico di strutture ,
stampare tutti i dati una volta inseriti.
2) Stampare “punto 2 a” stampare l’angolo in gradi del primo elemento
3) Stampare “punto 3 a” contare quanti sono i punti con x=y (componente x=componente y)
4) Stampare “punto 4 a ” calcolare la risultante dei punti (somma della componente x e somma della
componente y, interpretare i punti come delle forze) stampare il risultato
5) Stampare “punto 5 a ” contare i punti interni al cerchio di raggio 5
5
Fila A
4B
Marzo
Compito di Informatica
Esercizio 1
Equazione2
-a: float
-b: float
-c: float
ATTRIBUTI:
a: coefficiente di x2
b: coefficiente di x
c: termine noto
+ equazione2()
con le seguenti condizioni
+ equazione2(float, float, float)
a≠0 (a non può essere uguale a 0)
+set_eq(float,float,float): void
a+print_eq():
≠ 0 ( a non
può essere uguale a =0)
void
+delta():f loat
METODI :
+isReale(): bool
Costruttore equazione2 di default( associare i parametri,a,b,c)
+soluzione1(): float
Costruttore equazione2, con parametri
+soluzione2(): float
Set_eq: per assegnare i valori
+visualizza(): void
Print_eq() : stampa i parametri dell’equazione
+somma(Equazione2):Equazion
delta: restituisce il discriminante
e2
isReale: verifica se un’equazione ammette soluzioni reali
soluzione1 : restituisce il valore della prima soluzione reale
soluzione2 : restituisce il valore della seconda soluzione reale
visualizza: visualizza le soluzioni reali dell’equazione specificando se
sono reali distinte o reali coincidenti
somma: restituisce l’equazione ottenuta dalla somma delle due equazioni
1) Implementare la classe Equazione2 in C++
2) Testare la classe Equazione2 con un main :
a) creare le istanze di due equazioni con parametri inseriti da tastiera, creare un oggetto risultato
b) stabilire se le due equazioni ammettono soluzioni reali o complesse
c) visualizzare le soluzioni reali (se esistono)
d) sommare le due equazioni e mettere il valore su risultato
e) visualizzare le soluzioni reali (se esistono) dell’equazione ottenuta
Esercizio 2
Rispondere alle seguenti domande (max 5 righe)
1. Che differenza c’è tra classe e oggetto?
6
4B
Fila A maggio
Un’azienda vuole organizzare le informazioni relative ai propri rappresentanti, ai clienti, e alle fatture
emesse ai clienti. Ogni rappresentante gestisce molti clienti ma ogni cliente è seguito da un solo
rappresentante.
Dato il seguente grafico di “modello logico”
a) Realizzare le tabelle riportando almeno 4 record per ogni tabella
Si richiede di scrivere le query che permettono di:
1 Numero dei clienti affidati al rappresentante con il campo idrappresentante=5
2 Per ogni cliente della regione”Toscana” ,individuato dal campo RagioneSociale,
• contare il numero delle fatture emesse
• sommare l’importo delle fatture emesse
3 RagioneSociale del cliente e data di emissione per la fattura con importo massimo
4 Riportare l’elenco dei rappresentanti con le fatture emesse ai propri clienti con importo >1000
Stampare il campo Cognome, Nome , importo e dataFattura
5 Somma degli importi dei clienti delle regioni lazio e toscana
6 Per ogni regione calcolare l’importo totale e il numero delle fatture
7 riportare il risultato della query 5 e query 6
6 Cosa si intende per prodotto cartesiano tra due tabelle, spiegare anche attraverso un esempio.
7 Riportare il modello E/R e il tracciato di record della seguente situazione:
Ogni atleta può partecipare a più gare, ad ogni gara possono partecipare più atleti.
7