fisica:informatica:201516:secondoanno:laboratorio_4
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Prossima revisione | Revisione precedente | ||
| fisica:informatica:201516:secondoanno:laboratorio_4 [11/03/2016 alle 08:37 (10 anni fa)] – creata Roberta Gori | fisica:informatica:201516:secondoanno:laboratorio_4 [11/03/2016 alle 09:10 (10 anni fa)] (versione attuale) – Roberta Gori | ||
|---|---|---|---|
| Linea 1: | Linea 1: | ||
| ====== Esercitazione 4 ====== | ====== Esercitazione 4 ====== | ||
| + | Nella propria home directory creare una sottodirectory chiamata es04, | ||
| + | in cui metteremo tutti i file C di oggi. | ||
| + | |||
| + | ===== Importante: ====== | ||
| + | Eseguire gli esercizi nell' | ||
| + | |||
| + | |||
| + | === Esercizio 1 === | ||
| + | Scrivere un programma che definisce un array di 10 interi e stampa a video | ||
| + | la somma e il prodotto degli elementi e poi il massimo ed il minimo dell' | ||
| + | (con le loro posizioni). | ||
| + | |||
| + | |||
| + | === Esercizio 2 === | ||
| + | Scrivere un programma che crei un array di 7 interi con valori | ||
| + | casuali, stampi la somma degli elementi pari e il prodotto degli | ||
| + | elementi dispari. | ||
| + | |||
| + | Nota: elementi pari o dispari, non "di posizione" | ||
| + | |||
| + | === Esercizio 3 === | ||
| + | Scrivere un programma che letto un array di 7 interi dall' | ||
| + | i valori nelle posizioni pari, raddoppi i valori nelle posizioni dispari e poi | ||
| + | stampi l' | ||
| + | |||
| + | Nota: elementi "di posizione" | ||
| + | |||
| + | |||
| + | === Esercizio 4 === | ||
| + | Scrivere un programma che crei un array di 7 interi forniti | ||
| + | dall' | ||
| + | che e' minore della somma degli elementi che lo precedono. | ||
| + | Se non c' | ||
| + | |||
| + | === Esercizio 5 === | ||
| + | Modificare il programma precedente per determinare (se c' | ||
| + | posizione del primo elemento che e' minore della somma degli | ||
| + | elementi che lo seguono. | ||
| + | Se non c' | ||
| + | |||
| + | === Esercizio 6 === | ||
| + | Scrivere un programma che crei un array di 7 interi forniti | ||
| + | dall' | ||
| + | descrescente e stampi a video sia l' | ||
| + | < | ||
| + | E' | ||
| + | </ | ||
| + | oppure | ||
| + | < | ||
| + | Non e' ordinato: X | ||
| + | </ | ||
| + | dove X e' la posizione del | ||
| + | primo elemento fuori ordine). | ||
| + | |||
| + | === Esercizio 7 === | ||
| + | Scrivere un programma che crei due array di caratteri (forniti | ||
| + | dall' | ||
| + | almeno un carattere dell' | ||
| + | di tutti i caratteri presenti nell' | ||
| + | |||
| + | |||
| + | === Esercizio 8 === | ||
| + | Scrivere un programma che chieda all' | ||
| + | e quindi calcoli la matrice 3 per 3 risultato del prodotto riga per colonna | ||
| + | dei due array. | ||
| + | Il programma dovra' quindi stampare a video la matrice (ben spaziata!) | ||
| + | e la sua diagonale. | ||
| + | |||
| + | === Esercizio 9 === | ||
| + | Scrivere un programma C che legge dallo standard input un numero N di reali da generare e stampa sullo standard output una sequenza di N numeri casuali reali nell' | ||
| + | |||
| + | // | ||
| + | |||
| + | ===== Esercizio 10: La macchina di Galton ===== | ||
| + | La macchina di Galton (Galton Board) e' un dispositivo ideato nella seconda meta dell' | ||
| + | per illustrare in modo semplice il teorema del limite centrale. | ||
| + | Qui vogliamo realizzare una versione virtuale della macchina, che utilizzi un | ||
| + | generatore di numeri pseudocasuali. Le regole sono semplici: dato un opportuno | ||
| + | sistema di riferimento (illustrato in Figura sotto) ed un intero n > 0 una pallina parte | ||
| + | dall' | ||
| + | contestualmente verso destra o verso sinistra (in modo casuale) di +0.5 o -0.5 con | ||
| + | uguali probabilita' | ||
| + | < | ||
| + | n = 8 | ||
| + | ...1.2.3.4.5.6.7.8.9 | ||
| + | ===================== | ||
| + | 0|........o........| | ||
| + | 1|.........o.......| | ||
| + | 2|..........o......| | ||
| + | 3|.........o.......| | ||
| + | 4|........o........| | ||
| + | 5|.......o.........| | ||
| + | 6|......o..........| | ||
| + | 7|.....o...........| | ||
| + | 8| | | |o| | | | | | | ||
| + | ===================== | ||
| + | ...1.2.3.4.5.6.7.8.9 | ||
| + | |||
| + | Figura 1 La macchina di Galton per n = 8 | ||
| + | </ | ||
| + | E' facile convincersi che la posizione di arrivo nel punto piu' basso puo' assumere tutti i valori tra 1 e n+1 (non con la stessa probabilita' | ||
| + | |||
| + | Realizzare un programma C che letto il numero dipassi da standard input igeneri e visualizzi sullo schermo possibili percorsi della pallina. Si puo' utilizzare una grafica a piacere o quella della Figura 1. | ||
| + | |||
| + | |||
| + | Notare che in questo esercizio non e' necessario usare strutture dati complesse come gli array. Si consiglia di pensare a entrambe le soluzioni (senza e con l'uso di array). | ||
| + | |||
| + | |||
fisica/informatica/201516/secondoanno/laboratorio_4.1457685446.txt.gz · Ultima modifica: 11/03/2016 alle 08:37 (10 anni fa) da Roberta Gori
