Un algoritmo è una sequenza di comandi (detti istruzioni) che istruiscono sull'esecuzione di un determinato compito.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Un algoritmo è una sequenza di comandi (detti istruzioni) che istruiscono sull'esecuzione di un determinato compito."

Transcript

1 Definizione di algoritmo Un algoritmo è una sequenza di comandi (detti istruzioni) che istruiscono sull'esecuzione di un determinato compito. Esempi di algoritmi possono essere: una ricetta di cucina, uno spartito musicale, le istruzioni per il montaggio di un mobile, un programma per il calcolatore. Esperto, esecutore, utente In generale l'algoritmo è scritto da un esperto ed eseguito da un esecutore. Esecutore ed esperto sono di solito (anche se non necessariamente) due soggetti distinti. Inoltre l'algoritmo viene eseguito per un utente, che a sua volta non coincide sempre con l'esperto e l'esecutore. La tabella seguente riporta alcuni esempi e dovrebbe servire per chiarire i concetti: Esempio Esperto Esecutore Utente Spartito musicale Compositore Musicista Ascoltatore Istruzioni montaggio mobile Progettista Operaio montatore Acquirente Ricetta di cucina Chef Cuoco Cliente del ristorante Programma Programmatore Computer Utente del computer Linguaggio Esperto ed esecutore devono condividere la conoscenza del linguaggio col quale è stato scritto l'algoritmo. Tale linguaggio può essere una lingua naturale (come per esempio l'italiano, in una ricetta), una notazione particolare (es. la notazione musicale negli spartiti), un linguaggio pittografico ad immagini (come nelle figure delle istruzioni di montaggio di certi mobili) o un linguaggio artificiale di programmazione (nel caso dei programmi per un computer). Si noti che invece l'utente può anche ignorare completamente il linguaggio col quale è stato scritto l'algoritmo (per esempio un ascoltatore di musica può benissimo non conoscere la notazione musicale). Ambiguità I linguaggi naturali (come per esempio l'italiano) sono spesso ambigui, cioè possono essere interpretati in modi diversi. Un esempio di frase ambigua è "La vecchia porta la sbarra", che può avere due significati completamente differenti. In molti casi le istruzioni fornite in un linguaggio naturale sono inoltre imprecise, come per esempio quando in una ricetta c'è scritto "salare" senza specificare esattamente la quantità di sale. Ambiguità e imprecisione non creano generalmente problemi nella comunicazione fra esseri umani dotati di intelligenza, ma non sono possibili dovendo comunicare con un computer (cioè una macchina). Per questa ragione i linguaggi di programmazione devono consentire di scrivere algoritmi in modo chiaro, senza imprecisioni e senza nessuna possibile ambiguità. Proprietà degli algoritmi eseguibili da un computer In generale, per poter essere eseguito automaticamente da un computer, un algoritmo deve essere: finito: la sequenza di istruzioni deve essere finita e portare ad un risultato avere un punto di inizio, dove si avvia l esecuzione delle azioni, e un punto di fine, dove si interrompe l esecuzione; eseguibile: le istruzioni devono poter essere eseguite materialmente dall esecutore; non ambiguo: le istruzioni devono essere espresse in modo tale da essere interpretate da tutti allo stesso modo; generale: deve essere valido non solo per un particolare problema, ma per una classe di problemi; deterministico: partendo dagli stessi dati iniziali deve portare sempre allo stesso risultato finale indipendentemente dall esecutore; completo: deve contemplare tutti i casi che si possono verificare durante l esecuzione.

2 Vediamo ora alcuni semplici esempi di algoritmi: a) Scambio di liquido fra due bicchieri Supponiamo di avere due bicchieri, denominati A e B, pieni rispettivamente uno di acqua e l'altro di vino, e di voler travasare A in B e viceversa. Il problema può essere risolto usando un terzo bicchiere C e l'algoritmo è il seguente: 1) versa A in C 2) versa B in A 3) versa C in B b) Problema del lupo, del cavolo e della capra Un pastore deve attraversare un fiume portando sull'altra riva un lupo e una capra affamati e una cassa di cavoli. Ha a disposizione una barca a remi con la quale può traghettare un solo oggetto o animale alla volta. Ma, attenzione! Non può lasciare da soli:- il lupo e la capra perchè il lupo si mangia la capra;- la capra ed i cavoli perché la capra si mangia i cavoli. Chiamiamo A la sponda iniziale e B la sponda su cui il barcaiolo deve trasportare lupo, capra e cavoli. 1) il barcaiolo porta la capra in B 2) il barcaiolo torna a prendere il lupo e lo porta in B 3) il barcaiolo riporta la capra in A 4) il barcaiolo porta i cavoli in B 5) il barcaiolo porta la capra in B c) Differenza fra due orari Si supponga di conoscere l'orario di inizio e l'orario di fine di un film e di volerne calcolare la durata in minuti. Per fissare le idee supponiamo che l'orario di inizio sia le e l'orario di fine sia le Chiamiamo ora1 l'ora di inizio (20) e min1 i minuti di inizio (30). Allo stesso modo ora2 sarà l'ora finale (22) e min2 i minuti finali (14). L'algoritmo potrebbe essere il seguente: 1) Calcolo tot1 = ora1 + min1 x 60 2) Calcolo tot2 = ora2 + min2 x 60 3) Faccio la differenza dif = tot2 - tot1 d) Ordinamento di 3 numeri Siano dati tre valori A, B e C e li si vuole ordinare in modo crescente, cioè in modo che A contenga il valore più piccolo di tutti, B quello intermedio e C il più grande. L'algoritmo deve naturalmente funzionare con qualsiasi scelta di valori di A, B e C. Ecco una soluzione possibile: 1) SE B < A, ALLORA scambia B con A 2) SE C < A, ALLORA scambia C con A 3) SE B < A, ALLORA scambia B con A Si noti che l'istruzione 1 e la 3 sono uguali. Tuttavia vengono eseguite con valori diversi e dunque, in generale, producono risultati diversi. L'istruzione "scambia" può essere ulteriormente dettagliata specificando tutti i passaggi intermedi necessari ad effettuare lo scambio fra il contenuto di due variabili. e) Anni bisestili Un anno è bisestile se il suo numero è divisibile per 4, con l'eccezione che gli anni secolari (quelli divisibili per 100) che sono bisestili solo se divisibili per 400. Sono cioè bisestili tutti gli anni la cui numerazione termina con le due cifre 04, 08, fino a 96; gli anni che terminano con 00 sono bisestili solo se l'anno è divisibile per 400, cioè il 1600, il 2000, il 2400 eccetera.

3 Il seguente algoritmo determina se Anno è bisestile oppure no: 1) SE Anno è divisibile per 4 ma non è divisibile per 100, ALLORA Anno è bisestile 2) SE Anno è divisibile per 400, ALLORA Anno è bisestile ALTRIMENTI Anno non è bisestile f) Moltiplicazione fra due numeri senza usare il prodotto Siano dati due numeri interi A e B. Si vuole calcolare il prodotto di A per B senza usare l'operatore di moltiplicazione, ovvero semplicemente eseguendo ripetutamente la somma. Ecco una possibile soluzione: 1) C = 0 2) RIPETI FINTANTOCHE' A è diverso da zero - C = C + B - A = A -1 3) Il risultato della moltiplicazione è in C Diagramma di flusso (Flow chart) Un diagramma di flusso (o flow chart) è una rappresentazione grafica di un algoritmo. Si potrebbe dire che i diagrammi di flusso forniscono un linguaggio universale per scrivere algoritmi. Le operazioni elementari che si possono rappresentare con un flow chart sono di cinque tipi diversi, a ciascuno dei quali corrisponde un diverso simbolo grafico (blocco): 1. Blocco iniziale Viene posto all'inizio dell'algoritmo ed è unico per ogni dato algoritmo (indica il punto in cui deve iniziare l'esecuzione e ogni algoritmo ha un solo blocco di inizio); Blocco finale E' analogo al precedente, ma segnala la fine dell'algoritmo. Viene messo dunque per indicare il termine dell'esecuzione. A differenza del blocco iniziale, ci possono essere più blocchi finali per un singolo algoritmo (cioè un algoritmo può terminare, a seconda dei casi, in punti diversi); Blocco di elaborazione o di operazione interna Indica l'esecuzione di una qualsiasi operazione all'interno dell'algoritmo (nell'esempio in figura qui sotto, l'operazione è l'incremento del valore della variabile x);

4 4. Blocco di controllo o di test Serve per selezionare due differenti percorsi all'interno di un dato algoritmo, a seconda che sia verificata oppure no la condizione scritta all'interno del blocco (nell'esempio in figura se x>0 viene presa la strada indicata con SI, altrimenti l'esecuzione prosegue per la strada indicata con NO); 5. Blocco di input/output Questo blocco serve per indicare una fra due operazioni diverse: a) l'acquisizione di un valore dalla tastiera di un computer; b) la visualizzazione di un valore sullo schermo di un computer (o su un'altra periferica di output, come per esempio una stampante). A seconda di quale delle due operazioni si vuole eseguire, sul blocco viene scritto LEGGI oppure SCRIVI (o ancora ACQUISISCI o STAMPA o altre scritte che ne chiariscono lo scopo). Il blocco di input/output è utile quando si vuole schematizzare con un diagramma di flusso un algoritmo che dovrà essere eseguito da un calcolatore (che dovrà quindi diventare un programma). 6. Blocco di connessione Serve semplicemente per connettere fra loro più percorsi all'interno dell'algoritmo. In un diagramma di flusso i blocchi precedenti sono collegati fra di loro per mezzo di frecce che indicano la direzione di esecuzione dell'algoritmo stesso. In generale le frecce indicano un percorso che, partendo da un unico blocco di inizio, termina alla fine in un blocco finale. Un esempio di algoritmo scritto usando un diagramma di flusso La rappresentazione per mezzo dei diagrammi di flusso è abbastanza semplice e naturale e viene usata non solo in informatica ma in molti altri ambiti applicativi. Per questa ragione non si ritiene opportuno dilungarsi troppo su questo aspetto. Piuttosto forniamo qui di seguito un esempio di scrittura di algoritmo, con riferimento al problema di moltiplicare fra loro due numeri interi usando solo le addizioni.

5 Definizione In un algoritmo si dice struttura di controllo (control structure) un gruppo di istruzioni con un unico punto di ingresso e un unico punto di uscita. Un altro modo per definire una struttura di controllo è quello di considerarla come un gruppo di istruzioni "collegate fra loro", nel senso che vengono eseguite insieme oppure la cui esecuzione dipende l'una dall'altra. Qualche esempio chiarirà meglio il concetto. Occorre intanto dire che in qualsiasi algoritmo si possono individuare solo tre tipi di strutture di controllo e precisamente: 1. la sequenza 2. la selezione 3. il ciclo Sequenza Come suggerisce il nome, una sequenza è un gruppo di istruzioni che devono essere eseguite una dopo l'altra, in successione.un esempio di sequenza è quella mostrata qui sotto e che serve per calcolare area e perimetro di un cerchio data la misura del raggio:

6 Gli algoritmi più semplici (come quello mostrato qui sopra) sono costituiti da un'unica sequenza di istruzioni. Notiamo di passaggio che la moltiplicazione è stata indicata con l'asterisco *, usando la convenzione usata nella maggior parte dei linguaggi di programmazione. Allo stesso modo è stato utilizzato il punto decimale, invece della virgola, nella scrittura di pi greco (3.14), perché questa è la convenzione che viene di solito usata nei linguaggi di programmazione. Selezione La struttura detta selezione permette di eseguire istruzioni diverse a seconda della condizione scritta all'interno di un blocco di test. Un esempio semplice di selezione è presente nel seguente algoritmo che acquisisce un numero e lo rende positivo se è negativo: Si osservi il metodo usato per rendere positivo il numero (se negativo): numero = - numero La selezione corrisponde in italiano all'istruzione SE... ALLORA. Negli algoritmi e ed f della lezione di esempio, si possono osservare esempi di selezioni. Una selezione si dice semplice o a una via quando prevede l'esecuzione di un solo blocco di istruzioni nel caso in cui la condizione sia vera. Nel caso di condizione falsa, la selezione semplice non esegue nessuna istruzione. Un esempio di selezione semplice è: SE piove ALLORA prendi l'ombrello Se la condizione è falsa (cioè se NON piove), non viene prevista nessuna istruzione. In una selezione a due vie, invece, viene eseguito qualcosa sia nel caso in cui la condizione sia vera sia nel caso in cui la condizione sia falsa. La selezione a due vie viene tradotta in italiano con SE... ALLORA... ALTRIMENTI..., come nell'esempio seguente:

7 SE il semaforo è rosso ALLORA passa ALTRIMENTI fermati In questo caso l'istruzione passa viene eseguita se la condizione è vera (cioè SE il semaforo è rosso), mentre l'istruzione fermati viene eseguita se la condizione è falsa. Ciclo Un ciclo è un gruppo di istruzioni in un algoritmo che devono essere ripetute più volte. Un esempio di ciclo lo troviamo nell'algoritmo per la moltiplicazione di due numeri usando solo somme: Osserviamo che anche il ciclo, come la selezione, contiene un blocco di test. In questo caso però il blocco di test controlla la ripetizione di un gruppo di istruzioni e non semplicemente la scelta fra due diversi percorsi nell'algortimo. La presenza di un ciclo all'interno di un algoritmo si distingue facilmente per via del percorso di ritorno, cioè di un ramo dell'algoritmo che torna indietro (a indicare il fatto che alcune istruzioni vengono ripetute). Negli algoritmi g ed h della lezione di esempio, si possono osservare altri esempi di cicli. Il ciclo viene tradotto in italiano con RIPETI FINTANTOCHE'... Si consideri il seguente esempio: RIPETI FINTANTOCHE' ci sono ancora patate - prendi una patata dal cesto - sbuccia la patata - getta la patata nella pentola Si noti che le tre istruzioni del ciclo vengono eseguite molte volte, finché ci sono ancora patate.

8 Variabili Osservando gli esempi di algoritmi presentati nelle lezioni precedenti è interessante notare come, nella scrittura, siano state usate delle variabili. Le variabili negli algoritmi sono simili alle variabili usate in matematica e in fisica: in pratica sono dei nomi usati per indicare dei valori numerici. Per esempio nell'algoritmo per il calcolo della differenza fra due orari, abbiamo usato le variabili ora1, ora2, min1, min2 e dif. L'uso delle variabili semplifica la scrittura degli algoritmi, ma, soprattutto, la rende di validità generale. In altre parole: un algoritmo scritto usando le variabili (al posto dei valori numerici) può essere usato per qualsiasi valore numerico; viceversa se i valori numerici fossero indicati esplicitamente dentro l'algoritmo (in questo caso si parla di costanti, per distinguerle dalle variabili), l'algoritmo sarebbe valido per un unico caso. Si può definire una variabile come un contenitore, dotato di un nome, al cui interno è possibile memorizzare un valore. Le variabili sono comunemente usate in matematica con questo significato. Per quanto riguarda i nomi, utilizzando le convenzioni usate normalmente dai linguaggi di programmazione, il nome di una variabile può essere composto da una sequenza di lettere (minuscole e/o maiuscole), dalle cifre da 0 a 9 e dal simbolo di sottolineatura ( _ ). Il primo carattere del nome deve essere sempre una lettera oppure il simbolo di sottolineatura e all'interno del nome non devono essere presenti spazi o punti. Esempi di nomi di variabili validi sono: num, ris, area_cerchio, val2 Esempi di nomi di variabili errati sono: %, 12a, primo val Assegnazione L'operazione fondamentale che si può eseguire su una variabile è l'assegnazione. L'assegnazione si indica col simbolo di uguaglianza (=), come nel seguente esempio: risultato = 255 L'assegnazione precedente "mette" il valore 255 nel contenitore di nome "risultato". Ogni variabile può contenere solo un numero alla volta, perciò assegnazioni successive, eseguite sulla stessa variabile, cancellano i valori precedenti. Per esempio: var = 4 var = 65 var = 7 alla fine var contiene il numero 7.

9 Assegnazione di una variabile a un'altra variabile Mediante un'assegnazione è anche possibile copiare il valore di una variabile in un'altra. Così per esempio a = b copia il valore contenuto nella variabile b nella variabile a. Nella figura seguente è mostrato il risultato dell'assegnazione "a = b" supponendo che a contenesse inizialmente il numero 12 e b il numero 45: Attenzione! Sarebbe stato diverso scrivere b = a In questo caso il valore di a sarebbe stato copiato in b e il risultato sarebbe stato il seguente: Dunque l'uguale usato nell'assegnazione ha un verso: il valore (sorgente ovvero il contenuto della variabile) che si trova a destra viene copiato nella variabile che si trova a sinistra (destinazione). Espressioni matematiche L'assegnazione permette anche di calcolare il valore di una variabile per mezzo di una espressione matematica. Un esempio semplice è il seguente: a = b + c Il significato è: il valore di b viene sommato al valore di c e il risultato viene memorizzato in a. I simboli usati per scrivere le espressioni matematiche nei linguaggi di programmazione simili a quelli usati in matematica. L'operazione di moltiplicazione, come già detto, viene però indicata con l'asterisco * invece che con il x. Bisogna inoltre prestare attenzione all'uso delle parentesi (sempre e solo le parentesi tonde!) per indicare la precedenza fra le operazioni. Esempio: ris = a + b * 10/(d +e)

10 Assegnazione di una variabile... a se stessa (variabili di accumulo) Un aspetto molto interessante delle variabili è che è possibile assegnare una variabile a se stessa o, più precisamente, usare la stessa variabile a sinistra e a destra di una assegnazione. Si consideri il seguente semplice esempio: num = num + 1 In questo caso la stessa variabile num compare sia a sinistra che a destra del simbolo di assegnazione e dunque è sia la sorgente che la destinazione di una assegnazione. Si presti particolare attenzione al significato di questa scrittura che, tradotta a parole, sarebbe: prendi il valore di num, aggiungi uno a tale valore e rimetti il risultato in num. In pratica se ad es. num valeva 4 prima dell'istruzione precedente, dopo l'istruzione il suo valore è diventato 5. Questa semplice istruzione (che aumenta di uno il valore di una variabile) viene detta incremento (l'istruzione opposta, quella che diminuisce di uno, è detta decremento). Un esempio un po' più complesso di variabile usata sia a destra che a sinistra dell'uguale di assegnazione è il seguente, che potrebbe servire per calcolare l'aumento della somma depositata su un conto corrente con un certo tasso di interesse: somma = somma + tasso * somma In questo caso la stessa variabile compare addirittura tre volte nella stessa espressione! Quando una variabile, come in questi esempi, è sia la sorgente che la destinazione di una assegnazione, si dice che si tratta di una variabile di accumulo. Una variabile di accumulo, come suggerisce il nome, è una variabile nella quale vengono accumulati dei valori. Le variabili di accumulo sono estremamente importanti nei cicli, in quanto consentono la modifica ripetuta di un valore in un ciclo in dipendenza dal valore che aveva in precedenza. A titolo di esempio si consideri di nuovo il programma per il calcolo della moltiplicazione con solo somme. Come è facile notare ci sono ben due variabili di accumulo nel ciclo: A e C.

11 Il simbolo di uguale... non sempre è un'uguaglianza! A scanso di possibili equivoci, prestiamo fin da ora attenzione al fatto che il simbolo di uguale (=) usato nelle assegnazioni, non rappresenta una uguaglianza nel senso matematico. Consideriamo per esempio la seguente assegnazione (incremento): a = a + 1 Matematicamente la precedente espressione non avrebbe senso, dal momento che in nessun caso "a" può essere uguale ad "a+1". Invece, se considerata come assegnazione (e non come uguaglianza), l'espressione precedente ha senso ed è effettivamente utilizzata in molti programmi. Per evitare possibili confusioni, praticamente tutti i linguaggi di programmazione (e di scrittura di algoritmi) distinguono fra due diversi simboli di uguaglianza e precisamente: l'uguale di assegnazione; l'uguale di confronto.

12 Si osservi ad esempio il seguente algoritmo che, se una data variabile vale 5, ne incrementa il valore di uno: Il significato dei due "uguali" è completamente diverso. Il primo infatti è un uguale di confronto, cioè confronta il valore di numero col valore 5 (numero = 5). Tale operazione non modifica il contenuto della variabile numero. Il secondo uguale (numero = numero + 1) è invece un uguale di assegnazione, il quale modifica il valore della variabile numero. E' abbastanza facile imparare a distinguere i due casi poiché l'uguale di confronto si può trovare solo in un blocco di test, mentre l'uguale di assegnazione si trova solo nei blocchi di elaborazione. Spesso nella scrittura dei flow chart si usa il simbolo di uguaglianza (=) solo per i confronti, mentre le assegnazioni vengono indicate con una freccia ( ). Esempio: numero numero + 1. Anche i linguaggi di programmazione distinguono i due simboli in modi differenti. Per esempio il C (e tutti i linguaggi da esso derivati, C++, javascript, java, php etc.) usa l'uguale (=) per le assegnazioni e il doppio uguale per i confronti (==). ESERCIZI Esercizio 1 Fare un algoritmo che dati 2 numeri in input dare in output il max Esercizio 2 Dati in input prezzo e quantità dare in output il totale Esercizio 3 Dato in input 2 numeri e l'operazione dare in output il risultato Esercizio 4 Dato in input 3 valori e dare in output il max Esercizio 5 Dati in input tre numeri riscriverli in ordine crescente. Esercizio 6 Dato in input 2 numeri dare in output la somma

13 Esercizio 7 Dati i numeratori e i denominatori di due frazioni calcolane somma, prodotto e divisione. Esercizio 9 Sul prezzo di un prodotto viene praticato lo sconto del 3% se costa meno di e del 5% se costa di più. Inserito da tastiera il prezzo P, calcolare il prezzo da pagare secondo la regola sopra descritta. Esercizio 10 Richiedere in input la quantità Q e l'importo unitario I di una merce venduta; lo sconto S1 da applicare (percentuale) se la quantità venduta supera le 100 unità; lo sconto S2 da applicare in caso contrario e l'aliquota IVA (percentuale) V. Calcolare e scrivere l'importo da pagare P. Esercizio 11 Sul prezzo di un biglietto di un treno viene applicato un supplemento del 7% se il treno è di tipo "a", del 12% se è di tipo "b" e del 18% se è di tipo "c". Per gli altri treni non c'è supplemento. Calcolare il prezzo totale del biglietto, a seconda del tipo di treno e comunicare il tipo di treno con il prezzo calcolato. Esercizio 12 Dato in input i min, ore e sec dare in output il totale dei secondi Esercizio 13 Dato in input secondi dare in output i min, ore e sec

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Cenni su algoritmi, diagrammi di flusso, strutture di controllo

Cenni su algoritmi, diagrammi di flusso, strutture di controllo Cenni su algoritmi, diagrammi di flusso, strutture di controllo Algoritmo Spesso, nel nostro vivere quotidiano, ci troviamo nella necessità di risolvere problemi. La descrizione della successione di operazioni

Dettagli

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente. Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito

Dettagli

Appunti di Sistemi Elettronici

Appunti di Sistemi Elettronici Prof.ssa Maria Rosa Malizia 1 LA PROGRAMMAZIONE La programmazione costituisce una parte fondamentale dell informatica. Infatti solo attraverso di essa si apprende la logica che ci permette di comunicare

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

SISTEMI DI NUMERAZIONE E CODICI

SISTEMI DI NUMERAZIONE E CODICI SISTEMI DI NUMERAZIONE E CODICI Il Sistema di Numerazione Decimale Il sistema decimale o sistema di numerazione a base dieci usa dieci cifre, dette cifre decimali, da O a 9. Il sistema decimale è un sistema

Dettagli

Algoritmi. Maurizio Palesi. Maurizio Palesi 1

Algoritmi. Maurizio Palesi. Maurizio Palesi 1 Algoritmi Maurizio Palesi Maurizio Palesi 1 Cos è Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Un algoritmo è un metodo per la soluzione

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

Uso di base delle funzioni in Microsoft Excel

Uso di base delle funzioni in Microsoft Excel Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce

Dettagli

Informatica. appunti dalle lezioni del 20/09/2011 e del 27/09/2011

Informatica. appunti dalle lezioni del 20/09/2011 e del 27/09/2011 Informatica appunti dalle lezioni del 20/09/2011 e del 27/09/2011 Definizioni Informatica: scienza per lʼelaborazione automatica dellʼinformazione Informatica = Informazione + Automatica Informazione:

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

Dispense di Informatica per l ITG Valadier

Dispense di Informatica per l ITG Valadier La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di

Dettagli

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

Lezioni di Matematica 1 - I modulo

Lezioni di Matematica 1 - I modulo Lezioni di Matematica 1 - I modulo Luciano Battaia 16 ottobre 2008 Luciano Battaia - http://www.batmath.it Matematica 1 - I modulo. Lezione del 16/10/2008 1 / 13 L introduzione dei numeri reali si può

Dettagli

Richiesta pagina PHP (es: index.php)

Richiesta pagina PHP (es: index.php) PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

Nozione di algoritmo. Gabriella Trucco

Nozione di algoritmo. Gabriella Trucco Nozione di algoritmo Gabriella Trucco Programmazione Attività con cui si predispone l'elaboratore ad eseguire un particolare insieme di azioni su particolari informazioni (dati), allo scopo di risolvere

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

II.f. Altre attività sull euro

II.f. Altre attività sull euro Altre attività sull euro II.f È consigliabile costruire modelli in carta o cartoncino di monete e banconote, e farli usare ai bambini in varie attività di classe fin dal primo o al più dal secondo anno.

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12};

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12}; ESERCIZI 2 LABORATORIO Problema 1 Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12}; Chiede all'utente un numero e, tramite ricerca

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

risulta (x) = 1 se x < 0.

risulta (x) = 1 se x < 0. Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente

Dettagli

Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dal Problema all'algoritmo

Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dal Problema all'algoritmo stituto Tecnico Statale Commerciale Dante Alighieri Cerignola (FG) Dispense di nformatica Anno Scolastico 2008/2009 Classe 3APS Dal Problema all'algoritmo Pr.: 001 Ver.:1.0 Autore: prof. Michele Salvemini

Dettagli

Descrizione di un algoritmo

Descrizione di un algoritmo Descrizione di un algoritmo Un algoritmo descrive due tipi fondamentali di oper: calcoli ottenibili tramite le oper primitive su tipi di dato (valutazione di espressioni) che consistono nella modifica

Dettagli

ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza

ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza ESERCIZI DI PROBLEM SOLVING E COMPOSIZIONE DEI DIAGRAMMI DI FLUSSO per le classi terza vers.3 in lavorazione Docente SAFFI FABIO Contenuti 01.Esercizi generici sul diagramma di flusso - flow chart... 2

Dettagli

Informatica. Rappresentazione dei numeri Numerazione binaria

Informatica. Rappresentazione dei numeri Numerazione binaria Informatica Rappresentazione dei numeri Numerazione binaria Sistemi di numerazione Non posizionali: numerazione romana Posizionali: viene associato un peso a ciascuna posizione all interno della rappresentazione

Dettagli

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione dell esercizio del 2 Febbraio 2004 Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo

Dettagli

Informatica per le discipline umanistiche 2 lezione 14

Informatica per le discipline umanistiche 2 lezione 14 Informatica per le discipline umanistiche 2 lezione 14 Torniamo ai concetti base dellʼinformatica. Abbiamo sinora affrontato diversi problemi: avere unʼidentità online, cercare pagine Web, commentare il

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

ALGEBRA DELLE PROPOSIZIONI

ALGEBRA DELLE PROPOSIZIONI Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra

Dettagli

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento

Dettagli

Esercizi su. Funzioni

Esercizi su. Funzioni Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità

Dettagli

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da Data una funzione reale f di variabile reale x, definita su un sottoinsieme proprio D f di R (con questo voglio dire che il dominio di f è un sottoinsieme di R che non coincide con tutto R), ci si chiede

Dettagli

Capitolo 2. Operazione di limite

Capitolo 2. Operazione di limite Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A

Dettagli

Sistemi Web! per il turismo! - lezione 3 -

Sistemi Web! per il turismo! - lezione 3 - Sistemi Web per il turismo - lezione 3 - I computer sono in grado di eseguire molte operazioni, e di risolvere un gran numero di problemi. E arrivato il momento di delineare esplicitamente il campo di

Dettagli

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI Diagramma di flusso L algoritmo può essere rappresentato in vari modi, grafici o testuali. Uno dei metodi grafici più usati e conosciuti è il cosiddetto diagramma

Dettagli

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE 1/6 MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE Per prima cosa si ringrazia per aver scelto ImmobiPhone e per aver dato fiducia al suo autore. Il presente documento istruisce l'utilizzatore sull'uso del programma

Dettagli

Funzionalità di un Algoritmo

Funzionalità di un Algoritmo ALGORITMI Cosa è un algoritmo Un algoritmo è una sequenza di azioni che consente di pervenire alla soluzione di un problema mediante una sequenza finita di operazioni, completamente e univocamente determinate.

Dettagli

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO SISTEMI DI NUMERAZIONE DECIMALE E BINARIO Il sistema di numerazione decimale (o base dieci) possiede dieci possibili valori (0, 1, 2, 3, 4, 5, 6, 7, 8 o 9) utili a rappresentare i numeri. Le cifre possiedono

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

La selezione binaria

La selezione binaria Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Introduzione L esecuzione di tutte le istruzioni in sequenza può non è sufficiente per

Dettagli

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE LE SUCCESSIONI 1. COS E UNA SUCCESSIONE La sequenza costituisce un esempio di SUCCESSIONE. Ecco un altro esempio di successione: Una successione è dunque una sequenza infinita di numeri reali (ma potrebbe

Dettagli

Come ragiona il computer. Problemi e algoritmi

Come ragiona il computer. Problemi e algoritmi Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Problema Strategia

Dettagli

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p. 3/43 M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p.

Dettagli

DAL DIAGRAMMA AL CODICE

DAL DIAGRAMMA AL CODICE DAL DIAGRAMMA AL CODICE Un diagramma di flusso Appare, come un insieme di blocchi di forme diverse che contengono le istruzioni da eseguire, collegati fra loro da linee orientate che specificano la sequenza

Dettagli

Il sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi.

Il sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi. E. Calabrese: Fondamenti di Informatica Problemi-1 Il sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi. L'informatica

Dettagli

Strutturazione logica dei dati: i file

Strutturazione logica dei dati: i file Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer

Dettagli

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico Processo di risoluzione di un problema ingegneristico 1. Capire l essenza del problema. 2. Raccogliere le informazioni disponibili. Alcune potrebbero essere disponibili in un secondo momento. 3. Determinare

Dettagli

CALCOLO COMBINATORIO

CALCOLO COMBINATORIO CALCOLO COMBINATORIO 1 Modi di formare gruppi di k oggetti presi da n dati 11 disposizioni semplici, permutazioni Dati n oggetti distinti a 1,, a n si chiamano disposizioni semplici di questi oggetti,

Dettagli

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 3 - Variabili Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

LABORATORIO DI PROGRAMMAZIONE 2012 2013 EDIZIONE 1, TURNO B

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

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

(Esercizi Tratti da Temi d esame degli ordinamenti precedenti)

(Esercizi Tratti da Temi d esame degli ordinamenti precedenti) (Esercizi Tratti da Temi d esame degli ordinamenti precedenti) Esercizio 1 L'agenzia viaggi GV - Grandi Viaggi vi commissiona l'implementazione della funzione AssegnaVolo. Tale funzione riceve due liste

Dettagli

REVISIONE-CORREZIONE. La Revisione è un momento molto importante nel processo della produzione scritta.

REVISIONE-CORREZIONE. La Revisione è un momento molto importante nel processo della produzione scritta. REVISIONE-CORREZIONE La Revisione è un momento molto importante nel processo della produzione scritta. Il termine viene dato ai ragazzi verso la quarta, ma in realtà dovrebbe essere considerata parte integrante

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

LA NOTAZIONE SCIENTIFICA

LA NOTAZIONE SCIENTIFICA LA NOTAZIONE SCIENTIFICA Definizioni Ricordiamo, a proposito delle potenze del, che = =.000 =.000.000.000.000 ovvero n è uguale ad seguito da n zeri. Nel caso di potenze con esponente negativo ricordiamo

Dettagli

ESEMPIO 1: eseguire il complemento a 10 di 765

ESEMPIO 1: eseguire il complemento a 10 di 765 COMPLEMENTO A 10 DI UN NUMERO DECIMALE Sia dato un numero N 10 in base 10 di n cifre. Il complemento a 10 di tale numero (N ) si ottiene sottraendo il numero stesso a 10 n. ESEMPIO 1: eseguire il complemento

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

Dettagli

LA MOLTIPLICAZIONE IN CLASSE SECONDA

LA MOLTIPLICAZIONE IN CLASSE SECONDA LA MOLTIPLICAZIONE IN CLASSE SECONDA Rossana Nencini, 2013 Le fasi del lavoro: 1. Proponiamo ai bambini una situazione reale di moltiplicazione: portiamo a scuola una scatola di biscotti (. ) e diamo la

Dettagli

2. Leggi finanziarie di capitalizzazione

2. Leggi finanziarie di capitalizzazione 2. Leggi finanziarie di capitalizzazione Si chiama legge finanziaria di capitalizzazione una funzione atta a definire il montante M(t accumulato al tempo generico t da un capitale C: M(t = F(C, t C t M

Dettagli

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Rappresentazione di numeri Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Un numero e un entità teorica,

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Perchè studiare l informatica? Perchè ha a che fare con quasi tutto quello con cui abbiamo a che fare ogni giorno Perché è uno strumento fondamentale per progettare l innovazione

Dettagli

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento

Dettagli

Funzioni funzione dominio codominio legge argomento variabile indipendente variabile dipendente

Funzioni funzione dominio codominio legge argomento variabile indipendente variabile dipendente Funzioni In matematica, una funzione f da X in Y consiste in: 1. un insieme X detto dominio di f 2. un insieme Y detto codominio di f 3. una legge che ad ogni elemento x in X associa uno ed un solo elemento

Dettagli

Domande a scelta multipla 1

Domande a scelta multipla 1 Domande a scelta multipla Domande a scelta multipla 1 Rispondete alle domande seguenti, scegliendo tra le alternative proposte. Cercate di consultare i suggerimenti solo in caso di difficoltà. Dopo l elenco

Dettagli

Algebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.

Algebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa. Algebra booleana Nel lavoro di programmazione capita spesso di dover ricorrere ai principi della logica degli enunciati e occorre conoscere i concetti di base dell algebra delle proposizioni. L algebra

Dettagli

Gestione della memoria centrale

Gestione della memoria centrale Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti

Dettagli

Basi di matematica per il corso di micro

Basi di matematica per il corso di micro Basi di matematica per il corso di micro Microeconomia (anno accademico 2006-2007) Lezione del 21 Marzo 2007 Marianna Belloc 1 Le funzioni 1.1 Definizione Una funzione è una regola che descrive una relazione

Dettagli

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Logaritmi ed esponenziali

Logaritmi ed esponenziali Logaritmi ed esponenziali definizioni, proprietà ITIS Feltrinelli anno scolastico 2007-2008 A cosa servono i logaritmi I logaritmi rendono possibile trasformare prodotti in somme, quozienti in differenze,

Dettagli

http://www.programmiamo.altervista.org/c/oop/o...

http://www.programmiamo.altervista.org/c/oop/o... PROGRAMMIAMO Programma per la gestione di un conto corrente C++ - Costruttore e distruttore C++ Home Contatti Supponiamo ora di voler scrivere un programma a menu per la gestione di un conto corrente bancario.

Dettagli

Utilizzo delle formule in Excel

Utilizzo delle formule in Excel Utilizzo delle formule in Excel Excel è dotato di un potente motore di calcolo che può essere utilizzato per elaborare i dati immessi dagli utenti. I calcoli sono definiti mediante formule. Ogni formula

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Università Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Il concetto di Dare/Avere

Il concetto di Dare/Avere NISABA SOLUTION Il concetto di Dare/Avere Comprendere i fondamenti delle registrazioni in Partita Doppia Sara Mazza Edizione 2012 Sommario Introduzione... 3 Il Bilancio d Esercizio... 4 Stato Patrimoniale...

Dettagli

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag.

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag. Gentile Cliente, benvenuto nel Portale on-line dell Elettrica. Attraverso il nostro Portale potrà: consultare la disponibilità dei prodotti nei nostri magazzini, fare ordini, consultare i suoi prezzi personalizzati,

Dettagli

10 - Programmare con gli Array

10 - Programmare con gli Array 10 - Programmare con gli Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Tecnologie informatiche ACCESSO REMOTO CON WINDOWS Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Un esempio di tale servizio

Dettagli

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS CONTENUTI: CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS Creazione database vuoto Creazione tabella Inserimento dati A) Creazione di un database vuoto Avviamo il programma Microsoft Access. Dal menu

Dettagli

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA Tutti gli anni, affrontando l argomento della divisibilità, trovavo utile far lavorare gli alunni sul Crivello di Eratostene. Presentavo ai ragazzi una

Dettagli

Esempio: dest = parolagigante, lettere = PROVA dest (dopo l'invocazione di tipo pari ) = pprrlogvgante

Esempio: dest = parolagigante, lettere = PROVA dest (dopo l'invocazione di tipo pari ) = pprrlogvgante Esercizio 0 Scambio lettere Scrivere la funzione void scambiolettere(char *dest, char *lettere, int p_o_d) che modifichi la stringa destinazione (dest), sostituendone i caratteri pari o dispari (a seconda

Dettagli

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria).

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Aprile 20 Indice Serie numeriche. Serie convergenti, divergenti, indeterminate.....................

Dettagli

L espressione torna invece sempre vera (quindi la soluzione originale) se cambiamo contemporaneamente il verso: 1 < 0.

L espressione torna invece sempre vera (quindi la soluzione originale) se cambiamo contemporaneamente il verso: 1 < 0. EQUAZIONI E DISEQUAZIONI Le uguaglianze fra espressioni numeriche si chiamano equazioni. Cercare le soluzioni dell equazione vuol dire cercare quelle combinazioni delle lettere che vi compaiono che la

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE NOME: COGNOME: ============================================================== Esercizio 1 ci sono tante "righe"; non è detto servano tutte...

Dettagli

SISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE

SISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE SISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE La base del sistema decimale è 10 I simboli del sistema decimale sono: 0 1 2 3 4 5 6 7 8 9 Il sistema di numerazione decimale è un sistema posizionale. L aggettivo

Dettagli

RISOLUTORE AUTOMATICO PER SUDOKU

RISOLUTORE AUTOMATICO PER SUDOKU RISOLUTORE AUTOMATICO PER SUDOKU Progetto Prolog - Pierluigi Tresoldi 609618 INDICE 1.STORIA DEL SUDOKU 2.REGOLE DEL GIOCO 3.PROGRAMMAZIONE CON VINCOLI 4.COMANDI DEL PROGRAMMA 5.ESEMPI 1. STORIA DEL SUDOKU

Dettagli

Alessandro Pellegrini

Alessandro Pellegrini Esercitazione sulle Rappresentazioni Numeriche Esistono 1 tipi di persone al mondo: quelli che conoscono il codice binario e quelli che non lo conoscono Alessandro Pellegrini Cosa studiare prima Conversione

Dettagli