Python Standard Library. Espressioni Regolari

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Python Standard Library. Espressioni Regolari"

Transcript

1 Python Standard Library Espressioni Regolari

2 Espressioni Regolari Un'espressione regolare (regular expression o regex) è una sequenza di caratteri che identifica un insieme di stringhe. Sono un potente strumento che consente di trovare, estrarre e sostituire parti di testo all'interno di un documento. Benché siano state formalizzate dal punto di vista puramente matematico fin dagli anni quaranta, è con l'avvento dei sistemi UNIX che comparirono i primi tool basati sulle espressioni regolari (tra cui un precursore dell'attuale grep).

3 Esempi di regex [-+]?[0-9]+ Trova tutti i numeri interi con segno. ^.*\.txt$ Trova tutti i file che hanno estensione txt. \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} Trova gli indirizzi IPv4. ^4[0-9]{12}(?:[0-9]{3})?$ Trova numeri di carte di credito.

4 Le regex più semplici Nella loro forma più semplice, una regex è una sequenza di caratteri alfanumerici. abc ad esempio, trova la stringa 'abc'. Le espressioni regolari, di norma, sono case sensitive. La regex di prima infatti troverà la stringa 'abc', ma non la stringa 'Abc' o 'abc'. Le regex possono, tramite regole opportune, trovare qualsiasi carattere, compresi gli altri caratteri ASCII ('~', ' ') e persino quelli Unicode ('è', '1', ' '). Bisogna tuttavia porre attenzione al fatto che alcuni caratteri hanno una funzione particolare nel linguaggio delle regex.

5 Notazione Le espressioni regolari saranno sempre indicate in carattere monospaced. Per indicare che una regex trova un determinato insieme di stringhe verrà utilizzato il simbolo. L'insieme di stringhe trovate da una regex seguono la consueta notazione insiemistica. Un insieme illimitato è delimitato dai puntini di sospensione. abc {'abc'}

6 Quantificatore * * Detto anche stella di Kleene, serve per trovare famiglie di stringhe che hanno da 0 a N ripetizioni di uno stesso carattere. ab*c {'ac', 'abc', 'abbc', 'abbbc', } I quantificatori si riferiscono sempre al carattere immediatamente precedente.

7 Quantificatori + e? + Identico a *, ma le ripetizioni ammesse sono da 1 a N, e non da 0 a N.? ab+c {'abc', 'abbc', 'abbbc', } Ammette l'opzionalità del carattere precedente (può essere presente 0 o 1 volta). ab?c {'ac', 'abc'}

8 Operatore \ \ Effettua l'escaping del carattere precedente, se esso è un carattere particolare. a** Non valida a\** {'a', 'a*', 'a**', 'a***', } a*\* {'*', 'a*', 'aa*', 'aaa*', } a\*\* {'a**'} a\c Non valida a\\c {'a\c'}

9 Gruppi In realtà non è vero che gli operatori si applicano al carattere precedente: è più corretto dire che si applicano al token precedente. Un token, nel caso più semplice, è un carattere, ma può essere anche un gruppo o una classe di caratteri. In particolare, un gruppo di caratteri è una stringa delimitata dalle parentesi tonde. a(bc)*d {'ad', 'abcd', 'abcbcd', } Nell'esempio precedente, il token su cui è applicata la stella di Kleene è (bc). L'ordine dei caratteri all'interno del gruppo è importante! a(cb)*d {'ad', 'acbd', 'acbcbd', }

10 Operatore Specifica alternative all'interno di un gruppo. gr(a e)y {'gray', 'grey'} In un gruppo possono essere presenti più alternative in qualsiasi ordine, e le alternative sono stringhe di qualsiasi lunghezza. (cla repl gu)y {'clay', 'reply', 'guy'} È inoltre possibile specificare la stringa vuota come alternativa: (na )y {'y', 'nay'}

11 Classi Esiste un modo più pratico per trovare alternative di singoli caratteri, ossia definire una classe di caratteri. Una classe di caratteri è un insieme non ordinato di caratteri in alternativa tra di loro delimitato da parentesi quadre. La regular expression gr(a e)y può essere dunque riscritta come: gr[ae]y {'gray', 'grey'}

12 Classi I quantificatori visti finora perdono di significato se sono inseriti all'interno di una classe, eccetto l'operatore \. a[-+*\\]b {'a+b', 'a-b', 'a*b', 'a\b'} Una classe di caratteri è anche essa un token su cui è possibile applicare un quantificatore. a[cd]?b {'ab', 'acb', 'adb'} Lo spazio è un carattere ammesso. a[ _]b {'a_b', 'a b'}

13 Intervalli Il carattere - definisce un intervallo di caratteri all'interno di una classe. Esso è utilizzabile solamente per definire intervalli di caratteri alfanumerici, sia uppercase che lowercase: se usato singolarmente si comporta come un normale carattere. 1[0-4] {'10', '11', '12', '13', '14'} [A-Za-z]* una qualsiasi sequenza di lettere [+-]?17 {'17', '+17', '-17'}

14 Negazione Il carattere ^, se posto all'inizio di una classe, specifica che la classe rappresenta i caratteri che NON devono essere presenti. Perde questo significato se è non è il primo carattere di una classe. 1[^0-4] {'15', '16', '1a', '1T', } a[&^ ]b {'a&b', 'a^b', 'a b'}

15 Classi speciali. Trova qualsiasi carattere eccetto il newline '\n'. \d. {'a', 'b', '4', '&', } Trova caratteri numerici. Include [0-9] ma anche tutti i caratteri non-ascii riconducibili a numeri. \d {'0', '1', '2', '3', '0', }

16 Classi speciali \s Trova whitespace. Include [ \t\n\r\f\v] e tutti i caratteri whitespace speciali Unicode. \w Trova caratteri alfanumerici. Include [A-Za-z0-9_] ma anche tutti i caratteri non-ascii riconducibili a numeri o lettere. \w {'a', 'T', '9', 'è', '1', '_', }

17 Classi speciali Esistono anche le classi duali di \d, \w, e \s, e sono rispettivamente \D, \W, \S. Esse trovano esattamente i caratteri complementari alle classi base: \D trova tutti i caratteri che non sono numeri. \W trova tutti i caratteri che non sono numeri né lettere. \S trova tutti i caratteri non whitespace. \W {'#', '[', '+', '.', ' ', }

18 Classi speciali Le classi speciali \d, \w, e \s, e le loro duali possono essere utilizzate all'interno di altre classi. [\dab] {'0', '1', '2',, 'a', 'B'} Il punto all'interno di una classe invece vale sempre e solo come carattere, non come classe. [^.] tutti i caratteri tranne '.'

19 Quantificatori greedy e lazy Di norma, i quantificatori sono sempre greedy, ossia cercano di trovare quanti più caratteri possibili. A volte questo comportamento non è quello desiderato. Immaginiamo di volere estrarre il nome del tag dal seguente frammento di HTML: <div>some paragraph</div>

20 Quantificatori greedy e lazy <div>some paragraph</div> Regex pattern: <.*> Sappiamo che il punto trova qualsiasi carattere eccetto il newline. Il problema è che anche '>' è un carattere! È quindi perfettamente logico che venga incluso nella stringa trovata.

21 Quantificatori greedy e lazy La soluzione al problema è rendere il quantificatore lazy, facendogli catturare la minor quantità di caratteri possibili che soddisfano l'espressione regolare. Per specificare che un quantificatore è lazy si usa il punto interrogativo. <div>some paragraph</div> Regex pattern: <.*?>

22 Ancore Quando si ricerca una pattern all'interno di una stringa, a volte è utile specificare esplicitamente dove questa pattern deve essere collocata all'interno del testo. hear ya, hear ya Regex pattern: hear Esistono degli operatori, chiamati ancore (anchors), che vincolano la posizione delle sequenze di caratteri trovate.

23 Ancore ^ Vincola la posizione della sequenza di caratteri trovata all'inizio della stringa. $ hear ya, hear ya Regex pattern: ^hear Vincola la posizione della sequenza di caratteri trovata alla fine della stringa. hear ya, hear ya Regex pattern: ya$

24 Modulo re Python permette, tramite il suo modulo re, di utilizzare il motore delle espressioni regolari.

25 re.search re.search(pattern, string, flags=0) Cerca in string la pattern regex specificata. flags è un intero che modifica il comportamento della funzione. Il suo valore di ritorno è un Match object. >>> html = '<div>another paragraph</div>' >>> re.search('<.*?>', html) <_sre.sre_match object at 0x1ab06a0>

26 Match object Contengono varie informazioni sulle stringhe trovate. Sono convertibili automaticamente al booleano True: match = re.search(pattern, string) if match: process(match) I match object possono essere usati per accedere alle stringhe trovate corrispondenti ai vari gruppi.

27 match.group match.group([group1, ]) Restituisce una o più stringhe trovate corrispondenti a uno o più gruppi. Chiamata senza argomenti è equivalente a chiamare match.group(0). Se uno dei groupn è 0, il valore corrispondente sarà l'intera stringa trovata. Se vengono passati più gruppi come parametri, restituisce una tupla contenente tutte le stringhe relative a quei gruppi.

28 Esempio >>> import re >>> text = "Isaac Newton, physicist" >>> m = re.match(r"(\w+) (\w+)", text) >>> m.group() 'Isaac Newton' >>> m.group(1) 'Isaac' >>> m.group(0, 2) ('Isaac Newton', 'Newton')

29 Raw strings Per evitare di inserire troppi caratteri di escape, in python è possibile dichiarare una stringa come raw string. Le raw string si dichiarano mettendo la lettera r prima della stringa. >>> r'hello!\n' 'Hello!\\n'

30 match.groups match.groups(default=none) Restituisce una tupla contenente tutte le stringhe trovate dai vari gruppi. default è usato quando un gruppo opzionale non è presente nella stringa d'origine. >>> import re >>> m = re.match(r"(\d+)\.?(\d+)?", "24") >>> m.groups() ('24', None) >>> m.groups('0') ('24', '0')

31 re.sub re.sub(pattern, repl, string, count=0, flags=0) Sostituisce in string la pattern regex specificata con la stringa repl fino ad un massimo di count volte. Se count è 0 sostituisce tutte le occorrenze di pattern con repl. flags è un intero che modifica il comportamento della funzione. >>> html = '<div>another paragraph</div>' >>> re.sub('(</ <).*?>', r'\1span>', html) ' <span>another paragraph</span>'

32 Backreference La \1 nell'esempio è chiamata backreference. Viene sostituita durante l'elaborazione con la stringa trovata dalla pattern specificata nel primo gruppo. \1 assumerà il valore corrispondente alla stringa che viene trovata dalla pattern del primo gruppo. <div>another paragraph</div> Regex pattern: (</ <).*?> Match: <div> \1 = '<' Match: </div> \1 = '</' Se sono definiti più gruppi, è possibile usare la backreference \i (ove i è un numero) per ricavare il valore dell'i-esimo gruppo.

33 re.split re.split(pattern, string, maxsplit=0, flags=0) Divide string in frammenti usando come divisore pattern, creando al massimo maxsplit frammenti. Se maxsplit è 0 invece divide la stringa il più possibile. flags è un intero che modifica il comportamento della funzione. Restituisce una lista di stringhe corrispondenti ai frammenti.

34 Esempio >>> import re >>> text = 'Words, words, words.' >>> re.split('\w+', text) ['Words', 'words', 'words', ''] >>> re.split('\w+', text, 1) ['Words', 'words, words.']

35 Alcune flag re.dotall (re.s) Il. trova anche i caratteri newline '\n'. re.multiline (re.m) La ricerca viene effettuata su ogni linea della stringa, non una volta sola. re.ignorecase (re.i) Ignora il case delle lettere presenti in pattern.

36 Alcune flag re.unicode (re.u) Le classi \w, \d, \s e duali trovano, oltre ai caratteri ASCII corrispondenti, anche eventuali caratteri Unicode equivalenti.! In python 3 è il comportamento di default, quindi non è necessario specificarlo. re.ascii (re.a) Le classi \w, \d, \s e duali trovano solamente caratteri ASCII.! In python 2 è il comportamento di default, e questa flag non esiste.

37 re.compile re.compile(pattern, flags=0) È possibile compilare una pattern in un oggetto regex. Questo è utile se si pensa di riutilizzare la stessa regex pattern più di una volta. flags ha lo stesso significato dei metodi Sull'oggetto regex è possibile chiamare i metodi search, sub e split. >>> import re >>> regex = re.compile(pattern) >>> regex.search(text)

38 Esercizio: iwget iwget è un'utilità a riga di comando che scarica tutte le immagini di una pagina web. Per farlo dobbiamo compiere i seguenti passi: 1. Accettare l'url della pagina web da riga di comando. 2. Scaricare la pagina (X)HTML corrispondente all'url. 3. Leggere il contenuto di tutti gli attributi src delle tag img, tenendo presente che l'(x)html non sempre è ben formato. 4. Per ogni match, scaricare l'immagine in una qualsiasi cartella locale.

39 Esercizio: iwget Per svolgere questo esercizio abbiamo bisogno di una libreria che consente di scaricare pagine web. Non è tuttavia parte del corso spiegare come utilizzarla. La soluzione? Documentazione ufficiale!

Linguistica Computazionale

Linguistica Computazionale Linguistica Computazionale Laboratorio espressioni regolari (1) 30 settembre 2014 Cercare, ricercare Cercare una parola in un testo è semplice: ma come fare per ricerche più complesse? le parole che terminano

Dettagli

Espressioni Regolari. Giancarlo Massidda

Espressioni Regolari. Giancarlo Massidda Espressioni Regolari Giancarlo Massidda Espressioni regolari O RegEx dall inglese regular expression Traduzione errata: dovrebbe essere espressioni basate su regole Si tratta di un sistema per descrivere

Dettagli

L ambiente UNIX/Linux. Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

L ambiente UNIX/Linux. Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino L ambiente UNIX/Linux Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Espressioni regolari Nate nel 1956 a opera del matematico Stephen

Dettagli

Linguistica Computazionale

Linguistica Computazionale Linguistica Computazionale Salvatore Sorce Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Ludici Adattati da Alessandro Lenci Dipartimento di Linguistica T. Bolelli Espressioni

Dettagli

L ambiente UNIX/Linux. I filtri Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

L ambiente UNIX/Linux. I filtri Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino L ambiente UNIX/Linux I filtri Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Filtri In UNIX/Linux un filtro è un comando che Riceve il proprio input da standard input Lo

Dettagli

Ulteriori comandi sui file

Ulteriori comandi sui file Ulteriori comandi sui file Confronto tra file: 1. > cmp file1 file2 restituisce il primo byte ed il numero di linea in cui file1 e file2 differiscono (se sono uguali, non viene stampato nulla a video).

Dettagli

Espressioni regolari in Javascript (RegExp)

Espressioni regolari in Javascript (RegExp) Espressioni regolari in Javascript (RegExp) Antonio Lioy < lioy @ polito.it > Politecnico i di Torino Dip. Automatica e Informatica (estensione di materiale preparato da Andrea S. Atzeni) Le espressioni

Dettagli

Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013

Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013 Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013 Espressioni Regolari 1 Sommario Metacaratteri Quoting Comandi di filtro: grep Espressioni Regolari (E.R.): I caratteri grep con E.R. 2 - Metacaratteri

Dettagli

Primi passi con JFlex

Primi passi con JFlex Primi passi con JFlex Luca Chiodini Abstract Ci proponiamo di muovere i primi passi nel mondo dell analisi lessicale e della produzione automatica di un analizzatore lessicale. Verrà mostrato l uso di

Dettagli

Come si accelera il caricamento delle immagini in una pagina con roll-over?

Come si accelera il caricamento delle immagini in una pagina con roll-over? Come si accelera il caricamento delle immagini in una pagina con roll-over? Creare una cache per le immagini! Il Browser carica le immagini presenti in una pagina seguendo l ordine con cui esse sono inserite

Dettagli

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave

Dettagli

HTML. Hyper Text Mark-Up Language

HTML. Hyper Text Mark-Up Language HTML Hyper Text Mark-Up Language Cos è l HTML? È un linguaggio usato per descrivere documenti ipertestuali disponibili nel Web È un linguaggio di marcatura del testo che descrive il contenuto e il formato

Dettagli

Gestione avanzata dei file

Gestione avanzata dei file Gestione avanzata dei file Espressioni jolly * qualunque insieme di caratteri? un solo carattere qualunque ^ nega l'espressione seguente [ ] carattere singolo in un range di caratteri possibili [a-c] le

Dettagli

Linguistica Applicata

Linguistica Applicata Linguistica Applicata 2007 2008 Lezioni 8/9: Collocazioni e Keywords, Espressioni regolari, Preparazione della ricerca per la tesina Tutor: Dott. Emiliano Guevara 1 1 Facoltà di Lingue e Letterature Straniere

Dettagli

Giselda De Vita 2015

Giselda De Vita 2015 ! La funzione CERCA.VERT (Cerca Verticale) è la funzione Excel che, più di altre, permette di risparmiare tempo, lavorare senza errori e soprattutto evitare il fenomeno degli "occhi incrociati".! ! La

Dettagli

Access. P a r t e t e r z a

Access. P a r t e t e r z a Access P a r t e t e r z a 1 Query: Concetti generali (2) Query 1 Tabella Query 2 Le query rappresentano viste differenti sul DB (possono coinvolgere una o più tabelle) 2 Creazione (1) Diverse possibilità,

Dettagli

Linguistica Computazionale

Linguistica Computazionale Linguistica Computazionale Salvatore Sorce Dipartimento dell Innovazione Industriale e Digitale Ingegneria Chimica Gestionale Informatica Meccanica Ludici Adattati da Alessandro Lenci Dipartimento di Linguistica

Dettagli

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Programmi Un elaboratore riceve dei dati in ingresso, li elabora secondo una sequenza predefinita di operazioni e infine restituisce il risultato sotto forma

Dettagli

Makefile. Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze)

Makefile. Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze) Makefile Il file dependency system di Unix (serve ad automatizzare il corretto aggiornamento di più file che hanno delle dipendenze) 1 makefile: idea di fondo (1) Permette di esprimere dipendenze fra file

Dettagli

Espressioni regolari

Espressioni regolari Espressioni regolari 1 Alfabeto Un espressione regolare è una sequenza di caratteri che identifica un insieme di stringhe Se viene utilizzata per vincolare uno spazio lessicale solo le stringhe appartenenti

Dettagli

Introduzione al software R

Introduzione al software R Introduzione al software R 1 1 Università di Napoli Federico II cristina.tortora@unina.it il software R Si tratta di un software molto flessibile che permette di compiere praticamente qualsiasi tipo di

Dettagli

Structured Query Language

Structured Query Language IL LINGUAGGIO SQL Structured Query Language Contiene sia il DDL sia il DML, quindi consente di: Definire e creare il database Effettuare l inserimento, la cancellazione, l aggiornamento dei record di un

Dettagli

MANUALE MODULO WIDGET EVENT TRACKING LICENZA SaaS

MANUALE MODULO WIDGET EVENT TRACKING LICENZA SaaS MANUALE MODULO WIDGET EVENT TRACKING LICENZA SaaS Revisione 1.0 Beta Ultimo Aggiornamento: 07/12/2010 SOMMARIO Panoramica... 3 Gli eventi tracciati... 3 I report... 4 Struttura... 4 Report / Object...

Dettagli

Introduzione a Matlab

Introduzione a Matlab INFORMATICA B Ingegneria Elettrica Introduzione a Matlab Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi

Dettagli

Gli statement. Gli statement. Gli statement. Gli statement. Gli statement

Gli statement. Gli statement. Gli statement. Gli statement. Gli statement Ogni istruzione di uno script viene chiamata statement. La fine di uno statmenet e' indicata dal simbolo ;. Anche se in ActionScript il ; è opzionale, si consiglia di metterlo ugualmente per aumentare

Dettagli

Linguaggi di Markup. Violetta Lonati. Dipartimento Scienze dell Informazione Università degli Studi di Milano

Linguaggi di Markup. Violetta Lonati. Dipartimento Scienze dell Informazione Università degli Studi di Milano Linguaggi di Markup Violetta Lonati a Dipartimento Scienze dell Informazione Università degli Studi di Milano a E garantito il permesso di copiare, distribuire e/o modificare i materiali cont enuti in

Dettagli

Linguistica Computazionale

Linguistica Computazionale Linguistica Computazionale Laboratorio espressioni regolari (2) 09 ottobre 2014 Esercizi Formalizzare con le espressioni regolari i patterns per trovare le seguenti stringhe: tutte le vocali minuscole

Dettagli

Caratteristiche di un linguaggio ad alto livello

Caratteristiche di un linguaggio ad alto livello Caratteristiche di un linguaggio ad alto livello Un linguaggio ad alto livello deve offrire degli strumenti per: rappresentare le informazioni di interesse dell algoritmo definire le istruzioni che costituiscono

Dettagli

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algebra di Boole Stefano Cagnoni Algebra di Boole L algebra

Dettagli

Excel 3. Master Universitario di II livello in MANAGER NELLE AMMINISTRAZIONI PUBBLICHE A.A Prof.ssa Bice Cavallo

Excel 3. Master Universitario di II livello in MANAGER NELLE AMMINISTRAZIONI PUBBLICHE A.A Prof.ssa Bice Cavallo Excel 3 Master Universitario di II livello in MANAGER NELLE AMMINISTRAZIONI PUBBLICHE A.A. 2013-2014 Prof.ssa Bice Cavallo Ordinamento dei dati: ordinamento di un elenco l Excel è in grado di ordinare

Dettagli

Sistemi Mobili e Wireless Android - Risorse

Sistemi Mobili e Wireless Android - Risorse Sistemi Mobili e Wireless Android - Risorse Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Risorse in Android In Android,

Dettagli

D B M G Il linguaggio HTML

D B M G Il linguaggio HTML Programmazione Web Il linguaggio HTML Il linguaggio HTML Concetti di base Le interfacce utente in HTML I form Le tabelle Il passaggio dei parametri contenuti nei form @2011 Politecnico di Torino 1 Concetti

Dettagli

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy

Dettagli

In questo articolo descriveremo le formule da applicare alle seguenti operazioni sulle stringhe di testo:

In questo articolo descriveremo le formule da applicare alle seguenti operazioni sulle stringhe di testo: a cura di Giovanna Arcadu, Paolo Ardizzoni, Ignazio Putignano In questo articolo descriveremo le formule da applicare alle seguenti operazioni sulle stringhe di testo: 1. Contare il numero di occorrenze

Dettagli

CODIFICA DEL TESTO 0???????

CODIFICA DEL TESTO 0??????? CODIFICA DEL TESTO Simboli da rappresentare: lettere a,b,c,.z,a,b,c,.z cifre 0,1,2,3, 9 simboli di punteggiatura ;:,. Rappresentati mediante sequenze di bit Una codifica dei simboli è perciò (almeno) una

Dettagli

<Nome Tabella>.<attributo>

<Nome Tabella>.<attributo> Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (2) Tabelle mult., variabili, aggreg, group Prof. Alberto

Dettagli

Esempio B2.1: dire il grado del monomio seguente rispetto ad ogni lettera e il suo grado complessivo:

Esempio B2.1: dire il grado del monomio seguente rispetto ad ogni lettera e il suo grado complessivo: B. Polinomi B.1 Cos è un polinomio Un POLINOMIO è la somma di due o più monomi. Se ha due termini, come a+b è detto binomio Se ha tre termini, come a-3b+cx è detto trinomio, eccetera GRADO DI UN POLINOMIO

Dettagli

I vettori in C. Vettori. Definizione di vettori in C. int dato[10] ; int. Numero di elementi. Tipo di dato base. Nome del vettore.

I vettori in C. Vettori. Definizione di vettori in C. int dato[10] ; int. Numero di elementi. Tipo di dato base. Nome del vettore. I vettori in C Sintassi della definizione Definizione di costanti Operazioni di accesso Vettori Definizione di vettori in C I vettori in C Definizione di vettori in C Definizione di vettori in C Stesse

Dettagli

TRADUZIONE STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+

TRADUZIONE STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+ TRADUZIONE DI STATE AND TRANSITION DIAGRAM UML E CORRETTEZZA DEI PROGRAMMI IN TLA+ a cura di: Eleonora Antonelli Simone Maletta Stefano Novara INDICE 1. Grammatica di TLA+ a cura di Eleonora Antonelli

Dettagli

Algebra Relazionale. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Algebra Relazionale. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Algebra Relazionale 1 Linguaggi di interrogazione relazionale Linguaggi di interrogazione: permettono la manipolazione e il reperimento di dati da una base di dati Il modello relazionale supporta LI semplici

Dettagli

La rappresentazione delle informazioni

La rappresentazione delle informazioni La rappresentazione delle informazioni In queste pagine cercheremo di capire come sia possibile rappresentare mediante numeri e memorizzare in un file testi, immagini, video, suoni... Il computer per lavorare

Dettagli

LA SINTASSI DEI LINGUAGGI DI PROGRAMMAZIONE. Ivan Lanese

LA SINTASSI DEI LINGUAGGI DI PROGRAMMAZIONE. Ivan Lanese LA SINTASSI DEI LINGUAGGI DI PROGRAMMAZIONE Ivan Lanese argomenti Grammatiche BNF Varianti: BNF + ε EBNF Remind: cos è una grammatica Una grammatica è uno strumento linguistico per definire insiemi di

Dettagli

HTML: FORM. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

HTML: FORM. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni HTML: FORM Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Form Text Radio Select CheckBox TextArea Button ... L'elemento serve per delimitare un modulo

Dettagli

@2011 Politecnico di Torino 1

@2011 Politecnico di Torino 1 Concetti di base Programmazione Web Il linguaggio HTML HTML consente di annotare un testo per contrassegnare le parti che lo compongono Le annotazioni sono realizzate tramite i "tag" Visualizzare documenti

Dettagli

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi: SQL e linguaggi di programmazione L interazione con l ambiente SQL può avvenire in 3 modi: in modo interattivo col server attraverso interfacce o linguaggi ad hoc legati a particolari DBMS attraverso i

Dettagli

elenco= Luca Rossi 2345234 - Mario Bianchi 82342342 - Marco Verdi 342342342

elenco= Luca Rossi 2345234 - Mario Bianchi 82342342 - Marco Verdi 342342342 Espressioni regolari metodo per verificare se una stringa ha una certa forma cercare una stringa in un altra esempio: elenco telefonico cerchiamo "Mario": import re elenco= Luca Rossi 2345234 - Mario Bianchi

Dettagli

Introduzione ai Motori di Ricerca

Introduzione ai Motori di Ricerca I motori di ricerca Introduzione ai Motori di Ricerca I Motori di Ricerca sono senz altro la risorsa principale a disposizione dell utente per la ricerca di informazioni su Internet. Ma cosa sono esattamente

Dettagli

Scritto da Donato Savino Venerdì 26 Febbraio :58 - Ultimo aggiornamento Venerdì 21 Gennaio :17

Scritto da Donato Savino Venerdì 26 Febbraio :58 - Ultimo aggiornamento Venerdì 21 Gennaio :17 In questo articolo analizzeremo le caratteristiche di uno dei più completi editor di testo. TextPad è un eccellente editor sviluppato per piattaforma Windows (32-bit e 64-bit di Windows 7, Vista, XP, 2000,

Dettagli

Linguaggi e Ambienti di Programmazione

Linguaggi e Ambienti di Programmazione Linguaggi e Ambienti di Programmazione Principi e tecniche diffuse che si incontrano spesso nelle applicazioni dell informatica. Compilatori Editor di struttura: riceve in input una sequenza di comandi

Dettagli

La ricerca dei codici

La ricerca dei codici La ricerca dei codici Le possibilità di ricerca Raffina ricerca Ricerca per ambiti nei Codici Ricerca per indice analitico Full text Ricerca assistita Pulsante Vai alla prima parola trovata all interno

Dettagli

Input/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE

Input/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE Input/output da file Il linguaggio C non contiene istruzioni di I/O, in quanto tali operazioni vengono eseguite tramite funzioni di libreria standard. Questo approccio rende estremamente flessibile e potente

Dettagli

Laboratorio 02. Programmazione - CdS Matematica. Mirko Polato 3 Novembre 2015

Laboratorio 02. Programmazione - CdS Matematica. Mirko Polato 3 Novembre 2015 Laboratorio 02 Programmazione - CdS Matematica Mirko Polato 3 Novembre 2015 Contenitori Spesso è necessario utilizzare contenitori di oggetti. 2 of 26 Contenitori Spesso è necessario utilizzare contenitori

Dettagli

Funzioni e moduli. Andrea Passerini Informatica. funzioni e moduli

Funzioni e moduli. Andrea Passerini Informatica. funzioni e moduli Funzioni e moduli Andrea Passerini passerini@disi.unitn.it Informatica Funzioni nella programmazione Descrizione Una funzione è una sequenza di istruzioni cui viene dato un nome Questo permette di riutilizzare

Dettagli

A lezione sono stati presentati i seguenti passi per risolvere un problema:

A lezione sono stati presentati i seguenti passi per risolvere un problema: Calcolo delle radici di un polinomio Problema: Dati i coefficienti a,b,c di un polinomio di 2 grado della forma: ax^2 + bx + c = 0, calcolare le radici. A lezione sono stati presentati i seguenti passi

Dettagli

Corso di Linguaggi di Programmazione

Corso di Linguaggi di Programmazione Corso di Linguaggi di Programmazione Lezione 5 Alberto Ceselli alberto.ceselli@unimi.it Università degli Studi di Milano 12 Marzo 2013 Le funzioni sono oggetti di prima classe in Scheme In Scheme le funzioni

Dettagli

Caratteri e stringhe

Caratteri e stringhe Caratteri e stringhe Caratteri Dato che un computer può memorizzare esclusivamente sequenze di bit, per memorizzare un carattere (e quindi testi) è necessario stabilire una convenzione che associa a un

Dettagli

L ambiente UNIX/Linux Espressioni regolari e comando find

L ambiente UNIX/Linux Espressioni regolari e comando find L ambiente UNIX/Linux Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Espressioni regolari Nate nel 1956 a opera del matematico Stephen

Dettagli

Programmazione web lato client con JavaScript. Marco Camurri 1

Programmazione web lato client con JavaScript. Marco Camurri 1 Programmazione web lato client con JavaScript Marco Camurri 1 JavaScript E' un LINGUAGGIO DI PROGRAMMAZIONE che consente di inserire codice in una pagina web Sintassi simile a Java (e al C), ma NON E'

Dettagli

Come creare un nuovo Prodotto per ebay con Var.

Come creare un nuovo Prodotto per ebay con Var. imaio.com imaio v. 3.0 Come creare un nuovo Prodotto per ebay con Var. In questa guida verra illustrato come creare un nuovo prodotto sul sistema imaio III per essere poi pubblicato sul Negozio ebay con

Dettagli

Linguaggio C: introduzione

Linguaggio C: introduzione Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: introduzione La presente dispensa e da utilizzarsi

Dettagli

Laboratorio di Tecnologie Web HTML: Tabelle Dott. Stefano Burigat

Laboratorio di Tecnologie Web HTML: Tabelle Dott. Stefano Burigat Laboratorio di Tecnologie Web HTML: Tabelle Dott. Stefano Burigat www.dimi.uniud.it/burigat Come usare le tabelle Le tabelle HTML possono essere utilizzate in tutti quei casi in cui sia necessario inserire

Dettagli

Javascript. - Corso Web Design - Media Dream Academy. Stefano Gaborin

Javascript. - Corso Web Design - Media Dream Academy. Stefano Gaborin Javascript - Corso Web Design - Media Dream Academy Stefano Gaborin stefano.gaborin@above.company www.above.company Cos è Javascript? JavaScript è un linguaggio di programmazione interpretato. Utilizzato

Dettagli

Reti Logiche Combinatorie

Reti Logiche Combinatorie Testo di riferimento: [Congiu] - 2.4 (pagg. 37 57) Reti Logiche Combinatorie 00.b Analisi Minimizzazione booleana Sintesi Rete logica combinatoria: definizione 2 Una rete logica combinatoria èuna rete

Dettagli

Il sistema C è formato dal linguaggio C, dal preprocessore, dal compilatore, dalle librerie e da altri strumenti di supporto.

Il sistema C è formato dal linguaggio C, dal preprocessore, dal compilatore, dalle librerie e da altri strumenti di supporto. Sistema C e organizzazione del codice Il sistema C è formato dal linguaggio C, dal preprocessore, dal compilatore, dalle librerie e da altri strumenti di supporto. Un programma C è costituito da un insieme

Dettagli

File binari e file di testo

File binari e file di testo I file File binari e file di testo distinzione tra file binari file di testo si possono usare funzioni diverse per la gestione di tipi di file diversi Programmazione Gestione dei file 2 File binari e file

Dettagli

Laboratorio di Python

Laboratorio di Python , Input da tastiera, Iterazione incondizionata 7 marzo 2014 Sommario 1 2 3 Outline 1 2 3 Definizione di funzione import modulo Si importa il modulo specificato def nome_f(par 1,, par n ) : Si definiscono

Dettagli

Definizione di file. Directory e file File binari e file di testo

Definizione di file. Directory e file File binari e file di testo I/O Avanzato e File Definizione di file Directory e file File binari e file di testo 5 Definizione di file Directory e file Tutti i sistemi operativi permettono di organizzare le informazioni su hard disk

Dettagli

GRAMMATICHE DEI LINGUAGGI DI PROGRAMMAZIONE. Cosimo Laneve

GRAMMATICHE DEI LINGUAGGI DI PROGRAMMAZIONE. Cosimo Laneve GRAMMATICHE DEI LINGUAGGI DI PROGRAMMAZIONE Cosimo Laneve 1 argomenti 1. linguaggi di programmazione 2. definizione formale di insiemi infiniti 3. la grammatica e la notazione BNF 4. notazioni alternative

Dettagli

Laboratorio Progettazione Web Il linguaggio PHP Lezione 6. Andrea Marchetti IIT-CNR 2011/2012

Laboratorio Progettazione Web Il linguaggio PHP Lezione 6. Andrea Marchetti IIT-CNR 2011/2012 Laboratorio Progettazione Web Il linguaggio PHP Lezione 6 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2011/2012 Assegnamento L assegnamento ad una variabile è il classico variabile = valore;

Dettagli

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è 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?

Dettagli

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato.

Scilab. Introduzione a Scilab - Vettori. Corso di Informatica CdL: Chimica. Claudia d'amato. Scilab Corso di Informatica CdL: Chimica Introduzione a Scilab - Vettori Claudia d'amato claudia.damato@di.uniba.it Scilab Introduzione Ambiente matematico e di simulazione numerica sviluppato per la realizzazione

Dettagli

Foglio Elettronico Lezione 1

Foglio 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

Dettagli

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

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

Dettagli

Programmazione in Java (I modulo)

Programmazione in Java (I modulo) Programmazione in Java (I modulo) Lezione 4 Variabili di tipo primitivo. Dichiarazione di costanti Conversioni di tipo: operatore cast Altri operatori di assegnamento Operazioni aritmetiche e di confronto

Dettagli

Manuale SQL. Manuale SQL - 1 -

Manuale SQL. Manuale SQL - 1 - Manuale SQL - 1 - Istruzioni DDL Creazione di una tabella : CREATE TABLE Il comando CREATE TABLE consente di definire una tabella del database specificandone le colonne, con il tipo di dati ad esse associate,

Dettagli

Laboratorio 1. 2) All interno della directory c:\temp\cognome\codici creare il file sorgente hello.c contenente il seguente codice:

Laboratorio 1. 2) All interno della directory c:\temp\cognome\codici creare il file sorgente hello.c contenente il seguente codice: Corso di Ingegneria Biomedica Corso di Ingegneria Elettronica Insegnamento di Informatica I a.a. 2007-08 Laboratorio 1 Durante le esercitazioni verra utilizzato il compilatore a riga di comando DJGPP,,

Dettagli

Tipi di dato primitivi

Tipi di dato primitivi Tipi di dato primitivi (oltre int) Tipi di dato primitivi int (già trattati) Valori logici (ricordati) Valori reali Valori carattere Informatica - A.A. 2009/2010 - Tipi di dato 2 1 Valori logici (il caso

Dettagli

Scritto da Martedì 12 Luglio :14 - Ultimo aggiornamento Venerdì 15 Luglio :47

Scritto da Martedì 12 Luglio :14 - Ultimo aggiornamento Venerdì 15 Luglio :47 In questo articolo mostreremo come è possibile eseguire un programma esterno o uno script usando il linguaggio PHP. Le funzioni che si occupano di eseguire dei comandi sono quattro: - shell_exec() - exec()

Dettagli

Esercitazione 2 GUIDA

Esercitazione 2 GUIDA Corso di Laurea in Biologia Molecolare, Università di Padova Insegnamento di Informatica e Bioinformatica Esercitazione 2 Padova, 13 aprile 2016 GUIDA Uso della shell Unix Obbiettivo dell'esercitazione

Dettagli

Python Parte 1: Caratteristiche di base

Python Parte 1: Caratteristiche di base Python Parte 1: Caratteristiche di base Parte del ciclo di seminari su Programmazione Orientata agli Oggetti e Scripting in Python a cura di: Giancarlo Cherchi Introduzione Un programma Python è composto

Dettagli

Essendo una sequenza, condivide le operazioni su sequenza viste per le stringhe

Essendo una sequenza, condivide le operazioni su sequenza viste per le stringhe Liste Descrizione Una lista è una sequenza di oggetti qualunque (anche di tipo diverso, anche altre liste) = ["abc", 2, [1,2]] Essendo una sequenza, condivide le operazioni su sequenza viste per le stringhe

Dettagli

Menù principale di Calc

Menù principale di Calc Menù principale di Calc Status bar Informazioni generali! All'apertura si visualizza una cartella il cui nome è mostrato nella title bar;! Una cartella contiene più fogli di lavoro. Ci si può spostare

Dettagli

Programmazione di base

Programmazione di base Fondamenti di Informatica Testo A Secondo Appello 016-17 febbraio 017 Rispondi alle domande negli appositi spazi. I punti assegnati per ogni domanda sono indicati nel riquadro a lato. L'esame contiene

Dettagli

Excel 1. Informatica per le applicazioni economiche A.A. 2011/2012. Prof.ssa Bice Cavallo

Excel 1. Informatica per le applicazioni economiche A.A. 2011/2012. Prof.ssa Bice Cavallo Excel 1 Informatica per le applicazioni economiche A.A. 2011/2012 Prof.ssa Bice Cavallo Argomenti della lezione Formule Uso dei riferimenti Funzioni Funzioni condizionali e di ricerca Argomenti della lezione

Dettagli

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe String Una stringa Java rappresenta uno specifico valore e come

Dettagli

Espressività e limitazioni delle grammatiche regolari

Espressività e limitazioni delle grammatiche regolari Espressività e limitazioni delle grammatiche regolari Vantaggi: Le grammatiche regolari consentono di esprimere una significativa classe di linguaggi: linguaggi con un numero di sequenze infinito grazie

Dettagli

MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ

MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ PATENTE EUROPEA DEL COMPUTER 5.0 MODULO 5 Database (Microsoft Access 2007) Parte 3 A cura di Mimmo Corrado Gennaio 2012 MODULO 5 - USO DELLE BASI DI DATI 2 FINALITÁ Il Modulo 5, richiede che il candidato

Dettagli

SCHEMI DI MATEMATICA

SCHEMI DI MATEMATICA SCHEMI DI MATEMATICA SCHEMA 1: somme algebriche tra numeri ( ci sono sia somme che sottrazioni) Obiettivo dello schema1: saper risolvere espressioni come : -3-6 Metodo: se il segno dei due numeri è uguale

Dettagli

La codifica dei numeri

La codifica dei numeri La codifica dei numeri La rappresentazione dei numeri con il sistema decimale può essere utilizzata come spunto per definire un metodo di codifica dei numeri all interno degli elaboratori: la sequenza

Dettagli

Introduzione alle stringhe e algoritmi collegati

Introduzione alle stringhe e algoritmi collegati Introduzione alle stringhe e algoritmi collegati Algoritmicamente August 15, 2009 1 Introduzione 1.1 Introduzione ai caratteri In informatica o più generalmente in una terminologia scientifica, il carattere

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Docente: Camillo Fiorentini 16 ottobre 2007 1 Rappresentazioni di caratteri in C In C un carattere è una costante intera il cui valore è dato dal codice ASCII

Dettagli

Oggetto software. stati o proprietà (variabili) comportamenti o metodi (funzioni)

Oggetto software. stati o proprietà (variabili) comportamenti o metodi (funzioni) Le classi Oggetto software stati o proprietà (variabili) comportamenti o metodi (funzioni) Bicicletta cambia rapporto 24 kmh rallenta accelera 90 ped/min quinto rapporto istanze e membri di classe Nel

Dettagli

Manipolazione di testo

Manipolazione di testo Lesson #5 Manipolazione di testo Roberto De Virgilio Sistemi operativi - 2 Dicembre 2015 Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare

Dettagli

Operatori di confronto:

Operatori di confronto: Operatori di confronto: confrontano tra loro due numeri e come risultato danno come risposta o operatore si legge esempio risposta = uguale a diverso da > maggiore di < minore di maggiore o uguale a minore

Dettagli

Esercizi Scratch: Sensori

Esercizi Scratch: Sensori Esercizi Scratch: Sensori Animazione usando i blocchi sensori I blocchi sensori consentono di ottenere informazioni dallo stato degli oggetti che fanno parte dell'applicazione. Lo stato dell'applicazione

Dettagli

Excel Base- Lezione 3. Barbara Pocobelli Estav Nord Ovest. Il comando Trova

Excel Base- Lezione 3. Barbara Pocobelli Estav Nord Ovest. Il comando Trova Excel Base- Lezione 3 Il comando Trova 1. Fare clic su Modifica nella Barra dei menu. 2. Fare clic su Trova. Appare una finestra con una casella in cui digitare il valore da ricercare. Viene digitato il

Dettagli

STRUTTURE DI CONTROLLO DEL C++

STRUTTURE DI CONTROLLO DEL C++ STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto

Dettagli

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma.

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma. Unità Didattica 1 Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C UNIX (1969) - DEC PDP-7 Assembly Language BCPL - un OS facilmente accessibile che fornisce potenti strumenti

Dettagli

Input/Output. Console e File.

Input/Output. Console e File. Input/Output Console e File http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Le istruzioni di stampa servono a rendere visibili

Dettagli

Programmazione è gestione di eventi

Programmazione è gestione di eventi FUNZIONI Ed Eventi Programmazione è gestione di eventi Evento 1 (tasto premuto) Evento 2 (mouse) Evento 3 (cambio frame) Oggetto Evento 4 (fine di un brano audio) Azioni per evento 1 1. Azione 1 2. Azione

Dettagli