LABORATORIO DI PROGRAMMAZIONE TURNO 3 (SERALE)
|
|
- Monica Rizzo
- 5 anni fa
- Visualizzazioni
Transcript
1 LABORATORIO DI PROGRAMMAZIONE TURNO 3 (SERALE) 29.X.2008 VINCENZO MARRA Indice Esercizio 1 2 Genere di un nome 2 Tempo: 15 min. 2 Commento 1 2 Esercizio 2 2 Abaco intero 2 Tempo: 20 min. 2 Esercizio 3 2 Abaco razionale 2 Tempo: 25 min. 3 Commento 2 3 Esercizio 4 3 Il signor Pignolino 3 Tempo: 30 min. 3 Commento 3 3 Esercizio 5 4 Eco iterato 4 Tempo: 30 min. 4 Esercizio 6 4 Conversione decimale binario 4 Tempo: 40 min. 4 Esercizio 7 5 Conversione decimale base b 5 Tempo: 20 min. 5 Commento 4 5 Esercizio 8 5 Palindromi 5 Tempo: 25 min. 5 Esercizio 9 5 Conversione decimale base b con implementazione di reverse() 5 Tempo: 25 min. 6 Ultima revisione: 29 ottobre
2 2 V. MARRA Commento 5 6 Genere di un nome. Tempo: 15 min. Esercizio 1 Usando le classi String, ConsoleInputManager e ConsoleOutputManager 1 (le ultime due appartenenti al package prog.io allegato al libro di testo), scrivete un programma che chieda all utente di inserire un nome proprio di persona, e tenti di dedurre automaticamente se trattasi di un nome maschile o femminile. A tale scopo, adottate la seguente strategia: se il nome inserito termina per a o per e, assumete che il genere sia femminile; se invece termina per o o per i, assumete che sia maschile; altrimenti, accettate la sconfitta e dichiarate di non saper trarre conclusioni. Per analizzare il carattere finale della stringa in ingresso, usate il metodo endswith() della classe String, di cui dovrete consultare la documentazione. Commento 1. Oltre alla sequenza, quale costrutto della programmazione strutturata avete dovuto usare per risolvere l esercizio precedente? E quante volte lo avete applicato, nell intero programma? Abaco intero. Tempo: 20 min. Esercizio 2 (1) Scrivete un programma che implementi una rudimentale calcolatrice per eseguire le quattro operazioni sui numeri interi. All avvio, il programma chiede all utente se intende eseguire una somma, una sottrazione, una moltiplicazione o una divisione intera. (Suggerimento. Come tenete traccia della scelta dell utente?) Poi chiede all utente di inserire i due operandi interi, memorizzando i valori in due variabili di tipo primitivo int. Infine, il programma esegue l operazione richiesta, qualora possibile. (Nel caso in cui l utente richieda una divisione per zero, il programma deve terminare con un messaggio d errore). (2) Modificate il programma precedente al fine di calcolare anche il resto, oltre al quoziente, della divisione. All uopo, usate l operatore aritmetico binario infisso % che produce il resto della divisione dell operando intero sinistro per l operando intero destro. Abaco razionale. Esercizio 3 1 Nei successivi esercizi di questa lezione, si usino sempre le classi ConsoleInputManager e ConsoleOutputManager per la lettura e la scrittura dei dati, anche laddove la traccia non lo preveda esplicitamente.
3 LAB. PROG. LEZIONE 3 3 Tempo: 25 min. Ripetete l Esercizio 3.1, in modo però che la calcolatrice operi su numeri razionali, e non su numeri interi. A tal fine, usate la classe Frazione del package prog, e i suoi metodi. Consultate la documentazione. Per specificare un numero razionale, l utente ne inserisce numeratore e denominatore (due interi). Commento 2. (1) In questo esercizio, come trattate il caso della divisione per zero? Confrontate con il punto (2) dell Esercizio 2. (2) Comparate l Esercizio 2 con quello appena svolto per mettere a fuoco le differenze che intercorrono fra un implementazione della calcolatrice basata su tipi primitivi e una fondata su tipi riferimento. Il signor Pignolino. Esercizio 4 Tempo: 30 min. Il signor Pignolino è pensionato. Egli esce di casa ogni mattina, ma solo a condizione che non piova e che le previsioni metereologiche per la giornata siano buone. Nel caso in cui decida di uscire, se il giorno del mese è pari (ad esempio, è il 20 di febbraio, o di marzo, etc.), si reca ai giardini pubblici, portando con sé un libro; altrimenti, si reca al Caffé, portandosi dietro il suo diario personale invece di un libro. Quanto detto vale a meno che non sia domenica, giorno in cui il signor Pignolino va invariabilmente a far visita alla sua cara amica signora Precisina, avendo l accortezza di prendere un ombrello nel caso in cui piova o le condizioni metereologiche non siano buone, o un parasole altrimenti. Si scriva un programma che rivolga al signor Pignolino un certo numero di domande, tenga traccia delle sue risposte per mezzo di variabili booleane, e produca in uscita una descrizione accurata del comportamento del signor Pignolino per la giornata. Si assuma che le risposte del signor Pignolino siano solo del tipo Si o No. Il programma deve produrre in uscita una (e una sola) fra le stringhe seguenti: Il signor Pignolino oggi non e uscito. Il signor Pignolino oggi e uscito per recarsi ai giardini pubblici. Ha portato con se un libro. Il signor Pignolino oggi e uscito per recarsi al Caffe. Ha portato con se il suo diario. Il signor Pignolino oggi e uscito per recarsi dalla signora Precisina. Ha portato con se un ombrello. Il signor Pignolino oggi e uscito per recarsi dalla signora Precisina. Ha portato con se un parasole. Commento 3. Quanto sono lunghe le stringhe che avete usato per produrre i messaggi in uscita? Vista la struttura regolare dei messaggi da produrre, è possibile memorizzare le sottostringhe che si ripetono in apposite variabili di tipo String, per poi comporre i messaggi in uscita tramite concatenazione. Se non avete già implemetando il codice in questo modo, provate.
4 4 V. MARRA Eco iterato. Esercizio 5 Tempo: 30 min. Scrivete un programma che legga in ingresso una stringa inserita dall utente, e la riscriva tale e quale sulla console. L esecuzione deve continuare in questo modo fino a che l utente non inserisca la stringa "\n" (cioè prema invio senza scrivere altro). Modificate poi il programma in modo da produrre in uscita, prima della terminazione, il numero complessivo di caratteri inseriti dall utente durante l esecuzione. Infine, aggiungete anche una richiesta di conferma per la terminazione del programma. L utente, dopo aver inserito "\n", deve poter scegliere fra la terminazione del programma, e il suo riavvio dall inizio. In questo secondo caso, l utente può anche scegliere se azzerare il conteggio dei caratteri, o proseguirlo. Conversione decimale binario. Esercizio 6 Tempo: 40 min. Riflettete: per implementare questo algoritmo, quale costrutto iterativo è opportuno usare? Uno while? Un do...while? Un for? Sperimentate. Si scriva un programma che accetti in ingresso un numero naturale (cioè un intero 0), e fornisca in uscita lo stesso numero in notazione binaria. Per acquisire l intero in ingresso, si usi ConsoleInputManager.readInt(), che restituisce un valore del tipo primitivo int. Se l utente inserisce un intero negativo, il programma chiede il reinserimento fino ad ottenere un naturale. Per la conversione in binario del numero naturale acquisito d > 0, si usi il seguente algoritmo. Si divida d per 2, la base del sistema binario. Siano q 1 il quoziente, e r 1 il resto della divisione. Se q 1 > 0, si iteri il processo dividendo q 1 per 2; siano q 2 il quoziente, e r 2 il resto della divisione. Continuando così, si generano due successioni di numeri naturali r 1,..., r n, e q 1,..., q n con q n = 0 e q i > 0 per i = 1,..., n 1, tali che r j {0, 1} per j = 1,..., n. L espressione in notazione binaria di d è allora: r n r n 1 r 1. Nota Bene. I resti vanno quindi letti in senso inverso rispetto all ordine in cui sono prodotti da questo algoritmo. Per implementare l algoritmo, si usi la classe StringBuffer di java.lang. Essa permette di rappresentare una stringa la cui lunghezza e i cui caratteri possano variare dinamicamente (cioè, durante l esecuzione del programma). Tale possibilità è preclusa se si usa la classe String, i cui oggetti hanno valore costante. Per creare un oggetto di classe StringBuffer che rappresenti il numero d in notazione binaria, si può: Aggiungere le cifre binarie r i all oggetto di classe StringBuffer tramite il metodo StringBuffer.append(int), durante la loro generazione. Una volta prodotte tutte le cifre binarie r j, usare il metodo StringBuffer. reverse() per invertire la stringa costruita.
5 LAB. PROG. LEZIONE 3 5 In alternativa, si può usare appropriatamente il metodo StringBuffer.insert( int, int), che permette di inserire il carattere rappresentante il secondo parametro intero nel punto dell oggetto di tipo StringBuffer indicato dal primo parametro intero. In tutti i casi, consultate la documentazione di StringBuffer. Altri suggerimenti. L operatore di divisione intera è /. L operatore di modulo (che fornisce il resto della divisione fra i due operandi) è %. Per testare la correttezza della vostra implementazione, potete usare il metodo tobinarystring(int) della classe Integer, che fornisce una rappresentazione binaria sotto forma di stringa dell argomento intero. Conversione decimale base b. Tempo: 20 min. Esercizio 7 Si modifichi il programma sviluppato nell Esercizio 6 in modo che dia la possibilità all utente di scegliere, all inizio dell esecuzione, la base b in cui convertire il numero inserito dall utente medesimo. Per facilità, limitate la scelta dell utente alle basi b che soddisfino: 1 < b 10. L algoritmo di conversione rimane lo stesso, mutatis mutandis: rendete parametrica la base. semplicemente, Commento 4. Quale difficoltà si incontra nell Esercizio 7 se b > 10, per esempio b = 16 (notazione esadecimale)? Quanti simboli servono per rappresentare le cifre in base b = 16? E cosa succede se b = 1 (notazione unaria)? Quanto è lunga l espressione unaria del numero d? E l algoritmo di conversione continua a funzionare, in questi casi? Palindromi. Tempo: 25 min. Esercizio 8 Una stringa s è palindroma se coincide con la stringa ottenuta da s leggendola da sinistra verso destra. Ad esempio, "anna" e "osso" sono palindrome, mentre "palindroma" non lo è. Scrivete un programma che accetti una stringa in ingresso, e controlli se essa è palindroma. A tal fine, un possibile algoritmo consiste nell invertire la stringa in ingresso s, ottenendo una stringa r, e poi confrontare se s e r coincidono. Lo scopo di questo esercizio è di implementare tale algoritmo di inversione senza usare il metodo StringBuffer.reverse() dell Esercizio 6. A tal fine, impiegate la classe StringBuffer in modo da poter costruire la stringa r un carattere alla volta a partire da s, sfruttando gli opportuni metodi di StringBuffer. Consultate la documentazione di questa classe. Esercizio 9 Conversione decimale base b con implementazione di reverse().
6 6 V. MARRA Tempo: 25 min. Mettete assieme i programmi sviluppati negli Esercizi 7 e 8 in modo da produrre un programma per la conversione dalla notazione decimale alla notazione in base b senza impiegare il metodo StringBuffer.reverse(). In luogo di quest ultimo, impiegate le parti appropriate del programma sviluppato nell Esercizio 8. Commento 5. Man mano che imparate a scrivere programmi più complessi, dovrebbe risultarvi sempre più evidente la necessità di stendere il codice in modo chiaro e pulito. Riguardate quanto avete sviluppato in questa lezione, prestando attenzione alla questioni seguenti: Commenti al sorgente. Avete inserito commenti nei punti opportuni del codice in modo da chiarire ai vostri lettori cosa andiate facendo? Scrivere un programma privo di commenti è inutile, anche qualora esso sia di dimensioni modeste: fra qualche tempo, infatti, neppure voi stessi sarete in grado di mettervi mano agevolmente. Nomi delle variabili. Che nomi avete usato per le variabili dei vostri programmi? Non ha senso usare nomi criptici, o troppo brevi, a scapito della chiarezza: chi legge il sorgente deve essere agevolato, non ostacolato. Quando possibile, è un ottima idea usare nomi di variabili che suggeriscano il loro significato all interno del programma. Attenzione, però, al rovescio della medaglia: l uso di nomi di variabili inutilmente lunghi è una pessima abitudine nella programmazione. Struttura logica del codice. Avete scritto il vostro codice in modo logico e lineare? Per esempio, avete posto mente a dove sia meglio, nei vari casi, dichiarare le variabili? O le avete dichiarate laddove vi servivano, e basta? Infine, indentate e commentate sempre il codice in modo da evidenziarne la struttura logica. (V. Marra) Dipartimento di Informatica e Comunicazione, Università degli Studi di Milano, via Comelico, 39-41, I Milan, Italy address: marra@dico.unimi.it
LABORATORIO DI PROGRAMMAZIONE TURNO 3 (SERALE) Indice
LABORATORIO DI PROGRAMMAZIONE 2006 2007 TURNO 3 (SERALE) 25.X.2006 VINCENZO MARRA Indice Parte 1. Esercizi obbligatori 2 Esercizio 1 2 Lunghezza di una stringa 2 Tempo: 10 min. 2 Commento 1 2 Esercizio
LABORATORIO DI PROGRAMMAZIONE TURNO 3 (SERALE)
LABORATORIO DI PROGRAMMAZIONE 2008 2009 TURNO 3 (SERALE) 22.X.2008 VINCENZO MARRA Indice Esercizio 1 1 Lunghezza di una stringa 1 2 Commento 1 2 Esercizio 2 2 Conversione in maiuscole e minuscole 2 2 Esercizio
LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B
LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B 23.XI.2012 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min. 2 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe
LABORATORIO DI PROGRAMMAZIONE TURNO 3 (SERALE)
LABORATORIO DI PROGRAMMAZIONE 2008 2009 TURNO 3 (SERALE) 5.XI.2008 VINCENZO MARRA Indice Esercizio 1 2 Unicode 2 2 Esercizio 2 2 Categorie di caratteri 2 Tempo: 30 min. 2 Esercizio 3 3 Massimi e minimi
LABORATORIO DI PROGRAMMAZIONE TURNO 3 (SERALE)
LABORATORIO DI PROGRAMMAZIONE 2007 2008 TURNO 3 (SERALE) 3XII2008 VINCENZO MARRA Indice Esercizio 1 1 Menu 1 Tempo: 35 min 1 Commento 1 2 Esercizio 2 2 Ordinamento e ricerca binaria con la classe Arrays
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO III Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 18.III.2015 VINCENZO MARRA Indice Parte 1. L algoritmo euclideo 3 Esercizio 1 3 L algoritmo euclideo
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO III Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2018 2019 20.III.2019 VINCENZO MARRA Indice Parte 1. L algoritmo euclideo 3 Esercizio 1 3 L algoritmo euclideo
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO IV Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2015 2016 5.IV.2016 VINCENZO MARRA Indice Parte 1. Esercizi facili con la programmazione strutturata 3 Esercizio
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO IV Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2017 2018 4.IV.2018 VINCENZO MARRA Indice Parte 1. Caratteri e stringhe con la libreria Prog1 3 Esercizio
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO V Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 20.V.2015 VINCENZO MARRA Indice Parte 1. Input/Output standard da file 2 Esercizio 1 2 Eco di file
Laboratorio di Programmazione Laurea in Bioinformatica
Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.
Lab 04 Programmazione Strutturata"
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 04 Programmazione Strutturata" Lab04 1 Valutazione in cortocircuito (1)" In C, le espressioni booleane sono valutate
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO IX.2014
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2013 2014 8.IX.2014 VINCENZO MARRA Indice Esercizio 1 1 Leggere una stringa e calcolarne la lunghezza.
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO IV Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 15.IV.2015 VINCENZO MARRA Indice Parte 1. Suddividere i programmi in funzioni 2 Esercizio 1 2 Calcolatrice
Sistemi di numerazione
Sistemi di numerazione Introduzione Un sistema di numerazione è un sistema utilizzato per esprimere i numeri e possibilmente alcune operazioni che si possono effettuare su di essi. Storicamente i sistemi
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VI.2015
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 15.VI.2015 VINCENZO MARRA Indice Esercizio 1 1 Definizione dei tipi P e T, e calcolo dell area.
Sistemi di numerazione
Sistemi di numerazione Numeri naturali Noi rappresentiamo i numeri con una sequenza di cifre, ad esempio 10 : 0,1,2,3,4,5,6,7,8,9, secondo una notazione posizionale. Posizionale significa che il valore
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO III.2018, PARTE 2.
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2017 2018 7.III.2018, PARTE 2 VINCENZO MARRA Indice Parte 1. Esperimenti con l output formattato di printf
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO V Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2017 2018 9.V.2018 VINCENZO MARRA Indice Parte 1. Input/Output standard dalla console: esercizi facili 2 Esercizio
APPUNTI DI INFORMATICA
APPUNTI DI INFORMATICA Per il biennio di liceo scientifico scienze applicate Sommario Il calcolo binario... 2 Numerazione Decimale... 2 Numerazione Binaria... 2 Conversione Binario -> Decimale... 2 Conversione
Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012
Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario I sistemi di numerazione Il sistema binario Altri sistemi di numerazione Algoritmi di conversione Esercizi 07/03/2012 2 Sistemi
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO IV Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2018 2019 10.IV.2019 VINCENZO MARRA Indice Parte 1. Suddividere i programmi in funzioni 3 Esercizio 1 3 Calcolatrice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO IV.2019
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2018 2019 17.IV.2019 VINCENZO MARRA Indice Esercizio 1 2 Funzione reverse 2 2 Esercizio 2 2 Funzione equals
Somma di numeri floating point. Algoritmi di moltiplicazione e divisione per numeri interi
Somma di numeri floating point Algoritmi di moltiplicazione e divisione per numeri interi Standard IEEE754 " Standard IEEE754: Singola precisione (32 bit) si riescono a rappresentare numeri 2.0 10 2-38
Scopo del progetto è la costruzione di un compilatore per il linguaggio descritto qui di seguito.
Corso di Linguaggi e Traduttori Anno Accademico 2017 2018 Prof. Giovanni Pighizzini Progetto d esame Scopo del progetto è la costruzione di un compilatore per il linguaggio descritto qui di seguito. Variabili
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO V Indice
LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2018 2019 22.V.2019 VINCENZO MARRA Indice Parte 1. Input/Output standard da file 3 Esercizio 1 3 Eco di file
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO IX.2015
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 14.IX.2015 VINCENZO MARRA Indice Preliminari 2 Esercizio 1 2 Memorizzazione, lettura e visualizzazione
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VII.2017
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2016 2017 17.VII.2017 VINCENZO MARRA Indice Esercizio 1 2 Strutture di dati, funzioni diam, dist e centr.
Programmazione I Paolo Valente /2017. Lezione 6. Notazione posizionale
Lezione 6 Notazione posizionale Ci sono solo 10 tipi di persone al mondo: quelle che conoscono la rappresentazione dei numeri in base 2, e quelle che non la conoscono... Programmazione I Paolo Valente
Riprendiamo l esercizio calcolatrice
Riprendiamo l esercizio calcolatrice Scrivere un programma calcolatrice che legga da tastiera due variabili intere a e b, poi Stampi un menu con un valore numerico associato a quattro operazioni possibili:
Laboratorio di Programmazione Laurea in Bioinformatica
Laboratorio di Programmazione Laurea in Bioinformatica 28 novembre 2007 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.
La codifica. dell informazione. (continua) Codifica dei numeri. Codifica dei numeri. Sono stati pertanto studiati codici alternativi per
La codifica dell informazione (continua) Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da 0 a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero
La codifica. dell informazione. Codifica dei numeri. (continua) Codifica dei numeri. Codifica dei numeri: il sistema decimale
La codifica dell informazione Il codice ASCII consente di codificare le cifre decimali da a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero 324 potrebbe essere rappresentato
Programmazione in Java (I modulo)
Programmazione in Java (I modulo) Lezione 4 Variabili di tipo primitivo. Dichiarazione di costanti Conversioni di tipo: operatore cast Altri operatori di assegnamento Operazioni aritmetiche e di confronto
Corso di Fondamenti di Informatica Università degli Studi di Cassino
Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono l algoritmo Cominciamo ad analizzare la
Casi di prova. Il problema dell ordinamento. Casi di prova. Casi di prova. Casi di prova
Casi di prova Casi di prova Quando si vuole testare un algoritmo si devono costruire vari casi di prova. Invece di eseguire il programma più volte si può costruire un file di dati contenente tutti i casi
Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013
Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 5 31/10/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University
Lezione 3. I numeri relativi
Lezione 3 L artimetcia binaria: i numeri relativi i numeri frazionari I numeri relativi Si possono rappresentare i numeri negativi in due modi con modulo e segno in complemento a 2 1 Modulo e segno Si
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VII.2019
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2018 2019 8.VII.2019 VINCENZO MARRA Indice Esercizio 1 2 Strutture dati e visualizzazione 2 Punti: 3.
Note ed esercizi aggiuntivi
Corso di Programmazione Anno Accademico 2013 2014 Prof. Giovanni Pighizzini Note ed esercizi aggiuntivi 6. Ancora uso dei cicli, tipi generici Esercizio 6.1 Scrivete un applicazione che legga un numero
Cominciamo ad analizzare la rappresentazione delle informazioni... di Cassino. C. De Stefano Corso di Fondamenti di Informatica Università degli Studi
Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono l algoritmo Cominciamo ad analizzare la
Esercizi su Scratch. Esegui la Somma e il Prodotto dei numeri inseriti in Input fino a che non inserisco la vocale e.
Esercizi su Scratch Esercizio 1: Indovina il numero Il computer pensa un numero compreso tra uno e 100 e tu lo devi indovinare. Prevedi un avviso che indichi se il Tuo numero è più grande o più piccolo.
Notazione posizionale. Codifica binaria. Rappresentazioni medianti basi diverse. Multipli del byte
Codifica binaria Rappresentazione di numeri Notazione di tipo posizionale (come la notazione decimale). Ogni numero è rappresentato da una sequenza di simboli Il valore del numero dipende non solo dalla
La codifica. dell informazione
La codifica dell informazione (continua) Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da 0 a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero
Architettura degli Elaboratori e Laboratorio. Matteo Manzali Università degli Studi di Ferrara Anno Accademico
Architettura degli Elaboratori e Laboratorio Matteo Manzali Università degli Studi di Ferrara Anno Accademico 2016-2017 Analogico vs digitale Segnale analogico Segnale digitale Un segnale è analogico quando
La codifica. dell informazione
00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111
Interi positivi e negativi
Definizioni: numerali e numeri Un numerale è solo una stringa di cifre Un numerale rappresenta un numero solo se si specifica un sistema di numerazione Lo stesso numerale rappresenta diversi numeri in
Elementi di informatica
1 2 Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri 3 Sistemi di numerazione posizionali La rappresentazione dei numeri richiede ovviamente una codifica, ovvero la
Laboratorio di Informatica
Laboratorio di Informatica Seconda lezione a Python Dottore Paolo Parisen Toldin - parisent@cs.unibo.it Dottoressa Sara Zuppiroli - sara.zuppiroli@unibo.it L'importanza di capire Perché non dobbiamo dichiarare
Caratteristiche di un linguaggio ad alto livello
Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono
Lezione 2. La conoscenza del mondo
Lezione 2 Analogico/Digitale Il sistema binario L aritmetica binaria La conoscenza del mondo Per poter parlare (ed elaborare) degli oggetti (nella visione scientifica) si deve poter assegnare a questi
MATEMATICA DI BASE 1
MATEMATICA DI BASE 1 Francesco Oliveri Dipartimento di Matematica, Università di Messina 30 Agosto 2010 MATEMATICA DI BASE MODULO 1 Insiemi Logica Numeri Insiemi Intuitivamente, con il termine insieme
7 2 =7 2=3,5. Casi particolari. Definizione. propria se < impropria se > e non è multiplo di b. apparente se è un multiplo di. Esempi.
NUMERI RAZIONALI Q Nell insieme dei numeri naturali e nell insieme dei numeri interi relativi non è sempre possibile effettuare l operazione di divisione. Infatti, eseguendo la divisione 7 2 si ottiene
Elementi di informatica
Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Sistemi di numerazione posizionali La rappresentazione dei numeri richiede ovviamente una codifica, ovvero la definizione
Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.
Fondamenti di Informatica - A. Fantechi Raccolta di esercizi Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.
APPUNTI PER IL CORSO DI MATEMATICA APPLICATA. 1. Lezione 1 Richiamo brevemente alcune notazioni della teoria degli insiemi.
APPUNTI PER IL CORSO DI MATEMATICA APPLICATA ERNESTO DE VITO - UNIVERSITÀ DI GENOVA, ITALY 1. Lezione 1 Richiamo brevemente alcune notazioni della teoria degli insiemi. insieme vuoto N insieme dei numeri
I sistemi di numerazione. Informatica - Classe 3ª, Modulo 1
I sistemi di numerazione Informatica - Classe 3ª, Modulo 1 1 La rappresentazione interna delle informazioni ELABORATORE = macchina binaria Informazione esterna Sequenza di bit Spett. Ditta Rossi Via Roma
CURRICOLO DI ISTITUTO
ISTITUTO COMPRENSIVO G.PERLSC Ferrara CURRICOLO DI ISTITUTO NUCLEO TEMTICO Il numero CONOSCENZE BILIT S C U O L P R I M R I classe 1^ L alunno conosce: i numeri naturali, nei loro aspetti cardinali e ordinali,
Informatica Generale 1 - Esercitazioni Flowgraph, algebra di Boole e calcolo binario
Informatica Generale 1 - Esercitazioni Flowgraph, algebra di Boole e calcolo binario Daniele Pighin pighin@fbk.eu FBK Via Sommarive, 18 I-38050 Trento, Italy February 27, 2008 Outline 1 Algebra di Boole
Aritmetica dei Calcolatori Elettronici
Aritmetica dei Calcolatori Elettronici Prof. Orazio Mirabella L informazione Analogica Segnale analogico: variabile continua assume un numero infinito di valori entro l intervallo di variazione intervallo
I.4 Rappresentazione dell informazione
I.4 Rappresentazione dell informazione Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 13, 2015 Argomenti Introduzione 1 Introduzione 2 3 L elaboratore Introduzione
Programmazione I Paolo Valente /2018. Lezione 6. Notazione posizionale
Lezione 6 Notazione posizionale Ci sono solo 10 tipi di persone al mondo: quelle che conoscono la rappresentazione dei numeri in base 2, e quelle che non la conoscono... Programmazione I Paolo Valente
1.2 Concetti base dell Informatica: Informazione
1.2 Concetti base dell Informatica: Informazione Insegnamento di Informatica Elisabetta Ronchieri Corso di Laurea di Economia, Universitá di Ferrara I semestre, anno 2014-2015 Elisabetta Ronchieri (Universitá)
Lezione 5 e 6. Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza. Valentina Ciriani ( ) Laboratorio di programmazione
Lezione 5 e 6 - Concetto di blocco - Controllo del flusso di un programma - Costrutti per la scelta if e switch - Costrutti while e for - Operatori in C Fabio Scotti (2004-2009) Laboratorio di programmazione
Unità aritmetica e logica
Aritmetica del calcolatore Capitolo 9 Unità aritmetica e logica n Esegue le operazioni aritmetiche e logiche n Ogni altra componente nel calcolatore serve questa unità n Gestisce gli interi n Può gestire
liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE BIENNIO: SECONDA DISCIPLINA: INFORMATICA
INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE PROGRAMMAZIONE BIENNIO: SECONDA DISCIPLINA: INFORMATICA PIANO DI LAVORO DEL DOCENTE / RELAZIONE FINALE Anno scolastico 2014/2015 DOCENTE Prof. PAOLO ARMANI CLASSE:
Elementi di informatica
Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Sistemi di numerazione posizionali La rappresentazione dei numeri richiede ovviamente una codifica, ovvero la definizione
Laboratorio di Programmazione I Compitino (Vers. C)
Laboratorio di Programmazione I Compitino (Vers. C) 13 novembre 2009 Cognome... Nome... Matricola... Note. In alcune delle seguenti domande verrà usato il vostro numero di matricola. Scrivete il vostro
Rappresentazione ottale e esadecimale. 22 settembre 2017
Rappresentazione ottale e esadecimale settembre 017 Notazione binaria per numeri naturali In base. I simboli ammessi sono 0,1. Una sequenza / stringa di 0 e 1, di lunghezza n con a i {0, 1} per i = 0,
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO VI.2017
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2016 2017 15.VI.2017 VINCENZO MARRA Indice Esercizio 1 2 Prefisso comune di due stringhe. 2 Punti: 8.
Rappresentazione dell Informazione
Rappresentazione dell Informazione Rappresentazione delle informazioni in codice binario Caratteri Naturali e Reali positivi Interi Razionali Rappresentazione del testo Una stringa di bit per ogni simbolo
Unita aritmetica e logica. Input e output della ALU. Rappresentazione degli interi. Rappresentazione in modulo e segno. Aritmetica del calcolatore
Unita aritmetica e logica Aritmetica del calcolatore Capitolo 9 Esegue le operazioni aritmetiche e logiche Ogni altra componente nel calcolatore serve questa unita Gestisce gli interi Puo gestire anche
Algoritmi di conversione Rappresentazione ottale e esadecimale. 25 settembre 2018
Algoritmi di conversione Rappresentazione ottale e esadecimale 25 settembre 2018 Notazione binaria per numeri naturali In base 2. I simboli ammessi sono 0,1. Una sequenza / stringa di 0 e 1, di lunghezza
Lezione 7 Aritmetica in virgola mobile (1)
Lezione 7 Aritmetica in virgola mobile (1) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Un ripasso Un quadro della situazione: dove siamo, dove stiamo
Esercitazione Informatica I (Parte 1) AA Nicola Paoletti
Esercitazione Informatica I (Parte 1) AA 2011-2012 Nicola Paoletti 31 Maggio 2012 2 Antipasto 1. Quanti bit sono necessari per rappresentare (a) (227.551.832) 10? (b) (125.521) 10? 2. Quanti decimali sono
Fondamenti di Informatica T1. Lab 03 Istruzioni. Lab03 1
Fondamenti di Informatica T1 Lab 03 Istruzioni Lab03 1 Esercizio 1 Realizzare un programma che legga da input tre numeri interi e stampi a video la loro somma e la media. Lab03 2 #include main()
Java e i Tipi di dati primitivi. Parte 3
Java e i Tipi di dati primitivi Parte 3 La nozione di tipo di dato Il tipo del dato consente di esprimere la natura del dato Indica il modo con cui verrà interpretata la sequenza di bit che rappresenta
Rappresentazione degli algoritmi
Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2013 2014 20.VI.2014
APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2013 2014 20.VI.2014 VINCENZO MARRA Indice Esercizio 1 1 Leggere stringhe e caratteri 1 Esercizio 2 2
Rappresentazione dei numeri interi in un calcolatore
Corso di Calcolatori Elettronici I Rappresentazione dei numeri interi in un calcolatore Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle
Rappresentazione dei numeri interi in un calcolatore. Rappresentazione dei numeri
Corso di Calcolatori Elettronici I Rappresentazione dei numeri interi in un calcolatore Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle
Anno Accademico Lezione 10 : Conversione di Base (p. 3) Lunedì 6 Dicembre 2010
Anno Accademico 2009-2010 2010 Lezione 10 : Conversione di Base (p. 3) Lunedì 6 Dicembre 2010 Da base 2 a base 10: 11010100 2 0 2 0 + 0 2 1 + 1 2 2 + 0 2 3 + 1 2 4 + 0 2 5 + 1 2 6 + 1 2 7 = 212 10 2 Per
Rappresentazione degli algoritmi
Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti
LA CODIFICA DELL INFORMAZIONE. Prof. Enrico Terrone A. S: 2014/15
LA CODIFICA DELL INFORMAZIONE Prof. Enrico Terrone A. S: 2014/15 Lo schema di Tanenbaum Il livello al quale ci interessiamo in questa lezione è il linguaggio macchina, l unico dove le informazioni e istruzioni
Esercizi su strutture dati
Esercizi su strutture dati Marco Alberti Programmazione e Laboratorio, A.A. 2016-2017 Dipartimento di Matematica e Informatica - Università di Ferrara Ultima modifica: 21 dicembre 2016 Liste collegate
Fondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Programmazione Assembly
Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Programmazione Assembly Scrivere il codice ARM che implementi le specifiche richieste e quindi verificarne il comportamento usando il simulatore
LA CODIFICA DELL INFORMAZIONE
LA CODIFICA DELL INFORMAZIONE Prof. Enrico Terrone A. S: 20/2 Lo schema di Tanenbaum Il livello al quale ci interessiamo in questa lezione è il linguaggio macchina, l unico dove le informazioni e istruzioni
Rappresentazione binaria
Rappresentazione binaria Per informazione intendiamo tutto quello che viene manipolato da un calcolatore: numeri (naturali, interi, reali,... ) caratteri immagini suoni programmi... La più piccola unità
LABORATORIO 4 - Iterazioni
LABORATORIO 4 - Iterazioni Ripassiamo l utilizzo della classe Scanner Scrivete un programma che, chiede all utente di inserire un numero intero n e quindi chiede all utente di inserire n numeri interi
Programma del corso. Rappresentazione delle Informazioni. Introduzione agli algoritmi. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet) Elementi di Programmazione Rappresentazione
Rappresentazione dei numeri
Rappresentazione dei numeri Così come per qualsiasi altro tipo di dato, anche i numeri, per essere immagazzinati nella memoria di un calcolatore, devono essere codificati, cioè tradotti in sequenze di
Un ripasso di aritmetica: Rappresentazione decimale - limitazioni
Un ripasso di aritmetica: Rappresentazione decimale - limitazioni Consideriamo la base dieci: con tre cifre decimali si possono rappresentare i numeri compresi tra 0 e 999, il numero successivo (1000)
Lezione 1. Rappresentazione dei numeri. Aritmetica dei calcolatori. Rappresentazione dei numeri naturali in base 2
Lezione 1 Rappresentazione dei numeri Aritmetica dei calcolatori Rappresentazione dei numeri naturali in base 2 Si utilizza un alfabeto binario A = {0,1} dove 0 corrisponde al numero zero e 1 corrisponde
I.4 Rappresentazione dell informazione - Numeri con segno
I.4 Rappresentazione dell informazione - Numeri con segno Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 20, 2015 Argomenti Introduzione 1 Introduzione