fisica:informatica:201516:secondoanno:laboratorio_3
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
fisica:informatica:201516:secondoanno:laboratorio_3 [04/03/2016 alle 10:18 (9 anni fa)] – [Esercizio 13] Roberta Gori | fisica:informatica:201516:secondoanno:laboratorio_3 [04/03/2016 alle 10:28 (9 anni fa)] (versione attuale) – [Esercizio 2] Roberta Gori | ||
---|---|---|---|
Linea 80: | Linea 80: | ||
Scrivere il programma morra che gestisce una sfida tra PC e | Scrivere il programma morra che gestisce una sfida tra PC e | ||
utente: | utente: | ||
- | | + | |
*1: sasso, | *1: sasso, | ||
*2: forbici, | *2: forbici, | ||
*3: carta (utilizzare il costrutto #define per rendere leggibile l' | *3: carta (utilizzare il costrutto #define per rendere leggibile l' | ||
- | | + | |
- | | + | |
Se l' | Se l' | ||
Linea 95: | Linea 95: | ||
serie di numeri: | serie di numeri: | ||
- | | + | |
- | | + | |
- | | + | |
- | | + | |
===== Esercizio 4 ===== | ===== Esercizio 4 ===== | ||
Linea 247: | Linea 247: | ||
dividendo per la | dividendo per la | ||
somma del numero di crediti. | somma del numero di crediti. | ||
+ | |||
Quindi uno studente con due esami, fisica 1 (voto: 24, crediti:15) | Quindi uno studente con due esami, fisica 1 (voto: 24, crediti:15) | ||
e informatica | e informatica | ||
(voto: 28, crediti:6), avra' una media pesata circa uguale a | (voto: 28, crediti:6), avra' una media pesata circa uguale a | ||
(24*15 + 28*6)/ | (24*15 + 28*6)/ | ||
+ | |||
Scrivere il programma calcola_la_media che chiede ad uno studente | Scrivere il programma calcola_la_media che chiede ad uno studente | ||
i voti degli | i voti degli | ||
esami e il loro peso in crediti, uno per volta. | esami e il loro peso in crediti, uno per volta. | ||
+ | |||
Lo studente dovrà inserire 0 per segnalare che ha terminato | Lo studente dovrà inserire 0 per segnalare che ha terminato | ||
l' | l' | ||
+ | |||
Il programma quindi calcola e stampa la sua media pesata sui | Il programma quindi calcola e stampa la sua media pesata sui | ||
crediti. | crediti. | ||
+ | |||
Nota: si tenga conto che la votazione del singolo esame e il | Nota: si tenga conto che la votazione del singolo esame e il | ||
numero di crediti | numero di crediti | ||
Linea 267: | Linea 272: | ||
maggiore di 0. | maggiore di 0. | ||
+ | ===== Esercizio 15 ===== | ||
+ | Modificare il programma precedente per chiedere il numero di | ||
+ | crediti | ||
+ | del prossimo esame che lo studente deve sostenere. | ||
+ | |||
+ | Il programma quindi calcola quale voto lo studente dovrebbe | ||
+ | prendere perchè | ||
+ | la media migliori raggiungendo la votazione (intera) | ||
+ | immediatamente superiore | ||
+ | alla media attuale. | ||
+ | |||
+ | Se tale voto fosse maggiore di 30, il | ||
+ | programma deve | ||
+ | stampare il messaggio "Mi dispiace, non si puo'" | ||
+ | |||
+ | ===== Esercizio 16 ===== | ||
+ | Esercizio proposto a lezione: | ||
+ | " | ||
+ | La descrizione informale dell' | ||
+ | < | ||
+ | leggi m ed n | ||
+ | while m ed n sono entrambi != 0 { | ||
+ | sostituisci il maggiore tra m ed n con il resto della divisione | ||
+ | del maggiore | ||
+ | per il minore | ||
+ | } | ||
+ | stampa il numero tra i due che e' diverso da 0 | ||
+ | </ | ||
+ | Implementare questo algoritmo in C nel programma euclide. | ||
+ | |||
+ | |||
+ | ===== Esercizio 17 ===== | ||
+ | | ||
+ | sequenza di caratteri | ||
+ | alfabetici minuscoli verificando che ogni carattere letto sia | ||
+ | maggiore o uguale | ||
+ | ai precedenti (secondo l' | ||
+ | |||
+ | Il primo carattere inserito può essere un qualsiasi carattere | ||
+ | minuscolo. | ||
+ | |||
+ | La sequenza termina quando l' | ||
+ | alfabetico o maiuscolo | ||
+ | oppure se immette un carattere minore di uno di quelli letti | ||
+ | precedentemente. | ||
+ | |||
+ | Terminata la lettura dei caratteri il programma deve stampare il | ||
+ | numero di | ||
+ | caratteri minuscoli diversi appartenenti alla sequenza (il | ||
+ | carattere che causa la | ||
+ | terminazione non è considerato parte della sequenza). | ||
+ | |||
+ | Se la sequenza è vuota, cioè non viene immesso alcun carattere | ||
+ | minuscolo, allora | ||
+ | il programma stampa solo un avvertimento. | ||
+ | |||
+ | Esempi di esecuzione: | ||
+ | < | ||
+ | Dammi un carattere: X | ||
+ | La sequenza di lettere minuscole e' vuota | ||
+ | </ | ||
+ | < | ||
+ | Dammi un carattere: a | ||
+ | Dammi un carattere: r | ||
+ | Dammi un carattere: r | ||
+ | Dammi un carattere: f | ||
+ | Totale lettere minuscole ordinate e diverse: 2 | ||
+ | </ | ||
+ | < | ||
+ | Dammi un carattere: a | ||
+ | Dammi un carattere: a | ||
+ | Dammi un carattere: a | ||
+ | Dammi un carattere: d | ||
+ | Dammi un carattere: z | ||
+ | Dammi un carattere: 4 | ||
+ | Totale lettere minuscole ordinate e diverse: 3 | ||
+ | </ | ||
+ | |||
+ | ===== Esercizio 18 ===== | ||
+ | Scrivere un programma rappresentazione che legge una sequenza | ||
+ | di 0 e di 1 | ||
+ | di dimensione prefissata K e stampa il numero intero la cui | ||
+ | rappresentazione | ||
+ | in complemento a 2 su K cifre è la sequenza letta. | ||
+ | |||
+ | Esempio di esecuzione : | ||
+ | < | ||
+ | Digitare una sequenza di 0 e 1 lunga 5: | ||
+ | 0 1 1 1 0 | ||
+ | Il numero intero e': 14 | ||
+ | </ | ||
+ | Nota: il programma deve definire K con un' | ||
+ | poter funzionare | ||
+ | anche con valori diversi da 5 semplicemente cambiando questa | ||
+ | define. | ||
+ | |||
+ | ===== Esercizio 19 ===== | ||
+ | Esercizio proposto a lezione: | ||
+ | scrivi un programma che stampa la tavola pitagorica (come matrice | ||
+ | quadrata, | ||
+ | con righe da 1 a 10 e colonne da 1 a 10). | ||
+ | |||
+ | Sulle slide dell' | ||
+ | non se la | ||
+ | ricorda provi a ricostruirla. | ||
+ | |||
+ | Riuscite a stampare la tavola correttamente spaziata? | ||
+ | |||
+ | (Suggerimento: | ||
+ | |||
+ | Usate la barra verticale | per separare ogni colonna dalla | ||
+ | successiva | ||
+ | e sequenze di segni meno - per separare ogni riga dalla | ||
+ | successiva. | ||
+ | |||
+ | A lezione è stata proposta una soluzione con due cicli for | ||
+ | annidati. | ||
+ | |||
+ | Riuscite a scrivere il programma con un unico ciclo for? | ||
+ | Ne vale la pena? Quali sono gli svantaggi di quest' | ||
+ | soluzione? |
fisica/informatica/201516/secondoanno/laboratorio_3.1457086706.txt.gz · Ultima modifica: 04/03/2016 alle 10:18 (9 anni fa) da Roberta Gori