Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica"

Transcript

1 Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Linguaggi di Programmazione Michele Tomaiuolo

2 Linguaggi macchina I linguaggi macchina forniscono solo le operazioni che l'elaboratore può eseguire: Operazioni molto elementari Diverse per ogni processore Scritte in linguaggio binario Sono più orientati alla macchina che ai problemi da trattare 2

3 Linguaggi assemblativi Una prima evoluzione sono i linguaggi assemblativi che sostituiscono i codici binari con codici simbolici START: MOV AX, BX CMP AX, 12h JZ EQUAL INT 21h RET EQUAL: MOV BL, 82h I linguaggi macchina e i linguaggi assemblativi sono detti linguaggi a basso livello 3

4 Linguaggi ad alto livello I cosiddetti linguaggi ad alto livello sono stati introdotti per facilitare la scrittura dei programmi Sono linguaggi simbolici e in continua evoluzione Sono definiti da un insieme di regole formali, le regole grammaticali o sintassi Questi linguaggi di programmazione permettono: La descrizione del problema in modo intuitivo, dimenticandosi che verranno eseguiti da un calcolatore Una astrazione rispetto al calcolatore su cui verrà eseguito il programma Ma devono essere tradotti in linguaggio macchina 4

5 Storia dei linguaggi Inizi Sistema OOP Internet Assembly Linguaggio macchina ALGOL COBOL LISP BASIC FORTRAN Prolog Simula C Pascal Smalltalk C++ ADA.NET PHP Javascript Java

6 Sintassi e semantica Le regole di sintassi definiscono come si devono comporre i simboli e le parole per formare delle istruzioni corrette La semantica di un istruzione definisce il significato della stessa Un programma sintatticamente corretto non è necessariamente semanticamente corretto I programmi fanno quello che prescriviamo che facciano e non quello che vorremmo che facessero 6

7 Sintassi e semantica Programma sintatticamente corretto Soddisfa le regole sintattiche Cioè, è una sequenza di parole o simboli appartenenti alle giuste categorie sintattiche Programma semanticamente corretto Soddisfa le regole semantiche Dice se il programma ha senso, se sarà possibile eseguirlo Ad esempio, la frase Il cane gioca in borsa è sintatticamente corretta, ma non semanticamente 7

8 Semantica Correttezza semantica (typing) Quali tipi di dato possono essere elaborati? Quali operatori applicabili ad ogni dato? Quali regole per definire nuovi operatori? Effetto dell esecuzione (semantica operazionale) Quale è il singolo effetto di ogni azione elementare? Quale è l effetto dell aggregazione delle azioni? Cioè quale è l effetto dell esecuzione di un certo programma? 8

9 Paradgmi di programmazione Forniscono la filosofia con cui si scrivono i programmi e stabiliscono: La metodologia con cui si scrivono i programmi Il concetto di computazione I linguaggi devono consentire ma soprattutto spingere all adozione di un particolare paradigma: Imperativo Logico Funzionale Orientato agli oggetti 9

10 Imperativi Fortran Cobol C Pascal Visual Basic Funzionali Lisp ML Linguaggi di programmazione Logici Prolog Orientati agli Oggetti C++ Java C# Smalltalk Eiffel 10

11 Esempi di programma Calcolo fattoriale Il fattoriale del numero intero positivo n è il prodotto dei primi n numeri interi positivi Il fattoriale viene rappresentato con la forma n! Gestione liste Una lista è una delle strutture dati consistente in una sequenza di nodi che contengono Campi di dati arbitrari Uno o due riferimenti che puntano al nodo successivo e/o precedente Operazioni possibili sulle liste sono aggiunta, rimozione, ordinamento ecc. di nodi 11

12 Linguaggi imperativi Un linguaggio imperativo è legato all architettura della macchina di Von Neumann, ma ad un livello di astrazione vicino a quello dei diagrammi di flusso La principale attività del processore è assegnare valori a celle di memoria Le operazioni che effettuano le istruzioni di un linguaggio imperativo si basano sul concetto di variabile Astrazione del concetto di locazione di memoria 12

13 Linguaggi imperativi I linguaggi imperativi adottano uno stile prescrittivo Il programma imperativo prescrive le operazioni che il processore deve compiere L esecuzione delle istruzioni è nell'ordine in cui appaiono nel programma L ordine può essere alterato dalle strutture di controllo realizzate dal processore con le istruzioni di salto 13

14 Programma imperativo La struttura del programma consiste principalmente in due parti: Una parte di dichiarazione in cui si dichiarano tutte le variabili del programma ed il loro tipo Una parte di istruzioni che realizzano l'algoritmo risolutivo del problema I tipi di istruzioni corrispondono proprio ai tipi di istruzioni possedute dai processori Istruzioni di lettura e scrittura Istruzione di assegnamento Istruzioni aritmetiche e logiche Istruzioni di controllo 14

15 main( ) { printf( %d, fattoriale(n)); } int fattoriale(int n) { int fatt = 1; for (int i = 1; i <= n; i++) { fatt = fatt * i; } return fatt; } cc fattoriale.c fattoriale 3 6 Fattoriale 15

16 Gestione liste struct lista { int val; lista *next; } main( ) { } int aggiungi(int n, lista l) { } cc gestiscilista.c gestiscilista Scegli l operazione: int rimuovi(int indice, lista l) { } 16

17 Pregi e difetti + Ottima efficienza + Adatti a programmi numerici e gestionali - Scarsa naturalezza, leggibilità e flessibilità - Difficile programmazione incrementale - Non adatti per la manipolazione simbolica - Le funzioni e le variabili non sono funzioni e variabili matematiche - Poco adatti per applicare metodi formali di correttezza e di verifica di programmi - Difficile manipolazione dinamica di programmi 17

18 Linguaggi funzionali In un linguaggio funzionale un programma è visto come una funzione matematica Una funzione è una regola di corrispondenza che associa ad ogni elemento del suo dominio un unico elemento nel codominio Una definizione di funzione specifica il dominio, il codominio e la regola di associazione Dopo la definizione una funzione può essere applicata ad un elemento del dominio per restituire l'elemento associato nel codominio 18

19 Linguaggi funzionali La sola operazione del modello funzionale è l applicazione di funzioni ad operandi Il ruolo della macchina funzionale (interprete) è valutare il programma e produrre un valore Il valore di una funzione è determinato solo dai suoi argomenti Non ci sono effetti collaterali (funzionale puro) L'essenza della programmazione funzionale è combinare funzioni Basato sull utilizzo della ricorsione Le variabili sono variabili matematiche che denotano un valore fisso nel tempo e non valori mutabili Non c è nessun assegnamento 19

20 Fattoriale (defun fattoriale(n) ) (if (= n 0) ) 1 (* n (fattoriale (- n 1))) (fattoriale 3) 6 20

21 Gestione liste (car (list 1 2 3)) 1 (cdr (list 1 2 3)) (2 3) (cons 4 (list 1 2 3)) ( ) 21

22 Pregi e difetti + Adatti per la manipolazione simbolica e per i problemi naturalmente ricorsivi + Le funzioni e le variabili sono funzioni e variabili matematiche + Adatti per applicare metodi formali di correttezza e di verifica di programmi + Facile manipolazione dinamica di programmi + Adatti per applicazioni di Intelligenza Artificiale e programmazione esplorativa + Buona naturalezza - Bassa efficienza - Non adatti per la manipolazione numerica - Difficile programmazione procedurale - Scarsa leggibilità e flessibilità - Non facilitano la programmazione incrementale 22

23 Linguaggi logici In un linguaggio logico un programma è composto da una base di conoscenza contenente: Una descrizione del problema basata su formule logiche (fatti, predicati, ) Un insieme di regole per manipolare la descrizione del problema Con un linguaggio logico programmare significa: Descrivere il problema con delle formule del linguaggio Interrogare il sistema (motore inferenziale) per effettuare delle inferenze 23

24 Linguaggi logici L esecuzione di un programma corrisponde all applicazione delle regole alla descrizione del problema L esecuzione è attivata da una interrogazione dell utente Lo scopo dell esecuzione è Verificare se la descrizione del problema soddisfa l interrogazione Recuperare i valori della descrizione del problema che soddisfano l interrogazione Rispetto alle normali computazioni, il calcolo logico ha le caratteristiche del cosiddetto non-determinismo: Può terminare con insuccesso Può concludersi con più di un caso di successo 24

25 Fattoriale fattoriale(0, 1) :-!. fattoriale(n, X) :- N > 0, M is N - 1, fattoriale(m, Y), X is Y * N. fattoriale(3, X) X = 6 25

26 Gestione liste aggungi([], X, X). aggiungi([[x1 X2], Y, [X1 Z]) :- aggiungi(x2, Y, Z). aggiungi([1], [1, 2], W) W = [1, 1, 2] 26

27 Pregi e difetti + Adatti per la manipolazione simbolica e per i problemi naturalmente ricorsivi + Adatti per applicare metodi formali di correttezza e di verifica di programmi + Facile manipolazione dinamica di programmi + Adatti per applicazioni di Intelligenza Artificiale + Buona naturalezza - Bassa efficienza - Non adatti per la manipolazione numerica - Scarsa leggibilità e flessibilità - Difficile programmazione procedurale - Non facilitano la programmazione incrementale 27

28 Linguaggi orientati agli oggetti I linguaggi orientati agli oggetti si sono evoluti a partire dal concetto di astrazione di dato introdotto in alcuni linguaggi imperativi Con un linguaggio orientato agli oggetti si cerca di rappresentare un problema descrivendo ogni entità partecipante con un oggetto nella forma e nel comportamento La definizione di un oggetto è basata su tecniche di Incapsulamento dei dati Ereditarietà Astrazione Polimorfismo 28

29 Linguaggi orientati agli oggetti Incapsulamento dei dati I dettagli di definizione degli oggetti sono nascosti Solo le operazioni (metodi) permesse su di loro sono visibili Ereditarietà Gli oggetti sono definiti in una gerarchia Ereditano dall immediato parente dati e metodi Aggiungono dati e metodi e specializzano quelli ereditati Astrazione Il meccanismo con cui si specifica le caratteristiche peculiari di un oggetto che lo differenzia da altri Polimorfismo Possibilità di eseguire funzioni con lo stesso nome su tipi di dati differenti 29

30 Linguaggi orientati agli oggetti In un linguaggio di programmazione orientato agli oggetti (OOP) un programma consiste: Definizione di un insieme di classi Creazione di un insieme di istanze di queste classi ed esecuzione dei loro metodi Una classe definisce un tipo di oggetto come insieme di: Variabili (campi) Funzioni (metodi) 30

31 class Fattoriale { int valore; int fattoriale(int n) { int fatt = 1; for (int i = 1; i <= n; i++) fatt = fatt * i; return fatt; } void main(string[] args) { System.out.println(fattoriale(n)); } } Fattoriale javac fattoriale.java java fattoriale

32 class Lista { } int val; Lista next; Lista aggiungi(int val) { } Lista rimuovi(int indice) { } Gestione liste javac GestisciListe.java java GestisciListe import Lista; Class GestisciListe { Vector<Lista> liste; void main(string[] args) { } } 32

33 Pregi e difetti + Ottima flessibilità e programmazione incrementale + Ottimo riuso del software + Buona efficienza + Adatti per programmi numerici e gestionali + Abbastanza adatti per la manipolazione simbolica + Discreta naturalezza e leggibilità e flessibilità - Poco adatti per applicare metodi formali di correttezza e di verifica di programmi - Difficile manipolazione dinamica di programmi 33

34 Paradigmi di programmazione Imperativo Programma = Algoritmo + Dati Logico Programma = Logica + Controllo Funzionale Programma = Funzione Orientato agli Oggetti Programma = Oggetti 34

35 Perchè più paradigmi e linguaggi? Efficienza Rapida prototipazione Facile comprensione del linguaggio (leggibilità) Modificabilità e riusabilità Programmazione in largo Qualità del programma 35

36 Programmazione multi paradigma Rispetto alla varietà dei problemi e delle applicazioni concrete ogni paradigma presenta propri vantaggi e svantaggi Per risolvere il problema si cerca di aggiungere a un linguaggio, appartenente ad un particolare paradigma di programmazione, caratteristiche proprie di un altro paradigma A volte lo stesso scopo viene raggiunto aggiungendo particolari librerie Un'altra soluzione, spesso adottata, è quella di interfacciarsi con altri linguaggi 36

37 Ciclo di vita del software Lo sviluppo del software è un attività dinamica soggetta a continue variazioni e modifiche Si parla di manutenzione del software per indicare l attività che prevede la correzione ed il miglioramento di un programma e della sua documentazione Il software, per questo motivo, è soggetto ad una evoluzione nota con il nome di ciclo di vita che può essere riassunta nello schema seguente 37

38 Ciclo di vita del software Fase 1 Analisi dei requisiti Intervista con il cliente per la messa a punto delle specifiche. Descrizione dell input e dell output mediante variabili semplici e strutturate Fase 2 Progetto Stesura dell algoritmo, rappresentato mediante pseudo codice, e controllo della sua funzionalità Fase 3 Implementazione Codifica dell algoritmo in un linguaggio di programmazione dipendente dal tipo di problema 38

39 Ciclo di vita del software Fase 4 Collaudo e validazione Procedura di prova e verifica del programma realizzato attraverso l esecuzione con dati campione e l utilizzo di utenti Fase 5 Redazione della documentazione Procedura di stesura del manuale d uso Fase 6 Rilascio del prodotto Diffusione del software prodotto e della sua documentazione per la relativa commercializzazione Fase 7 Manutenzione Attività di correzione e modifica necessarie per un migliore utilizzo o funzionamento 39

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

Introduzione alla Programmazione ad Oggetti in C++

Introduzione alla Programmazione ad Oggetti in C++ Introduzione alla Programmazione ad Oggetti in C++ Lezione 1 Cosa è la Programmazione Orientata agli Oggetti Metodologia per costruire prodotti software di grosse dimensioni che siano affidabili e facilmente

Dettagli

Corso di Programmazione ad Oggetti

Corso di Programmazione ad Oggetti Corso di Programmazione ad Oggetti Introduzione alla programmazione ad oggetti a.a. 2008/2009 Claudio De Stefano 1 La programmazione modulare Un programma può essere visto come un insieme di moduli che

Dettagli

Programmazione Funzionale

Programmazione Funzionale Programmazione Funzionale LP imperativi: apparenza simile modello di progettazione = macchina fisica Famiglia dei LP imperativi = progressivo miglioramento del FORTRAN Obiezione: pesante aderenza dei LP

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

Elementi di semantica denotazionale ed operazionale

Elementi di semantica denotazionale ed operazionale Elementi di semantica denotazionale ed operazionale 1 Contenuti! sintassi astratta e domini sintattici " un frammento di linguaggio imperativo! semantica denotazionale " domini semantici: valori e stato

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Unified Process Prof. Agostino Poggi Unified Process Unified Software Development Process (USDP), comunemente chiamato

Dettagli

Informatica. Scopo della lezione

Informatica. Scopo della lezione 1 Informatica per laurea diarea non informatica LEZIONE 1 - Cos è l informatica 2 Scopo della lezione Introdurre le nozioni base della materia Definire le differenze tra hardware e software Individuare

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

Ricapitoliamo. Ricapitoliamo

Ricapitoliamo. Ricapitoliamo Ricapitoliamo Finora ci siamo concentrati sui processi computazionali e sul ruolo che giocano le procedure nella progettazione dei programmi In particolare, abbiamo visto: Come usare dati primitivi (numeri)

Dettagli

AA 2006-07 LA RICORSIONE

AA 2006-07 LA RICORSIONE PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella

Dettagli

PROGRAMMAZIONE ORIENTATA AGLI OGGETTI in C++

PROGRAMMAZIONE ORIENTATA AGLI OGGETTI in C++ PROGRAMMAZIONE ORIENTATA AGLI OGGETTI in C++ Classi ed oggetti. Classi derivate, ereditarietà e polimorfismo. Template Capitoli 12, 13, 14 Luis Joyannes Aguilar. Fondamenti di Programmazione in C++. Algoritmi,

Dettagli

Classi ed Oggetti in JAVA

Classi ed Oggetti in JAVA Classi ed Oggetti in JAVA Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it www.dii.unisi.it/~rigutini/

Dettagli

Semantica operazionale dei linguaggi di Programmazione

Semantica operazionale dei linguaggi di Programmazione Semantica operazionale dei linguaggi di Programmazione Oggetti sintattici e oggetti semantici Rosario Culmone, Luca Tesei Lucidi tratti dalla dispensa Elementi di Semantica Operazionale R. Barbuti, P.

Dettagli

Funzioni. Corso di Fondamenti di Informatica

Funzioni. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Funzioni Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e dei

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

Fondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main

Fondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main Fondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main Paolo Torroni Dipartimento di Elettronica, Informatica e Sistemistica Università degli

Dettagli

Il ciclo di vita del software

Il ciclo di vita del software Il ciclo di vita del software Il ciclo di vita del software Definisce un modello per il software, dalla sua concezione iniziale fino al suo sviluppo completo, al suo rilascio, alla sua successiva evoluzione,

Dettagli

Oggetti Lezione 3. aspetti generali e definizione di classi I

Oggetti Lezione 3. aspetti generali e definizione di classi I Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione

Dettagli

Gestione dei File in C

Gestione dei File in C Gestione dei File in C Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario In questo documento saranno introdotte

Dettagli

FUNZIONI. La libreria standard del C fornisce una ricca collezione di funzioni, come le funzioni:

FUNZIONI. La libreria standard del C fornisce una ricca collezione di funzioni, come le funzioni: FUNZIONI La libreria standard del C fornisce una ricca collezione di funzioni, come le funzioni: double sqrt(double) double pow (double, double) della libreria matematica, che abbiamo già usato anche senza

Dettagli

Scuola Specializzazione Istruzione Superiore. Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti

Scuola Specializzazione Istruzione Superiore. Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti Scuola Specializzazione Istruzione Superiore Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti Michele Batocchi ITC Vittorio Emanuele II Perugia A.S. 2007/2008 Introduzione

Dettagli

ALLEGATO al verbale della riunione del 3 Settembre 2010, del Dipartimento di Elettrotecnica e Automazione.

ALLEGATO al verbale della riunione del 3 Settembre 2010, del Dipartimento di Elettrotecnica e Automazione. ALLEGATO al verbale della riunione del 3 Settembre 2010, del Dipartimento di Elettrotecnica e Automazione. COMPETENZE MINIME- INDIRIZZO : ELETTROTECNICA ED AUTOMAZIONE 1) CORSO ORDINARIO Disciplina: ELETTROTECNICA

Dettagli

RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di

RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di esempio CERCA 90 NEL SACCHETTO = estrai num Casi num 90 Effetti CERCA 90 NEL

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

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

Linguaggi. Claudio Sacerdoti Coen 11/04/2011. 18: Semantica della logica del prim ordine. Universitá di Bologna

Linguaggi. Claudio Sacerdoti Coen 11/04/2011. 18: Semantica della logica del prim ordine. <sacerdot@cs.unibo.it> Universitá di Bologna Linguaggi 18: Semantica della logica del prim ordine Universitá di Bologna 11/04/2011 Outline Semantica della logica del prim ordine 1 Semantica della logica del prim ordine Semantica

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

Programmazione Java: Variabili membro, Metodi La parola chiave final

Programmazione Java: Variabili membro, Metodi La parola chiave final Programmazione Java: Variabili membro, Metodi La parola chiave final romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap Definire una classe» Variabili membro» Metodi La parola chiave

Dettagli

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 08/03/07 Nota Questi lucidi sono tratti

Dettagli

CALCOLO DEL MASSIMO COMUN DIVISORE

CALCOLO DEL MASSIMO COMUN DIVISORE CALCOLO DEL MASSIMO COMUN DIVISORE Problema: "calcolare il Massimo Comun Divisore (M.C.D.) di due numeri naturali, A e B, secondo l'algoritmo cosiddetto delle sottrazioni successive". L'algoritmo "delle

Dettagli

Tipologie di pianificatori. Pianificazione. Partial Order Planning. E compiti diversi. Pianificazione gerarchica. Approcci integrati

Tipologie di pianificatori. Pianificazione. Partial Order Planning. E compiti diversi. Pianificazione gerarchica. Approcci integrati Tipologie di pianificatori Pianificazione Intelligenza Artificiale e Agenti II modulo Pianificazione a ordinamento parziale (POP) (HTN) pianificazione logica (SatPlan) Pianificazione come ricerca su grafi

Dettagli

Ambienti di sviluppo integrato

Ambienti di sviluppo integrato Ambienti di sviluppo integrato Un ambiente di sviluppo integrato (IDE - Integrated Development Environment) è un ambiente software che assiste i programmatori nello sviluppo di programmi Esso è normalmente

Dettagli

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

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Verifica che una grammatica sia Context Free nel GrammaReader

Verifica che una grammatica sia Context Free nel GrammaReader Verifica che una grammatica sia Context Free nel GrammaReader Sommario Dispensa di Linguaggi di Programmazione Corrado Mencar Pasquale Lops In questa dispensa si descrivono alcune soluzioni per verificare

Dettagli

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it UML: Class Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Class Diagram Forniscono una vista strutturale

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

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

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

UML Component and Deployment diagram

UML Component and Deployment diagram UML Component and Deployment diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania I diagrammi UML Classificazione

Dettagli

CONOSCIAMO GLI ALGORITMI E I LINGUAGGI

CONOSCIAMO GLI ALGORITMI E I LINGUAGGI Dal problema al programma UNITÀ DIDATTICA 1 CONOSCIAMO GLI ALGORITMI E I LINGUAGGI IN QUESTA UNITÀ IMPAREREMO... che cos è un problema e come affrontarlo che cosa sono un algoritmo e un programma che cosa

Dettagli

Matlab: Funzioni. Informatica B. Daniele Loiacono

Matlab: Funzioni. Informatica B. Daniele Loiacono Matlab: Funzioni Informatica B Funzioni A cosa servono le funzioni? 3 x = input('inserisci x: '); fx=1 for i=1:x fx = fx*x if (fx>220) y = input('inserisci y: '); fy=1 for i=1:y fy = fy*y A cosa servono

Dettagli

Compilare il primo programma. Primo programma in C. Esercizio Somma due numeri. Compilare il primo programma. Analisi. Analisi

Compilare il primo programma. Primo programma in C. Esercizio Somma due numeri. Compilare il primo programma. Analisi. Analisi Primo in C Un semplice L ambiente di sviluppo Dev-C++ Codifica del Compilazione e correzione errori Esecuzione e verifica 2 Esercizio Somma due numeri Si realizzi un in linguaggio C che acquisisca da tastiera

Dettagli

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1) Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi

Dettagli

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table Universita' di Ferrara Dipartimento di Matematica e Informatica Algoritmi e Strutture Dati Rappresentazione concreta di insiemi e Hash table Copyright 2006-2015 by Claudio Salati. Lez. 9a 1 Rappresentazione

Dettagli

Ricorsione. Corso di Fondamenti di Informatica

Ricorsione. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Ricorsione Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e

Dettagli

Prolog: aritmetica e ricorsione

Prolog: aritmetica e ricorsione Capitolo 13 Prolog: aritmetica e ricorsione Slide: Aritmetica e ricorsione 13.1 Operatori aritmetici In logica non vi è alcun meccanismo per la valutazione di funzioni, che è fondamentale in un linguaggio

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Indicizzazione terza parte e modello booleano

Indicizzazione terza parte e modello booleano Reperimento dell informazione (IR) - aa 2014-2015 Indicizzazione terza parte e modello booleano Gruppo di ricerca su Sistemi di Gestione delle Informazioni (IMS) Dipartimento di Ingegneria dell Informazione

Dettagli

MIPS Instruction Set 2

MIPS Instruction Set 2 Laboratorio di Architettura 15 aprile 2011 1 Architettura Mips 2 Chiamata a Funzione 3 Esercitazione Registri MIPS reference card: http://refcards.com/docs/waetzigj/mips/mipsref.pdf 32 registri general

Dettagli

Cos è una stringa (1) Stringhe. Leggere e scrivere stringhe (1) Cos è una stringa (2) DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247

Cos è una stringa (1) Stringhe. Leggere e scrivere stringhe (1) Cos è una stringa (2) DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247 Cos è una stringa (1) Stringhe DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247 Una stringa è una serie di caratteri trattati come una singola unità. Essa potrà includere lettere, cifre, simboli e caratteri

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA in termini generali: Dati in input un insieme S di elementi (numeri, caratteri, stringhe, ) e un elemento

Dettagli

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java Riassunto Rassegna API - 1 Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 17 3 maggio 2015! Programmazione

Dettagli

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del GLI ASSI CULTURALI Nota rimessa all autonomia didattica del docente e alla programmazione collegiale del La normativa italiana dal 2007 13 L Asse dei linguaggi un adeguato utilizzo delle tecnologie dell

Dettagli

Cos è l Ingegneria del Software?

Cos è l Ingegneria del Software? Cos è l Ingegneria del Software? Corpus di metodologie e tecniche per la produzione di sistemi software. L ingegneria del software è la disciplina tecnologica e gestionale che riguarda la produzione sistematica

Dettagli

Sottoprogrammi: astrazione procedurale

Sottoprogrammi: astrazione procedurale Sottoprogrammi: astrazione procedurale Incapsulamento di un segmento di programma presente = false; j = 0; while ( (j

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

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

Pila.h versione 6. class Pila { private: int marker; int * contenuto; public:

Pila.h versione 6. class Pila { private: int marker; int * contenuto; public: 1 Pila.h versione 6 struct Pila { private: int size; int defaultgrowthsize; int marker; int * contenuto; void cresci(int increment); public: Pila(int initialsize) ; Pila(); ~Pila() ; void copy(pila * to)

Dettagli

Logica del primo ordine

Logica del primo ordine Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A7_4 V1.3 Logica del primo ordine Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio

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

Appunti di Logica Matematica

Appunti di Logica Matematica Appunti di Logica Matematica Francesco Bottacin 1 Logica Proposizionale Una proposizione è un affermazione che esprime un valore di verità, cioè una affermazione che è VERA oppure FALSA. Ad esempio: 5

Dettagli

Le Liste. Elisa Marengo. Università degli Studi di Torino Dipartimento di Informatica. Elisa Marengo (UNITO) Le Liste 1 / 31

Le Liste. Elisa Marengo. Università degli Studi di Torino Dipartimento di Informatica. Elisa Marengo (UNITO) Le Liste 1 / 31 Le Liste Elisa Marengo Università degli Studi di Torino Dipartimento di Informatica Elisa Marengo (UNITO) Le Liste 1 / 31 Cos è una Lista Una lista è una collezione di elementi omogenei che: potrebbero

Dettagli

APPLICAZIONI SU PIU FILE

APPLICAZIONI SU PIU FILE APPLICAZIONI SU PIU FILE Serve poter sviluppare applicazioni su piú file: - alcune funzioni e alcune definizioni di dati in un file - altre funzioni e dati in file diversi Perché?? 1. Se il programma è

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

RUP (Rational Unified Process)

RUP (Rational Unified Process) RUP (Rational Unified Process) Caratteristiche, Punti di forza, Limiti versione del tutorial: 3.3 (febbraio 2007) Pag. 1 Unified Process Booch, Rumbaugh, Jacobson UML (Unified Modeling Language) notazione

Dettagli

ISTITUTO COMPRENSIVO STATALE di BORGORICCO SUGGERIMENTI PER LA COMPILAZIONE DEL P.D.P. PER ALUNNI CON DISTURBI SPECIFICI DI APPRENDIMENTO

ISTITUTO COMPRENSIVO STATALE di BORGORICCO SUGGERIMENTI PER LA COMPILAZIONE DEL P.D.P. PER ALUNNI CON DISTURBI SPECIFICI DI APPRENDIMENTO SUGGERIMENTI PER LA COMPILAZIONE DEL P.D.P. PER ALUNNI CON DISTURBI SPECIFICI DI APPRENDIMENTO Il documento va compilato in forma digitale per poter ampliare gli spazi dello schema (ove necessario) e togliere

Dettagli

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

Dettagli

Introduzione allo Scilab Parte 3: funzioni; vettori.

Introduzione allo Scilab Parte 3: funzioni; vettori. Introduzione allo Scilab Parte 3: funzioni; vettori. Felice Iavernaro Dipartimento di Matematica Università di Bari http://dm.uniba.it/ iavernaro felix@dm.uniba.it 13 Giugno 2007 Felice Iavernaro (Univ.

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

La ricorsione. Politecnico di Milano Sede di Cremona

La ricorsione. Politecnico di Milano Sede di Cremona La ricorsione Politecnico di Milano Sede di Cremona Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://www.elet.polimi.it/~cugola Definizioni ricorsive Sono comuni

Dettagli

Energy risk management

Energy risk management Il sistema di supporto alle tue decisioni Energy risk management Un approccio orientato agli attori M.B.I. Srl, Via Francesco Squartini 7-56121 Pisa, Italia - tel. 050 3870888 - fax. 050 3870808 www.powerschedo.it

Dettagli

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C.:luxx:. PREMESSE In questa guida non verranno trattati i costrutti di flusso, le funzioni, o comunque le caratteristiche del linguaggio, che si danno come presupposte.

Dettagli

Rational Unified Process Introduzione

Rational Unified Process Introduzione Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un

Dettagli

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java]

Laboratorio di Sistemi Fattoriale di un numero Jsp [Java] Desideriamo realizzare una applicazione web che ci consenta di calcolare il fattoriale di un numero. L'esercizio in sé non particolarmente difficile, tuttavia esso ci consentirà di affrontare il problema

Dettagli

CRITERI DI VALUTAZIONE ITALIANO PRIMO BIENNIO

CRITERI DI VALUTAZIONE ITALIANO PRIMO BIENNIO CRITERI DI VALUTAZIONE ITALIANO PRIMO BIENNIO Voti RAGGIUNGIMENTO OBIETTIVI DESCRITTORI Fino a 3 Del tutto insufficiente Assenza di conoscenze. Errori ortografici e morfo-sintattici numerosi e gravi. 4

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ 1 Operazioni su Liste Doppie e Circolari 2 1 Indice Liste puntate semplici: Gli elementi sono

Dettagli

Processi (di sviluppo del) software. Fase di Analisi dei Requisiti. Esempi di Feature e Requisiti. Progettazione ed implementazione

Processi (di sviluppo del) software. Fase di Analisi dei Requisiti. Esempi di Feature e Requisiti. Progettazione ed implementazione Processi (di sviluppo del) software Fase di Analisi dei Requisiti Un processo software descrive le attività (o task) necessarie allo sviluppo di un prodotto software e come queste attività sono collegate

Dettagli

Progettazione Orientata agli Oggetti

Progettazione Orientata agli Oggetti Progettazione Orientata agli Oggetti Sviluppo del software Ciclo di vita del software: comprende tutte le attività dall analisi iniziale fino all obsolescenza (sviluppo, aggiornamento, manutenzione) Procedimento

Dettagli

Permutazione degli elementi di una lista

Permutazione degli elementi di una lista Permutazione degli elementi di una lista Luca Padovani padovani@sti.uniurb.it Sommario Prendiamo spunto da un esercizio non banale per fare alcune riflessioni su un approccio strutturato alla risoluzione

Dettagli

(anno accademico 2008-09)

(anno accademico 2008-09) Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato

Dettagli

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); }

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); } import java.util.*; class coda * Questa classe contiene tutti i metodi per la gestione della coda * @author D'Ambrosio Giovanni Classe 4D I.T.I.S. Grottaminarda * @version 26/02/2010 * VETTORE DINAMICO

Dettagli

Semplici Algoritmi di Ordinamento

Semplici Algoritmi di Ordinamento Fondamenti di Informatica Semplici Algoritmi di Ordinamento Fondamenti di Informatica - D. Talia - UNICAL 1 Ordinamento di una sequenza di elementi Esistono molti algoritmi di ordinamento. Tutti ricevono

Dettagli

Lo sviluppo delle abilità logico-matematiche. nei bambini in età prescolare

Lo sviluppo delle abilità logico-matematiche. nei bambini in età prescolare Istituto di Riabilitazione ANGELO CUSTODE PARLARE E CONTARE ALLA SCUOLA DELL INFANZIA Lo sviluppo delle abilità logico-matematiche nei bambini in età prescolare Dott.ssa Liana Belloni Dott.ssa Claudia

Dettagli

QUARTA E QUINTA ISTITUTO TECNICO INDUSTRIALE

QUARTA E QUINTA ISTITUTO TECNICO INDUSTRIALE QUARTA E QUINTA ISTITUTO TECNICO INDUSTRIALE - Matematica - Griglie di valutazione Materia: Matematica Obiettivi disciplinari Gli obiettivi indicati si riferiscono all intero percorso della classe quarta

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT IT PROCESS EXPERT 1. CARTA D IDENTITÀ... 2 2. CHE COSA FA... 3 3. DOVE LAVORA... 4 4. CONDIZIONI DI LAVORO... 5 5. COMPETENZE... 6 Quali competenze sono necessarie... 6 Conoscenze... 8 Abilità... 9 Comportamenti

Dettagli

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza.

Analisi di massima: L utente dovrà inserire un numero limite, e tramite vari calcoli verrà stampato a video la sequenza. Relazione tecnica Fibonacci ANDENA GIANMARCO Traccia: Creare un algoritmo che permetta, dato un valore intero e positivo, di stabilire la sequenza utilizzando la regola di fibonacci dei numeri fino al

Dettagli

Linguaggio C: introduzione

Linguaggio C: introduzione Linguaggio C: introduzione Il linguaggio C è un linguaggio general purpose sviluppato nel 1972 da Dennis Ritchie per scrivere il sistema operativo UNIX ed alcune applicazioni per un PDP-11. Il linguaggio

Dettagli

Architettura dei Calcolatori

Architettura dei Calcolatori Architettura dei Calcolatori Sistema di memoria parte prima Ing. dell Automazione A.A. 2011/12 Gabriele Cecchetti Sistema di memoria parte prima Sommario: Banco di registri Generalità sulla memoria Tecnologie

Dettagli

DAL PROBLEMA AL PROGRAMMA

DAL PROBLEMA AL PROGRAMMA 1. I PROBLEMI E LA LORO SOLUZIONE DAL PROBLEMA AL PROGRAMMA L'uomo, per affrontare gli innumerevoli problemi postigli dallo sviluppo della civiltà, si è avvalso della scienza e della tecnica, i cui destini

Dettagli

P a s q u a l e t t i V e r o n i c a

P a s q u a l e t t i V e r o n i c a PHP: OOP Pasqualetti Veronica Oggetti Possiamo pensare ad un oggetto come ad un tipo di dato più complesso e personalizzato, non esistente fra i tipi tradizionali di PHP, ma creato da noi. 2 Gli oggetti

Dettagli