Sommario. Linguaggi per la rappresentazione di algoritmi. Linguaggi formali. Sintassi e semantica: esempio. Linguaggio naturale: sintassi
|
|
- Giacinto Conti
- 7 anni fa
- Visualizzazioni
Transcript
1 Sommario Linguaggi per la rappresentazione di algoritmi Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura A.A. 2009/2010! Linguaggi formali per la rappresentazione di algoritmi! Linguaggi di programmazione: linguaggio macchina e linguaggi di alto livello! Uno pseudo-linguaggio per la rappresentazione di algoritmi: sintassi e semantica! Testi di riferimento " Sciuto et al., Introduzione ai sistemi informatici " Ceri et al., Informatica: arte e mestiere 2 Linguaggi formali Sintassi e semantica: esempio! In riferimento a un dato esecutore, un linguaggio per la rappresentazione di algoritmi deve essere non ambiguo! Questa caratteristica è propria dei linguaggi formali, la cui sintassi e semantica sono rigorosamente definite " sintassi: regole per definire le frasi corrette del linguaggio, cioè le frasi alle quali sia possibile attribuire un significato " semantica: regole che definiscono il significato delle frasi corrette 3 Linguaggio naturale: sintassi " il cielo è azzurro, chi non studia non supera l'esame sono frasi sintatticamente corrette in italiano " cielo il azzurro è, casa gatto giocare, anvy efyw jryc sono frasi sintatticamente non corrette Semantica " definisce il significato di frasi come il cielo è azzurro, chi non studia non supera l'esame Tuttavia il linguaggio naturale non è formale, poiché è ambiguo: il significato di una frase può dipendere dal contesto (es.: qual è il significato di una vecchia porta la sbarra?) La sua sintassi e semantica sono troppo complesse per poter essere descritte in modo preciso e completo 4
2 Esempio di linguaggio formale Il linguaggio della matematica Calcolatori, linguaggio macchina e programmi! I linguaggi per la rappresentazione di algoritmi devono essere formali! L esecutore di interesse nell informatica è il calcolatore. Operazioni eseguibili: " semplici operazioni logico-aritmetiche su sequenze di bit (somma, confronto, ecc.: ALU) " trasferimento dati tra CUP e memoria o periferiche! Per poter essere eseguiti da un calcolatore, gli algoritmi " devono essere espressi in un linguaggio formale come sequenze di istruzioni corrispondenti a tali operazioni " devono essere codificati in forma binaria! Il linguaggio corrispondente è detto linguaggio macchina! Algoritmi espressi in un linguaggio comprensibile da un calcolatore sono detti programmi 5 6 I linguaggi di alto livello! Per un essere umano è difficile scrivere e leggere programmi in linguaggio macchina " le operazioni eseguibili sono troppo elementari: gli algoritmi devono essere espressi a un livello di dettaglio molto alto... "...e codificati in forma binaria! Gli algoritmi devono essere formulati da esseri umani, che usano con facilità il linguaggio naturale......ma devono essere espressi in linguaggio macchina per essere comprensibili dai calcolatori! Un compromesso: linguaggi di alto livello per la rappresentazione di algoritmi Caratteristiche dei linguaggi di alto livello Sono più vicini al linguaggio naturale... " consentono di esprimere operazioni più complesse rispetto al linguaggio macchina, e più vicine a quelle usate dagli esseri umani: gli algoritmi vengono espressi a un livello di dettaglio inferiore " esprimono le istruzioni con parole del linguaggio naturale, non codificate in forma binaria...ma non sono comprensibili da un calcolatore... Sono però linguaggi formali, quindi possono essere tradotti in modo esatto in linguaggio macchina La stessa operazione di traduzione può essere descritta da un algoritmo, e quindi può essere eseguita automaticamente dagli stessi calcolatori! 7 8
3 Tipologie di linguaggi di alto livello Si distinguono principalmente per i tipi di algoritmi (calcoli numerici, elaborazione di dati simbolici, ecc.) e le strutture dati (vettori, liste, ecc.) che consentono di esprimere con maggiore semplicità Si parla di paradigmi di programmazione procedurali: modifica esplicita del contenuto delle celle di memoria, istruzioni di salto, ecc. funzionali: applicazione di funzioni (in senso matematico) ad argomenti dichiarativi: si esprime cosa si vuole ottenere, non come ottenerlo orientati agli oggetti: i dati sono visti come oggetti caratterizzati dall'insieme di operazioni che possono essere svolte su di essi Alcuni dei principali linguaggi di alto livello! FORTRAN (imperativo): applicazioni scientifiche, calcoli numerici! Lisp (funzionale): elaborazione simbolica, applicazioni di Intelligenza Artificiale! COBOL (imperativo): gestione dati! Pascal (imperativo): usato prevalentemente per scopi didattici! C (imperativo), C++ (orientato agli oggetti): programmi di sistema, applicazioni scientifiche, calcoli numerici! Java (orientato agli oggetti): applicazioni Internet (siti Web dinamici, ecc.) e per dispositivi mobili (telefoni cellulari, ecc.) 9 10 Linguaggi interpretati e compilati Linguaggi compilati (C, C++, Java, ecc.) Per poter essere eseguito, un programma deve prima essere interamente tradotto in linguaggio macchina. La traduzione viene eseguita da un programma apposito detto compilatore. Nota: il compilatore è lo stesso per tutti i programmi! Linguaggi interpretati e compilati Linguaggi interpretati (BASIC, Lisp, ecc.) sono interattivi: ogni singola istruzione scritta dall'utente viene subito tradotta in linguaggio macchina da un programma detto interprete, ed eseguita linguaggio di alto livello linguaggio macchina Compilatore Esecuzione istruzione 1 Interprete Esecuzione istruzione 2 Interprete Esecuzione Programma scritto in un linguaggio di alto livello (codice sorgente) Programma scritto in linguaggio macchina (codice oggetto) istruzione 3 Interprete Esecuzione
4 Ambienti di programmazione! Ogni linguaggio ha in genere un proprio ambiente di programmazione: un insieme di strumenti software che facilitano agli utenti le attività di sviluppo dei programmi " scrittura del programma: editor di testi " compilatore o traduttore " individuazione e correzione degli errori: debugger " librerie: insiemi di programmi che codificano algoritmi di utilità generale (funzioni matematiche, ecc.), e che possono essere inclusi nei programmi degli utenti Pseudo-linguaggi! Sono linguaggi per la descrizione di algoritmi simili a quelli di alto livello, ma non formalizzati rigorosamente, e ancora più vicini al linguaggio naturale! Sono basati sulle principali strutture sintattiche e semantiche comuni alla maggior parte dei linguaggi di alto livello! Sono usati per facilitare la formulazione di algoritmi: consentono di esprimerne le idee fondamentali senza vincolarsi ai dettagli di specifici linguaggi! Non sono linguaggi di programmazione (non possono essere usati per scrivere programmi) Obiettivo del corso Un modello astratto di esecutore! Fornire le basi per apprendere in futuro, anche autonomamente, un qualsiasi linguaggio di programmazione! Per questo scopo, useremo uno pseudo-linguaggio che consentirà di imparare a esprimere algoritmi usando le principali strutture semantiche comuni alla maggior parte dei linguaggi di programmazione, senza entrare nei dettagli di linguaggi specifici! Lo pseudo-linguaggio che useremo è derivato dal linguaggio C, uno dei più diffusi linguaggi di alto livello 15! Definiremo il nostro pseudo-linguaggio in rapporto a un esecutore meccanico astratto : un calcolatore semplificato basato sull architettura di Von Neumann! Il nostro esecutore sarà composto da " una memoria suddivisa in celle, ciascuna delle quali può contenere un singolo dato, di tre tipi diversi: un numero intero, un numero reale, un carattere è identificata da un nome simbolico (non da un indirizzo numerico) che deve essere scelto da chi scrive l'algoritmo " una perferica di ingresso e una di uscita (per es., una tastiera e un monitor) " un'unità di elaborazione in grado di eseguire semplici operazioni logico-aritmetiche, modificare i valori delle celle di memoria, e inviare o ricevere dati dalle periferiche 16
5 Un modello astratto di esecutore Quali operazioni sa eseguire il nostro esecutore? Il nostro esecutore è in grado di eseguire solo cinque operazioni: unità di elaborazione x a alfa... periferica di ingresso periferica di uscita 1) operazione di assegnamento 2) operazione di lettura 3) operazione di scrittura 4) esecuzione condizionale 5) iterazione nomi simbolici delle celle di memoria (scelti da chi scrive un algoritmo)... memoria Quali operazioni sa eseguire il nostro esecutore? Quali operazioni sa eseguire il nostro esecutore? 1) Operazione di assegnamento Consiste nella scrittura di un valore in una cella di memoria Il valore da assegnare può essere: " un numero " un carattere " il valore contenuto in un'altra cella di memoria " il risultato (un numero) di una qualsiasi espressione aritmetica costruita con cinque operatori (somma, sottrazione, moltiplicazione, divisione, resto della divisione tra interi), in cui gli operandi possono essere valori contenuti in celle di memoria Nota: scrivendo in una cella si cancella un eventuale valore scritto in precedenza 19 Operazioni di lettura e scrittura 2) Lettura: consiste nell'acquisire ( leggere ) un valore (un numero o un carattere) dalla periferica di ingresso, e scriverlo in una cella di memoria 3) Scrittura: consiste nell'inviare alla periferica di uscita ( stampare ) un numero, un carattere, una sequenza di caratteri, il contenuto di una cella di memoria o il risultato di un'espressione aritmetica (definita come per l'operazione di assegnamento) Nota:! tutti i dati di ingresso di un algoritmo devono essere acquisiti e memorizzati in celle di memoria attraverso operazioni di lettura! tutti i risultati di un algoritmo devono essere inviati all'esterno del calcolatore attraverso operazioni di scrittura 20
6 Quali operazioni sa eseguire il nostro esecutore? 4) Esecuzione condizionale: consiste nell'eseguire una data sequenza di operazioni oppure un'altra, a seconda del verificarsi o meno di una condizione 5) Iterazione: consiste nel ripetere una data sequenza di operazioni, finché una data condizione è vera In entrambi i casi la condizione è definita come: " condizione semplice: confronto tra due valori (numeri o caratteri, il contenuto di celle di memoria, il risultato di espressioni aritmetiche definite come in precedenza) " condizione composta: più condizioni semplici combinate dalle congiunzioni e, oppure, non " operatori di confronto: uguale diverso minore, minore o uguale, maggiore, maggiore o uguale (nel caso in cui i valori da confrontare siano caratteri, si fa riferimento all'ordinamento alfabetico) 21 Abbiamo definito quali operazioni possono essere eseguite dall'esecutore Ora vediamo esempi di algoritmi descritti usando queste operazioni In questi esempi useremo il linguaggio naturale: il nostro pseudo-linguaggio sarà descritto più avanti Nota: in questi esempi le celle di memoria verranno indicate con simboli scritti in neretto Per seguire cosa succede durante l'esecuzione dell'algoritmo è utile tenere traccia del valore memorizzato istante per istante nelle celle di memoria 22 Esempio Leggi un valore e scrivilo nella cella x Leggi un valore e scrivilo nella cella y Se il contenuto della cella x è maggiore del contenuto della cella y, allora stampa il valore della cella x, altrimenti stampa il valore della cella y Questo algoritmo è composto da tre operazioni: due di lettura e una condizionale (che contiene al suo interno due istruzioni di scrittura). Nell'algoritmo si usano due celle di memoria indicate con i nomi simbolici x e y Le prime due istruzioni chiedono all'esecutore di acquisire dalla periferica di ingresso due valori (si assume che si tratti di numeri) e di scriverli nelle celle x e y La terza fa sì che venga scritto nella periferica di uscita il più grande tra i due valori memorizzati nelle celle x e y 23 Esempio Assegna 0 alla cella a Leggi un valore e scrivilo nella cella b Finché il contenuto di b è diverso da 0, ripeti le due istruzioni: Assegna alla cella a il risultato di a + b Leggi un valore e scrivilo nella cella b Stampa il valore di a Questo algoritmo acquisisce dalla periferica di ingresso una sequenza di valori (si assume che siano numeri) che termina con il valore 0, ne calcola la somma e la invia alla periferica di uscita Note: " è presente un'iterazione (Finché...) che richiede di ripetere due istruzioni finché una condizione è vera; l'istruzione di scrittura successiva viene eseguita solo quando l'iterazione termina " ogni volta che viene eseguita l'istruzione di lettura, il valore letto viene memorizzato nella stessa cella (b), sostituendo il valore memorizzato in precedenza 24
7 Sintassi e semantica dello pseudo-linguaggio Ora definiamo la sintassi e la semantica del nostro pseudo-linguaggio: " sintassi: le regole per scrivere le istruzioni corrispondenti alle cinque operazioni eseguibili dall'esecutore " semantica: il significato delle istruzioni, cioè il modo in cui devono essere eseguite dall'esecutore (di fatto l'abbiamo già definita nella descrizione delle operazioni eseguibili) Associamo un'istruzione a ciascuna delle cinque operazioni eseguibili dall'esecutore: 1) istruzione di assegnamento 2) istruzione di lettura 3) istruzione di scrittura 4) istruzione condizionale 5) istruzione iterativa Note I nomi delle celle di memoria usati nei linguaggi di programmazione sono anche detti variabili, poiché il loro valore può essere modificato durante l esecuzione di un algoritmo dalle istruzioni di assegnamento e di lettura I nomi delle variabili devono essere scelti da chi formula l algoritmo (con la convenzione che uno stesso nome si riferirà sempre alla stessa cella) Non è necessario specificare a quale cella fisica corrisponda una data variabile: questo aspetto è interamente gestito dal compilatore o dall'interprete del linguaggio Istruzione di assegnamento Sintassi variabile # espressione espressione può essere: " un numero, scritto come parte intera e parte frazionaria separate da una virgola (esempi: 3, -5, 3,14,...) " un carattere, scritto tra apici per evitare ambiguità con i nomi delle variabili (esempi: 'a', 'W', '5',...) " il contenuto di un'altra cella di memoria, indicata con il suo nome " il risultato (un numero) di una qualsiasi espressione aritmetica costruita con i cinque operatori di somma (+), sottrazione ($), moltiplicazione (*), divisione (/), resto della divisione tra interi (mod); gli operandi possono essere valori contenuti in celle di memoria, indicate con il loro nome Istruzione di assegnamento Semantica prima deve essere calcolato il valore di espressione poi tale valore deve essere memorizzato nella cella di memoria variabile Nota: il valore da memorizzare sostituisce un eventuale valore memorizzato in precedenza nella stessa variabile 27 28
8 Istruzione di assegnamento: esempi! m # 12 assegna il valore 12 alla variabile m! media # (x + y) / 2 assegna a media la somma dei valori contenuti (nel momento in cui questa istruzione viene eseguita) nelle variabili x e y, divisa per 2! r # 5 mod 2 assegna a r il resto della divisione intera tra 5 e 2! n # n + 1 prima calcola la somma tra il valore contenuto in n e 1, poi assegna il risultato a n (il valore precedente di n viene sostituito dal nuovo valore)! a # 1 / ((x + y) * (m n))! c # F Istruzioni di lettura e scrittura Sintassi e semantica " read (variabile) acquisisce un valore dalla periferica di ingresso e lo memorizza nella cella variabile " print (espressione) invia il valore di espressione alla periferica di uscita espressione può essere: un espressione definita come per l istruzione di assegnamento una sequenza di caratteri indicata tra doppi apici (es. ciao ) Esempi Istruzione condizionale! read (m) acquisisce un valore dalla periferica di ingresso e lo assegna alla variabile m! print (5) invia il valore 5 alla periferica di uscita! print ( w ) invia il carattere w alla periferica di uscita! print ( ciao ) invia la sequenza di caratteri ciao alla periferica di uscita! print (x) invia alla periferica di uscita il valore contenuto nella variabile x! print ((x+2)*z) invia alla periferica di uscita il valore dell espressione (x+2)*z, calcolata in funzione dei valori contenuti nelle variabili x e z al momento dell esecuzione di questa istruzione 31 Sintassi if (condizione) { sequenza di istruzioni } oppure if (condizione) { sequenza di istruzioni 1 } else { sequenza di istruzioni 2 } " condizione è una espressione logica che può essere vera o falsa; le condizioni possono essere elementari o composte condizione elementare: confronto tra i valori di due espressioni definite come per l istruzione di assegnamento, per mezzo degli operatori =, %, <,!, ", > (se le espressioni sono caratteri alfabetici, entrambi minuscoli o maiuscoli, gli operatori si riferiscono all ordinamento alfabetico) condizione composta: combinazione di più condizioni elementari per mezzo degli operatori logici and, or e not " sequenza di istruzioni è una sequenza di una o più istruzioni qualsiasi 32
9 Istruzione condizionale Esempi di espressioni logiche Semantica: " if (condizione) { sequenza di istruzioni } se condizione è vera esegui la sequenza di istruzioni, altrimenti non eseguire nessuna operazione " if (condizione) { sequenza di istruzioni 1 } else { sequenza di istruzioni 2 } se condizione è vera esegui la sequenza di istruzioni 1, altrimenti esegui la sequenza di istruzioni 2 Condizioni elementari x = 3 è vera se il valore memorizzato nella variabile x è 3 a " b è vera se il valore memorizzato nella variabile a è maggiore di quello memorizzato nella variabile b (x + 2) * z < y è vera se il valore dell espressione (x+2)*z è maggiore del valore di y b > g è vera se il carattere memorizzato in b segue g in ordine alfabetico Condizioni composte (c 1 and c 2 ) è vera se sia c 1 che c 2 sono vere (c 1 or c 2 ) è vera se almeno una tra c 1 e c 2 è vera (not c) è vera se c è falsa Nota: c 1, c 2 e c possono essere sia condizioni elementari che composte Esempi: (x = 1) and (y > 0) (a = 1) or ((b + 2) * c > 0) not (c = v ) ((x = 1) or (y > 0)) and (z = 0) Esempi Istruzione iterativa! if (x = 0) { y # 1 } se il valore contenuto in x è 0, allora assegna a y il valore 1! if ((x = 1) and (y > 0)) { m # 1 n # 3 } se il valore contenuto in x è 1 e quello contenuto in y è maggiore di 0, allora assegna a m il valore 1, e a n il valore 3! if (z > 0) { y # 1 } else { y # 0 } se il valore contenuto in z è maggiore di 0, assegna a y il valore 1, altrimenti assegna a y il valore 0! Sintassi while (condizione) do { sequenza di istruzioni } condizione e sequenza di istruzioni sono definite come per l istruzione condizionale! Semantica se condizione è falsa, non eseguire nessuna operazione; se invece è vera, esegui la sequenza di istruzioni e alla fine valuta di nuovo condizione; se condizione è falsa,... questo ciclo viene quindi ripetuto finché condizione è vera 35 36
10 Esempi Osservazioni! while (x > 0) do { print (x) x # x 1 } finché il valore di x è maggiore di 0: stampalo, calcola il valore dell'espressione x 1, e memorizza il risultato in x (si ricordi che il valore precedente di x viene sostituito da quello nuovo). Si assume che alla variabile x sia già stato assegnato un valore! while (y % z) do { y # z x x # x * 3 } finché il valore di y è diverso da quello di z: memorizza in y il valore di z x, poi memorizza in x il valore di x*3 (si assume che alle variabili y e z sia già stato assegnato un valore) 37! Qual è il potere espressivo del linguaggio di rappresentazione di algoritmi appena descritto? In altre parole: quali sono gli algoritmi che possono essere rappresentati usando questo linguaggio, e quelli che non possono essere rappresentati?! È stato dimostrato (teorema di Boehm-Jacopini) che un linguaggio dotato delle strutture semantiche corrispondenti alle istruzioni condizionale e iterativa consente di rappresentare qualsiasi algoritmo Per questo motivo queste due istruzioni sono comuni alla maggior parte dei linguaggi di alto livello 38 Rappresentazione ed esecuzione di algoritmi Dichiarazione delle variabili! Nel notro pseudo-linguaggio (analogamente a tutti i linguaggi di programmazione) gli algoritmi saranno rappresentati come una sequenza ordinata di istruzioni, che saranno eseguite nell ordine in cui sono elencate! Tutti i dati di ingresso devono essere acquisiti dalla periferica di ingresso e memorizzati in variabili per poter essere successivamente elaborati! Il risultato desiderato si ottiene manipolando i dati iniziali per mezzo delle istruzioni disponibili, memorizzando gli eventuali risultati intermedi in opportune variabili (spesso è necessario eseguire un'operazione sui risultati di altre operazioni)! Tutti i risultati devono essere inviati alla periferica di uscita! Nota: l esecuzione di un algoritmo è un processo dinamico, il cui stato è caratterizzato in ogni istante dal valore di ciascuna variabile e dalla prossima istruzione da eseguire 39! Per chiarezza, prima di riportare le istruzioni di un algoritmo si indicheranno in modo informale: " i nomi di tutte le variabili usate nell algoritmo " il tipo di dati che esse conterranno (numeri interi, numeri reali o caratteri), con la convenzione che una variabile conterrà dati di un unico tipo durante l'esecuzione dell'algoritmo (come accade in molti linguaggi di programmazione reali)! Nota: nella maggior parte dei linguaggi di programmazione il nome e il tipo di tutte le variabili usate devono essere formalmente dichiarati all inizio del programma 40
11 Esempi di algoritmi Esempio! Come esempio, mostriamo di seguito la traduzione nello pseudolinguaggio appena definito degli algoritmi scritti in precedenza in linguaggio naturale (per chiarezza, si scriveranno in neretto i nomi simbolici usati per indicare le istruzioni e gli operatori logicoaritmetici: if, else, while-do, print, read, and, or, not, mod)! Lo scopo di questi esempi è illustrare l uso delle diverse istruzioni e il meccanismo di esecuzione degli algoritmi. A questo scopo si dovranno eseguire le istruzioni di ciascun algoritmo, con i seguenti accorgimenti: " i valori da acquisire per mezzo delle istruzioni di lettura (read) potranno essere scelti liberamente (nella realtà tali valori vengono forniti al calcolatore, per esempio da un utente per mezzo della tastiera) " per poter eseguire gli algoritmi è utile tener traccia (per esempio, per mezzo di una tabella) dei valori memorizzati istante per istante nelle celle di memoria In linguaggio naturale: Leggi un valore e scrivilo nella cella x Leggi un valore e scrivilo nella cella y Se il contenuto della cella x è maggiore del contenuto della cella y, allora stampa il valore della cella x, altrimenti stampa il valore della cella y Nello pseudo-linguaggio: variabili: x, y, z memorizzano numeri reali read (x) read (y) if (x > y) then { print (x) } else { print (y) } print (z) Esempio Assegna 0 alla cella a Leggi un valore e scrivilo nella cella b Finché il contenuto di b è diverso da 0, ripeti le due istruzioni: Assegna alla cella a il risultato di a + b Leggi un valore e scrivilo nella cella b Stampa il valore di a variabili: a e b memorizzano numeri reali a # 0 read (b) while (b % 0) do { a # a + b read (b) } print (a) 43
Linguaggi, Traduttori e le Basi della Programmazione
Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario Il Linguaggio I Linguaggi di Linguaggi
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione E una notazione con cui e possibile descrivere gli algoritmi. Programma: e la rappresentazione di un algoritmo in un particolare linguaggio di programmazione. In generale, ogni
DettagliRappresentazione 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
DettagliIl linguaggio di programmazione Python
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)
DettagliDAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione
DAGLI ALGORITMI AI LINGUAGGI Linguaggi di Programmazione E` una notazione con cui e` possibile descrivere gli algoritmi. Programma: e` la rappresentazione di un algoritmo in un particolare linguaggio di
DettagliLINGUAGGI DI ALTO LIVELLO
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada
DettagliLezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
DettagliC++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI
Linguaggi di alto livello Barriera di astrazione C Fortran Cobol Modula-2 Basic Pascal Algol Ada Lisp Smalltalk Simula67 Scheme C++ Prolog ML AN - 1995 Linguaggi di alto livello IMPERATIVI C Fortran Modula-2
DettagliCosa si intende con stato
Il concetto di stato Cosa si intende con stato I una particolare configurazione delle informazioni di una macchina, che in qualche modo memorizza le condizioni in cui si trova, e che cambia nel tempo passando
DettagliElementi di programmazione
Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Elementi di programmazione Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università
DettagliLez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1
Lez. 8 La Programmazione Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1 Dott. Pasquale De Michele Dott. Raffaele Farina Dipartimento di Matematica e Applicazioni Università di Napoli
DettagliFONDAMENTI DI INFORMATICA
Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia talia@deis.unical.it A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica
DettagliProblema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la
DettagliElementi di programmazione
Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Elementi di programmazione Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università
DettagliLez. 5 La Programmazione. Prof. Salvatore CUOMO
Lez. 5 La Programmazione Prof. Salvatore CUOMO 1 2 Programma di utilità: Bootstrap All accensione dell elaboratore (Bootsrap), parte l esecuzione del BIOS (Basic Input Output System), un programma residente
DettagliLinguaggi di programmazione
Linguaggi di programmazione Fondamenti di Informatica Daniele Loiacono Ho definito un algoritmo e adesso? Daniele Loiacono Dall algoritmo all esecuzione q Come deve essere formalizzato un algoritmo affinché
DettagliPROBLEMI ALGORITMI E PROGRAMMAZIONE
PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL
DettagliPROBLEMI E ALGORITMI VESPIA CATERINA LICEO CLASSICO AGLI ANGELI
PROBLEMI E ALGORITMI prof.ssa VESPIA CATERINA LICEO CLASSICO AGLI ANGELI C O N T E N U T I Problemi. Concetto di algoritmo. Caratteristiche di un algoritmo. Descrizione di algoritmi - Diagrammi di flusso.
DettagliIntroduzione agli Algoritmi
Introduzione agli Algoritmi Informatica Sara Zuppiroli A.A. 2012-2013 Informatica () Introduzione agli Algoritmi A.A. 2012-2013 1 / 25 Risoluzione dei problemi Dalla descrizione del problema all individuazione
DettagliProgrammazione C Massimo Callisto De Donato
Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE
DettagliLinguaggi di alto livello, compilatori e interpreti
Linguaggi di alto livello, compilatori e interpreti Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Il punto della situazione STATO DATI
DettagliDal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Dal Problema all Algoritmo Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Cosa Impareremo Informazioni e codici Definizione e soluzione di un problema Individuazione dei dati Definizione
DettagliLINGUAGGI DI PROGRAMMAZIONE E CODIFICA PROGRAMMI
LINGUAGGI DI PROGRAMMAZIONE E CODIFICA PROGRAMMI Giacomo Piscitelli pag. 1/10 Dall Algoritmo al Programma Metodo risolutivo problema algoritmo Linguaggio programma Individuazione di un metodo risolutivo
DettagliI Linguaggi di Programmazione
I Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche del Linguaggio
DettagliLINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware 1 LINGUAGGI DI ALTO LIVELLO Barriera di astrazione Fortran Cobol Basic Pascal Python C
DettagliLINGUAGGI DI ALTO LIVELLO
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware 1 LINGUAGGI DI ALTO LIVELLO Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic
DettagliDescrizione delle operazioni di calcolo. Espressioni costanti semplici
Descrizione delle operazioni di calcolo Come abbiamo detto l interprete è in grado di generare nuovi valori a partire da valori precedentemente acquisiti o generati. Il linguaggio di programmazione permette
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
DettagliSviluppo di programmi
Sviluppo di programmi Per la costruzione di un programma conviene: 1. condurre un analisi del problema da risolvere 2. elaborare un algoritmo della soluzione rappresentato in un linguaggio adatto alla
DettagliFONDAMENTI DI INFORMATICA
Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia talia@deis.unical.it A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica
DettagliAlgoritmi, Strutture Dati e Programmi. UD 1.d: Dati e Tipi di Dato
Algoritmi, Strutture Dati e Programmi : Dati e Tipi di Dato Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Dati: Variabili e Costanti Un algoritmo (e il programma che ne è rappresentazione)
DettagliAlgoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21
DettagliIl linguaggio macchina
Università degli Studi di Palermo Facoltà di Ingegneria Il linguaggio macchina Edoardo Ardizzone & Ignazio Infantino Appunti per il corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Informatica
DettagliAlgoritmi e basi del C
Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 3 O/obre 2013 Installation Party Dove: L.06 Quando: Sabato 12 Ottobre 9.00am - 12.00pm 2 WAT Il docente ha messo
DettagliIntroduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software
Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell
DettagliProgrammazione strutturata
Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Gestionale (L-Z) 3. (testo di riferimento: Bellini-Guidi) Ing. Michele Ruta 1di 29 Linguaggi di programmazione Un programma è un algoritmo
DettagliAlgoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal
Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi
DettagliProgrammazione con il linguaggio LibreOffice Basic
Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software
DettagliLinguaggi di programmazione
Linguaggi di programmazione Programmazione L attività con cui si predispone l elaboratore ad eseguire un particolare insieme di azioni su particolari dati, allo scopo di risolvere un problema Dati Input
DettagliFondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
DettagliALGORITMI: PROPRIETÀ FONDAMENTALI
ALGORITMI: PROPRIETÀ FONDAMENTALI Non si può risolvere un problema senza prima fissare un insieme di azioni, i di mosse elementari possibili per l'esecutore. Bisogna conoscerne le caratteristiche, le mosse
DettagliIL TEOREMA DI BOEHM-JACOPINI
IL TEOREMA DI BOEHM-JACOPINI Un qualunque algoritmo può essere descritto unicamente attraverso le tre strutture: Sequenza Diramazione Ciclo o iterazione Le tre strutture sono complete. Un qualunque linguaggio
Dettaglila traduzione dei programmi ed introduzione a Java
la traduzione dei programmi ed introduzione a Java programmi descrizioni di algoritmi effettuate tramite linguaggi di programmazione lo stesso algoritmo, fissato un linguaggio di programmazione, può essere
DettagliTeoria dell Informazione
Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Teoria dell Informazione Cosa è l informazione L informazione è qualcosa che si possiede e si può dare ad un altro
DettagliIntroduzione alla programmazione strutturata
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Prof. ELIO TOPPANO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio
DettagliIntroduzione alla programmazione. Walter Didimo
Introduzione alla programmazione Walter Didimo Programmi Un programma è una frase (anche molto lunga) che descrive delle azioni che devono essere svolte da un calcolatore La frase deve essere dettagliata
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche del Linguaggio
DettagliDal problema a un programma comprensibile dal calcolatore. Il Progetto degli Algoritmi. Dall analisi del problema all esecuzione
Il Progetto degli Algoritmi Fondamenti di Informatica A Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Dal problema a un programma comprensibile dal calcolatore
DettagliInformatica Generale Andrea Corradini Gli algoritmi e la risoluzione di problemi
Informatica Generale Andrea Corradini 12 - Gli algoritmi e la risoluzione di problemi Sommario Che significa risolvere un problema? Algoritmi e programmi Rappresentazione di algoritmi Lo pseudocodice Primitive
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione Linguaggi di Programmazione Programmazione. Insieme delle attività e tecniche svolte per creare un programma (codice sorgente) da far eseguire ad un computer. Che lingua comprende
DettagliIntroduzione al funzionamento di un calcolatore elettronico
1 / 21 Introduzione al funzionamento di un calcolatore elettronico Natascia Piroso 23 settembre 2009 2 / 21 Sommario Che cos è un calcolatore? 1 Che cos è un calcolatore? Definizioni preliminari Il calcolatore
DettagliInformatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
DettagliELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)
1 LEZIONE 9 ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE) Laboratorio di Informatica per l Educazione A. A. 2014/2015 IN SINTESI (ELABORAZIONE) Con i COMPUTER, le macchine diventano
DettagliCos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia
Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione
DettagliUnità Didattica 2 I Linguaggi di Programmazione
Unità Didattica 2 I Linguaggi di Programmazione 1 Linguaggio naturale e linguaggio macchina La comunicazione uomo-macchina avviene attraverso formalismi che assumono la forma di un linguaggio. Caratteristiche
DettagliLinguaggi di programmazione
Parte 2 Linguaggi di programmazione Livello di Astrazione per la Codifica di un Algoritmo Si può risolvere un problema senza prima fissare un insieme di azioni, di mosse elementari possibili per l elaboratore?
DettagliAlgoritmi, linguaggi e programmi. Emilio Di Giacomo e Walter Didimo
Algoritmi, linguaggi e programmi Emilio Di Giacomo e Walter Didimo Problemi e algoritmi Il calcolatore permette di risolvere in maniera automatica diversi problemi "di calcolo". Es: calcolo della media
DettagliAlgoritmi, linguaggi e programmi. Emilio Di Giacomo e Walter Didimo
Algoritmi, linguaggi e programmi Emilio Di Giacomo e Walter Didimo Risolvere i problemi Il calcolatore permette di risolvere molti problemi, ma sfortunatamente non tutti Il concetto di algoritmo consente
DettagliDESCRIZIONI RIGOROSE c7
DESCRIZIONI RIGOROSE c7 Es. cucinare la pasta asciutta per una famiglia La descrizione rigorosa della strategia risolutiva prevede Analisi del problema (con chiara individuazione degli obiettivi e dei
DettagliEvoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN
LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna
DettagliFoglio Elettronico Lezione 1
- Introduzione - Celle e riferimenti - Formule - Approfondimenti - Funzioni logiche Sommario Introduzione - Foglio elettronico o foglio di calcolo - Cos'è? Strumento per raccogliere dati organizzati in
DettagliLinguaggi di programmazione e astrazione
Linguaggi di programmazione e astrazione i linguaggi di programmazione ad alto livello moderni sono il più potente strumento di astrazione messo a disposizione dei programmatori che possono, con un solo
DettagliIl Concetto Intuitivo di Calcolatore. Esercizio. I Problemi e la loro Soluzione. (esempio)
Il Concetto Intuitivo di Calcolatore Elementi di Informatica e Programmazione Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini Variabile di uscita Classe di domande
DettagliLaboratorio di Programmazione
Laboratorio di Programmazione Laurea in Bioinformatica Docente: Carlo Drioli Web: www.scienze.univr.it/fol/main?ent=oi&id=39990 Programmazione: Dati Strutture di controllo Algoritmi Materiale tratto dai
DettagliCORSO DI ELEMENTI DI INFORMATICA
CORSO DI ELEMENTI DI INFORMATICA Corso di Laurea Triennale in Ingegneria Gestionale della Logistica e della Produzione Area didattica Ingegneria Elettrica a.a. 2016/2017 Docente: Ing. Domenico Amalfitano
DettagliCONCETTI FONDAMENTALI
CONCETTI FONDAMENTALI Algoritmo Procedura di trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante una sequenza di istruzioni. Linguaggio di programmazione Programma
DettagliFondamenti di Algoritmi
Fondamenti di Algoritmi Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Indice Algoritmi: Definizione Diagrammi di Flusso Esempi ed esercizi
DettagliAlgoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema
Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina
DettagliTEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE
TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso
DettagliPROGRAMMAZIONE STRUTTURATA
PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:
DettagliCorso di Informatica di Base
Corso di Informatica di Base A.A. 2011/2012 Algoritmi e diagrammi di flusso Luca Tornatore Cos è l informatica? Calcolatore: esecutore di ordini o automa Programma: insieme di istruzioni che possono essere
DettagliINFORMATICA. L informatica comprende:
Varie definizioni: INFORMATICA Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Definizione proposta: Scienza della rappresentazione e dell elaborazione dell informazione
DettagliRAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO
RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento
DettagliScrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica
FODAMETI DI IFORMATICA Prof. PIER LUCA MOTESSORO Prof. ELIO TOPPAO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio Toppano
DettagliConcetti di base dell ICT
Informatica Linguaggio di programmazione Computer Bit Algoritmo Linguaggio macchina Informatica: Informazione automatica Gli anglosassoni usano il termine Computer Science = Scienza dei Calcolatori Computer:
DettagliOrganizzazione strutturata
Organizzazione strutturata Evoluzione storica a.a. 2002-03 L. Borrelli 1 Complessità dei Sistemi di Elaborazione Caratteristica dei Sistemi di Elaborazione: Complessità Per trattare sistemi complessi è
DettagliDall algoritmo al calcolatore: concetti introduttivi. Fondamenti di Programmazione
Dall algoritmo al calcolatore: concetti introduttivi Fondamenti di Programmazione Algoritmo Problema o compito Preparazione di una torta Programmazione del VCR MCD tra due numeri Algoritmo sequenza precisa
DettagliSalvatore Cuomo Prolusione
Salvatore Cuomo Prolusione 1 Lezione n. Parole chiave: Algoritmo, Esecutore Corso di Laurea: Informatica Insegnamento: Programmazione II, modulo di Laboratorio Email Docente: salvatore.cuomo@unina. it
DettagliLe basi del linguaggio Java
Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una
Dettagliin termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico
Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Cosa è un calcolatore? Hardware Processore Memoria Periferiche Funzionamento Esegue istruzioni elementari Esegue istruzioni molto velocemente Deve essere programmato Il
DettagliRappresentazione con i diagrammi di flusso (Flow - chart)
Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo
DettagliIstruzioni, algoritmi, linguaggi
Istruzioni, algoritmi, linguaggi 1 Algoritmo per il calcolo delle radici reali di un equazione di 2 o grado Data l equazione ax 2 +bx+c=0, quali sono i valori di x per cui l equazione è soddisfatta? 2
DettagliCorso di Linguaggi di Programmazione + Laboratorio
Corso di inguaggi di Programmazione + aboratorio Capitolo 1 - Introduzione Si ringrazia il Dott. Marco de Gemmis per la collaborazione nella predisposizione del materiale didattico Apprendimento di un
DettagliCorso di Fondamenti di Informatica Linguaggi di Programmazione
Corso di Fondamenti di Informatica Linguaggi di Programmazione Anno Accademico Francesco Tortorella Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di
DettagliFondamenti di Informatica T-1
Fondamenti di Informatica T-1 Introduzione al linguaggio Java - Input/Output, Variabili, Tipi Tutor: Allegra De Filippo allegra.defilippo@unibo.it a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De
DettagliInformatica Generale Andrea Corradini I linguaggi di programmazione
Informatica Generale Andrea Corradini 17 - I linguaggi di programmazione Sommario Cos'è un linguaggio di programmazione? Una prospettiva storica: linguaggi di prima, seconda e terza generazione I paradigmi
DettagliUNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Introduzione alla programmazione
UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA Introduzione alla programmazione Riferimenti Emanuele Goldoni Laboratorio Reti (MN) Tel. 0376-286234 E-mail: emanuele.goldoni@unipv.it Slide sul sito
DettagliElaborazione dell informazione
Elaborazione dell informazione Primo esempio Ricominciamo dai numeri (45 + 25) è definita rigorosamente Un primo calcolatore (a) Figura 1.1 Configurazione del pallottoliere (a) prima e (b) dopo l esecuzione
DettagliUniversità degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso
Obiettivi Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura
DettagliSTRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER
1 STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER Un computer e una macchina che riceve in ingresso delle informazioni, le elabora secondo un determinato procedimento e produce dei risultati che vengono
DettagliVBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.
Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?
DettagliL ELABORATORE ELETTRONICO
L ELABORATORE ELETTRONICO Il calcolatore elettronico è uno strumento in grado di eseguire insiemi di azioni ( mosse ) elementari le azioni vengono eseguite su oggetti (dati) per produrre altri oggetti
Dettagli3. Indicare cosa sta a significare la figura geometrica del rombo in un diagramma a blocchi
0.1.1.1 Definire un algoritmo 1. Con il termine algoritmo si intende: a) il software utilizzato in un calcolatore b) l elenco finito di istruzioni necessario per risolvere un problema c) un elaboratore
DettagliCaratteristiche 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
DettagliRisolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da:
Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da: http://it.wikipedia.org/wiki/al-khwarizmi Un
Dettagli