FONDAMENTI DI INFORMATICA L-A

Transcript

FONDAMENTI DI INFORMATICA L-A
FONDAMENTI DI INFORMATICA L-A
Ing. Gestionale/dei Processi Gestionali – Prof. Bondi
Prova scritta del 11/12/2007 – COMPITO A – Prova Completa
IMPORTANTE
Per tutti gli studenti, condizione necessaria (ma non sufficiente) al superamento della prova è il corretto
svolgimento dell’esercizio 1.
ESERCIZIO 1
Illustrare il più esaurientemente possibile i seguenti argomenti:
1) Algoritmo e sue proprietà
2) Visibilità e tempo di vita delle variabili in C
ESERCIZIO 2
Si scriva un programma in C per la gestione di corse podistiche. I dati gestiti sono relativi a:
- Iscritti alle corse podistiche, per ognuno dei quali interessa mantenere i dati relativi a nome,
cognome, città, data di nascita, nome della corsa podistica alla quale è iscritto e numero di
pettorale;
- Corse podistiche, per ognuno delle quali interessa mantenere i dati relativi a nome della corsa,
luogo di svolgimento, data di svolgimento, tipo agonistica/non agonistica, lunghezza;
Tali informazioni dovranno essere contenute nelle seguenti strutture dati:
- un file binario ISCRITTI, contenente i dati degli iscritti alle corse podistiche;
- un vettore CORSE, dimensionato per contenere al massimo 1000 elementi.
Si scriva un programma in C che:
1) chieda in input all’utente che tipo di operazione vuole eseguire a scelta tra le seguenti:
a. Inserimento informazioni circa una corsa podistica:
- realizzare una procedura InserimentoCorsa che richieda all’utente i dati circa una corsa
podistica e li inserisca nel vettore CORSE;
b. Inserimento informazioni circa un iscritto ad una corsa podistica
- Realizzare una procedura InserimentoIscritto che richieda all’utente i dati circa un iscritto
ad una corsa e li inserisca nel file binario ISCRITTI;
c. Stampa elenco corse podistiche che si svolgono in una determinata città
- Realizzare una funzione CorseLuogo che, data una città, stampi a video l’elenco delle
corse podistiche (nomi delle corse) che si svolgono in quella città; deve inoltre restituire il
numero di corse (tale informazione deve poi essere stampata a video dal programma
principale);
d. Stampa elenco e numero iscritti ad una determinata corsa podistica
- Realizzare una procedura ElencoIscritti che, data una determinata corsa podistica, stampi a
video l’elenco degli iscritti (nome e cognome) e restituisca il numero totale degli iscritti
(come parametro formale)(tale informazione deve poi essere stampata a video dal
programma principale)
e. Scrittura su file di testo di tutti gli iscritti nati prima del 7/12/1969
- Realizzare una procedura ElencoIscritti1969 che scriva un file di testo contenente nome e
cognome di tutti gli iscritti nati prima del 7/12/1969
f. Scrittura su file di testo degli iscritti a corse agonistiche
- Realizzare una procedura IscrittiAgonistiche che scriva un file di testo contenente nome e
cognome di tutti gli iscritti a corse podistiche agonistiche
g. Uscita dal programma
- Con la scelta di questa voce di menù, si deve uscire dal programma, altrimenti il
programma deve continuare a richiedere l’opzione di menu all’utente.
2) Per la funzione/procedura del punto d), mostrare la sequenza dei record di attivazione sullo stack
ed il loro contenuto.
FONDAMENTI DI INFORMATICA L-A
Ing. Gestionale/dei Processi Gestionali – Prof. Bondi
Prova scritta del 11/12/2007 – COMPITO B – Prova Completa
IMPORTANTE
Per tutti gli studenti, condizione necessaria (ma non sufficiente) al superamento della prova è il corretto
svolgimento dell’esercizio 1.
ESERCIZIO 1
Illustrare il più esaurientemente possibile i seguenti argomenti:
1) Memoria centrale: struttura, indirizzamento, dispositivi fisici e unità di misura
2) Definizione e inizializzazione di vettori in C
ESERCIZIO 2
Si scriva un programma in C per la gestione di progetti. I dati gestiti sono relativi a:
- Risorse umane, per ognuno dei quali interessa mantenere i dati relativi a nome, cognome,
qualifica, costo orario, data di nascita, ore previste, nome del progetto a cui si partecipa;
- Progetti, per ognuno delle quali interessa mantenere i dati relativi a nome del progetto, luogo di
svolgimento, data di inizio, data di fine, tipologia progetto (tipo Alfa/Beta/Gamma);
Tali informazioni dovranno essere contenute nelle seguenti strutture dati:
- un file binario RISORSE, contenente i dati delle risorse umane partecipanti ai progetti;
- un vettore PROGETTI, dimensionato per contenere al massimo 1000 elementi.
Si scriva un programma in C che:
1) chieda in input all’utente che tipo di operazione vuole eseguire a scelta tra le seguenti:
a. Inserimento informazioni circa un progetto:
- realizzare una procedura InserimentoProgetto che richieda all’utente i dati circa un
progetto e li inserisca nel vettore PROGETTI;
b. Inserimento informazioni circa una risorsa di un progetto
- Realizzare una procedura InserimentoRisorsa che richieda all’utente i dati circa una risorsa
umana partecipante ad un progetto e li inserisca nel file binario RISORSE;
c. Stampa elenco progetti che si svolgono in una determinata città
- Realizzare una funzione ProgettiLuogo che, data una città, stampi a video l’elenco dei
progetti (nomi dei progetti) che si svolgono in quella città; deve inoltre restituire il numero
di progetti (tale informazione deve poi essere stampata a video dal programma principale);
d. Stampa elenco e numero risorse umane di un progetto
- Realizzare una procedura ElencoRisorse che, dato un progetto, stampi a video l’elenco
delle risorse (nome e cognome) e restituisca il numero totale delle risorse (come parametro
formale)(tale informazione deve poi essere stampata a video dal programma principale)
e. Scrittura su file di testo di tutte le risorse nate prima del 7/12/1969
- Realizzare una procedura ElencoRisorse1969 che scriva un file di testo contenente nome e
cognome di tutte le risorse nate prima del 7/12/1969
f. Scrittura su file di testo delle risorse partecipanti a progetti di tipo Beta
- Realizzare una procedura RisorseProgettiBeta che scriva un file di testo contenente nome e
cognome di tutte le risorse umane che partecipano a progetti di tipo Beta
g. Uscita dal programma
- Con la scelta di questa voce di menù, si deve uscire dal programma, altrimenti il
programma deve continuare a richiedere l’opzione di menu all’utente.
2) Per la funzione/procedura del punto d), mostrare la sequenza dei record di attivazione sullo stack
ed il loro contenuto.
FONDAMENTI DI INFORMATICA L-A
Ing. Gestionale/dei Processi Gestionali – Prof. Bondi
Prova scritta del 11/12/2007 – COMPITO C – Prova Completa
IMPORTANTE
Per tutti gli studenti, condizione necessaria (ma non sufficiente) al superamento della prova è il corretto
svolgimento dell’esercizio 1.
ESERCIZIO 1
Illustrare il più esaurientemente possibile i seguenti argomenti:
1) Il sistema operativo
2) Le istruzioni di iterazione in C
ESERCIZIO 2
Si scriva un programma in C per la gestione della manutenzione di caldaie. I dati gestiti sono relativi a:
- Caldaie, per ognuna delle quali interessa mantenere i dati relativi a numero di matricola, data di
installazione, marca, indirizzo di installazione, potenza, ragione sociale del manutentore;
- Manutentori, per ognuno delle quali interessa mantenere i dati relativi a ragione sociale, indirizzo,
città, numero di operai, tipologia ditta (spa, srl, sas, coop);
Tali informazioni dovranno essere contenute nelle seguenti strutture dati:
- un file binario CALDAIE, contenente i dati delle caldaie in manutenzione;
- un vettore MANUTENTORI, dimensionato per contenere al massimo 1000 elementi.
Si scriva un programma in C che:
1) chieda in input all’utente che tipo di operazione vuole eseguire a scelta tra le seguenti:
a. Inserimento informazioni circa un manutentore:
- realizzare una procedura InserimentoManutentore che richieda all’utente i dati circa un
manutentore li inserisca nel vettore MANUTENTORI;
b. Inserimento informazioni circa una caldaia in manutenzione
- Realizzare una procedura InserimentoCaldaia che richieda all’utente i dati circa una
caldaia e li inserisca nel file binario CALDAIE;
c. Stampa elenco manutentori residenti in una determinata città
- Realizzare una funzione ManutentoriLuogo che, data una città, stampi a video l’elenco dei
manutentori (ragione sociale) che operano in quella città; deve inoltre restituire il numero
di manutentori (tale informazione deve poi essere stampata a video dal programma
principale);
d. Stampa elenco e numero caldaie gestite da un manutentore
- Realizzare una procedura ElencoCaldaie che, dato un determinato manutentore (ragione
sociale), stampi a video l’elenco delle caldaie (matricola e marca) gestite da quel
manutentore e restituisca il numero totale delle caldaie (come parametro formale)(tale
informazione deve poi essere stampata a video dal programma principale)
e. Scrittura su file di testo di tutti le caldaie installate prima del 7/12/1969
- Realizzare una procedura ElencoCaldaie1969 che scriva un file di testo contenente
matricola e marca di tutte le caldaie installate prima del 7/12/1969
f. Scrittura su file di testo delle caldaie in manutenzione presso una coop
- Realizzare una procedura CaldaieCoop che scriva un file di testo contenente matricola e
marca delle caldaie in manutenzione presso manutentori di tipo “coop”
g. Uscita dal programma
- Con la scelta di questa voce di menù, si deve uscire dal programma, altrimenti il
programma deve continuare a richiedere l’opzione di menu all’utente.
2) Per la funzione/procedura del punto d), mostrare la sequenza dei record di attivazione sullo stack
ed il loro contenuto.
FONDAMENTI DI INFORMATICA L-A
Ing. Gestionale/dei Processi Gestionali – Prof. Bondi
Prova scritta del 11/12/2007 – COMPITO D – Prova Completa
IMPORTANTE
Per tutti gli studenti, condizione necessaria (ma non sufficiente) al superamento della prova è il corretto
svolgimento dell’esercizio 1.
ESERCIZIO 1
Illustrare il più esaurientemente possibile i seguenti argomenti:
1) la CPU: architettura di riferimento, componenti, funzionamento
2) Record in C
ESERCIZIO 2
Si scriva un programma in C per la gestione di esami universitari. I dati gestiti sono relativi a:
- Studenti universitari, per ognuno dei quali interessa mantenere i dati relativi a nome, cognome,
città, data di nascita, numero di matricola e nome dell’esame da sostenere;
- Descrizione esami universitari, per ognuno delle quali interessa mantenere i dati relativi a nome
dell’esame, nome del docente, data di svolgimento, tipo esame (scritto/orale/pratico);
Tali informazioni dovranno essere contenute nelle seguenti strutture dati:
- un file binario STUDENTI, contenente i dati degli studenti universitari;
- un vettore ESAMI, dimensionato per contenere al massimo 1000 elementi.
Si scriva un programma in C che:
1) chieda in input all’utente che tipo di operazione vuole eseguire a scelta tra le seguenti:
a. Inserimento informazioni circa un esame:
- realizzare una procedura InserimentoEsame che richieda all’utente i dati circa un esame
universitario e li inserisca nel vettore ESAMI;
b. Inserimento informazioni circa uno studente
- Realizzare una procedura InserimentoStudente che richieda all’utente i dati circa uno
studente universitario e li inserisca nel file binario STUDENTI;
c. Stampa esami universitari tenuti da un determinato docente
- Realizzare una funzione EsamiDocente che, dato il nome di un docente, stampi a video
l’elenco degli esami (nome dell’esame) tenuti da quel docente; deve inoltre restituire il
numero di esami (tale informazione deve poi essere stampata a video dal programma
principale);
d. Stampa elenco e numero studenti registrati ad un esame
- Realizzare una procedura ElencoStudenti che, data un determinato esame, stampi a video
l’elenco degli studenti (nome e cognome) che devono sostenere quell’esame e restituisca il
numero totale degli studenti (come parametro formale)(tale informazione deve poi essere
stampata a video dal programma principale)
e. Scrittura su file di testo di tutti gli studenti nati prima del 7/12/1969
- Realizzare una procedura ElencoStudenti1969 che scriva un file di testo contenente nome e
cognome di tutti gli studenti nati prima del 7/12/1969
f. Scrittura su file di testo degli studenti iscritti ad esami di tipo “scritto”
- Realizzare una procedura IscrittiEsamiScritti che scriva un file di testo contenente nome e
cognome di tutti gli studenti iscritti ad esami di tipo “scritto”
g. Uscita dal programma
- Con la scelta di questa voce di menù, si deve uscire dal programma, altrimenti il
programma deve continuare a richiedere l’opzione di menu all’utente.
2) Per la funzione/procedura del punto d), mostrare la sequenza dei record di attivazione sullo stack
ed il loro contenuto.
FONDAMENTI DI INFORMATICA L-A
Ing. Gestionale/dei Processi Gestionali – Prof. Bondi
Prova scritta del 11/12/2007 – COMPITO E – Prova Completa
IMPORTANTE
Per tutti gli studenti, condizione necessaria (ma non sufficiente) al superamento della prova è il corretto
svolgimento dell’esercizio 1.
ESERCIZIO 1
Illustrare il più esaurientemente possibile i seguenti argomenti:
1) Ciclo di esecuzione di una istruzione da parte della CPU
2) puntatori in C: uso in procedure e funzioni, operazioni, relazione con i vettori
ESERCIZIO 2
Si scriva un programma in C per la gestione di gruppi e musicisti. I dati gestiti sono relativi a:
- Musicisti, per ognuno dei quali interessa mantenere i dati relativi a nome, cognome, città, data di
nascita, strumento suonato, anni di esperienza, nome del gruppo musicale di appartenenza;
- Gruppi musicali, per ognuno delle quali interessa mantenere i dati relativi a nome del gruppo,
anno di nascita, prezzo per serata, numero componenti, tipo musica (rock/pop/punk).
Tali informazioni dovranno essere contenute nelle seguenti strutture dati:
- un file binario MUSICISTI, contenente i dati dei musicisti;
- un vettore GRUPPI, dimensionato per contenere al massimo 1000 elementi.
Si scriva un programma in C che:
1) chieda in input all’utente che tipo di operazione vuole eseguire a scelta tra le seguenti:
a. Inserimento informazioni circa un gruppo musicale:
- realizzare una procedura InserimentoGruppo che richieda all’utente i dati circa un gruppo
musicale e li inserisca nel vettore GRUPPI;
b. Inserimento informazioni circa un musicista:
- Realizzare una procedura InserimentoMusicista che richieda all’utente i dati circa un
musicista e li inserisca nel file binario MUSICISTI;
c. Stampa gruppi musicali formati da un certo numero di persone
- Realizzare una funzione GruppiPersone che, dato un certo numero di componenti, stampi a
video l’elenco dei gruppi musicali (nome del gruppo) formati da quel numero di
componenti; deve inoltre restituire il numero di gruppi (tale informazione deve poi essere
stampata a video dal programma principale);
d. Stampa elenco e numero musicisti che suonano un determinato strumento
- Realizzare una procedura ElencoMusicisti che, data un determinato strumento, stampi a
video l’elenco dei musicisti (nome e cognome) che suonano quello strumento e restituisca
il numero totale dei musicisti (come parametro formale)(tale informazione deve poi essere
stampata a video dal programma principale)
e. Scrittura su file di testo di tutti i musicisti nati prima del 7/12/1969
- Realizzare una procedura ElencoMusicisti1969 che scriva un file di testo contenente nome
e cognome di tutti i musicisti nati prima del 7/12/1969
f. Scrittura su file di testo dei musicisti che suonano in un gruppo “rock”
- Realizzare una procedura MusicistiRock che scriva un file di testo contenente nome e
cognome di tutti i musicisti che suonano in un gruppo “rock”
g. Uscita dal programma
- Con la scelta di questa voce di menù, si deve uscire dal programma, altrimenti il
programma deve continuare a richiedere l’opzione di menu all’utente.
2) Per la funzione/procedura del punto d), mostrare la sequenza dei record di attivazione sullo stack
ed il loro contenuto.
FONDAMENTI DI INFORMATICA L-A
Ing. Gestionale/dei Processi Gestionali – Prof. Bondi
Prova scritta del 11/12/2007 – COMPITO F – Prova Completa
IMPORTANTE
Per tutti gli studenti, condizione necessaria (ma non sufficiente) al superamento della prova è il corretto
svolgimento dell’esercizio 1.
ESERCIZIO 1
Illustrare il più esaurientemente possibile i seguenti argomenti:
1) Compilatori, interpreti, fasi di sviluppo di un programma
2) funzioni e procedure in C
ESERCIZIO 2
Si scriva un programma in C per la gestione di film e attori. I dati gestiti sono relativi a:
- Attori, per ognuno dei quali interessa mantenere i dati relativi a nome, cognome, città, data di
nascita, anni di esperienza, titolo del film nel quale recita;
- Film, per ognuno delle quali interessa mantenere i dati relativi a titolo del film, durata, anno di
produzione, regista, tipo film (horror/drammatico/comico);
Tali informazioni dovranno essere contenute nelle seguenti strutture dati:
- un file binario ATTORI, contenente i dati degli attori;
- un vettore FILM, dimensionato per contenere al massimo 1000 elementi.
Si scriva un programma in C che:
1) chieda in input all’utente che tipo di operazione vuole eseguire a scelta tra le seguenti:
a. Inserimento informazioni circa un film:
- realizzare una procedura InserimentoFilm che richieda all’utente i dati circa un film e li
inserisca nel vettore FILM;
b. Inserimento informazioni circa un attore:
- Realizzare una procedura InserimentoAttore che richieda all’utente i dati circa un attore e li
inserisca nel file binario ATTORI;
c. Stampa film di un regista
- Realizzare una funzione FilmRegista che, dato il nome di un regista, stampi a video
l’elenco dei film (titolo del film) girati da quel regista; deve inoltre restituire il numero di
film (tale informazione deve poi essere stampata a video dal programma principale);
d. Stampa elenco e numero attori partecipanti ad un film:
- Realizzare una procedura ElencoAttori che, data un determinato film, stampi a video
l’elenco degli attori (nome e cognome) che recitano in quel film e restituisca il numero
totale degli attori (come parametro formale)(tale informazione deve poi essere stampata a
video dal programma principale)
e. Scrittura su file di testo di tutti gli attori nati prima del 7/12/1969
- Realizzare una procedura ElencoAttori1969 che scriva un file di testo contenente nome e
cognome di tutti gli attori nati prima del 7/12/1969
f. Scrittura su file di testo degli attori che recitano in un film “horror”
- Realizzare una procedura AttoriHorror che scriva un file di testo contenente nome e
cognome di tutti gli attori che recitano in un film “horror”
g. Uscita dal programma
- Con la scelta di questa voce di menù, si deve uscire dal programma, altrimenti il
programma deve continuare a richiedere l’opzione di menu all’utente.
2) Per la funzione/procedura del punto d), mostrare la sequenza dei record di attivazione sullo stack
ed il loro contenuto.