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.