PASCAL standard. Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth.
|
|
- Agnese Sara Perrone
- 7 anni fa
- Visualizzazioni
Transcript
1 PASCAL standard Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth. Nb: primi linguaggi furono: Fortran, Algol, Ada, Cobol (cfr testo) 1
2 STRUTTURA del programma Il Programma INTESTAZIONE DICHIARAZIONI (USES, CONST, TYPE e VAR) IL NOME e file esterni usati SEZIONE DICHIARATIVA Definizione dei DATI e del loro TIPO AZIONI (ISTRUZIONI) SEZIONE ESECUTIVA..istruzioni; END. 2
3 INTESTAZIONE PROGRAM PROVA (input, output); END. file.pas I parametri input e output sono facoltativi, nel senso che anche se non vengono dichiarati vengono inseriti dal compilatore. PROVA è il nome del programma! NB: non è necessario che il file che contiene il programma abbia lo stesso nome del programma, ma è buona norma che lo sia! 3
4 TIPI DI DATA: data type TIPI DI DATI SEMPLICI STRUTTURATI Array Record File Real ORDINALI III a IV a IV a III a Enumerativi PREDEFINITI IV a Boolean Integer Char III a Subrange String[n] IV a III a III a 4
5 USES Dove? Nella sezione dichiarativa Devo elencare le funzionalità di cui avrà bisogno il mio programma, sotto la parola chiave USES : PROGRAM PROVA (input, output); USES crt; printer; Nome 5
6 Dichiarazione CONSTanti Dove? Nella sezione dichiarativa Devo elencare le costanti sotto la parola chiave CONST, assegnando loro il valore. PROGRAM PROVA (input, output); USES crt; printer; CONST PIG = 3.14; G = 9.8; Nome = pippo ; G PIG pippo Nome 6
7 Dichiarazione VARiabili Dove? Nella sezione dichiarativa I tipi semplici che useremo sono: 1. INTEGER: tutti i numeri tra e REAL: numeri tra 1E-38 e 1E CHAR: un solo carattere (a, b, 3, &, #, e, c, c, ) 4. STRING[n]: una sequenza di n caratteri 5. BOOLEAN: una variabile che può assumere solo VERO o FALSE Devo elencare le variabili sotto la parola chiave VAR per tipo separandole con una virgola. VAR c,r: REAL; a,b: INTEGER;? c (real)? r (real)? a (integer) 7
8 Dichiarazione VARiabili TP7 Dove? Nella sezione dichiarativa I tipi semplici che useremo sono: 1. INTEGER: tutti i numeri tra e LONGINT: tutti i numeri tra e REAL: numeri tra 2.9E-39 e 1.7E SINGLE: numeri tra 1.5E-45 e 3.4E DOUBLE: numeri tra 5.0E-324 e 1.7E EXTENDED: numeri tra 3.4E-4932 e 1.1E CHAR: un solo carattere (a, b, 3, &, #, e, c, c, ) 8. STRING[n]: una sequenza di n caratteri 9. BOOLEAN: una variabile che può assumere solo VERO o FALSE 8
9 STRUTTURE DI BASE o controllo Abbiamo visto che le strutture di base della programmazione possono classificarsi in: 1. sequenza: istr1; istr2; istr3; Statements 2. alternativa: SE_VALE <cond1> ALLORA_FAI istr1 ALTRIMENTI_FAI istr2; 3. ripetizione: RIPETI istr1; istr2; istr3; FINCHÈ_VALE <cond1> Statements 9
10 SEQUENZA PROGRAM PROVA; CONST VAR Operatore di assegnamento END. Chiamata (Call) a funzione con argomento Writeln( Ciao amico mio ); {*stampa a video ciao *} Write( inserisci il valore del raggio ); Readln(r); assegnamento (assign) a := PIG*Sqr(r); {*assegna ad a il valore PIG*Sqr*} Writeln( la circonferenza ha area pari a:, a:8:2); 10
11 ALTERNATIVA (if then else) Condizione, condition IF (A = 10) THEN{se è vero che A=10 allora esegui } END ELSE Writeln( Ciao amico mio ); Write( inserisci il valore del raggio ); Readln(r) a := PIG*sqr(r); Writeln( la circonferenza ha area pari a:, a:8:2); {altrimenti esegui } Writeln( Ciao amico mio ); Write( inserisci il valore del raggio ); Readln(r) a := PIG*sqr(r); Writeln( la circonferenza ha area pari a:, a:8:2); END SEQUENZA SEQUENZA 11
12 RIPETIZIONE (while) WHILE (a = 10) DO {ciclo mentre è vero che a UGUALE a 10 esegui } Condizione, condition Writeln( Ciao amico mio ); Write( inserisci il valore del raggio ); Readln(r) a := PIG*sqr(r); IF a <> 0 THEN Writeln( la circonferenza ha area pari a:, a:8:2); SEQUENZA Con alternativa END NB: il ciclo viene eseguito FINCHÉ la condizione è VERA! e potrei non entrare mai nel ciclo 12
13 RIPETIZIONE (repeat-until) REPEAT {ripeti } Commenti, è buona norma inserirli tra { } Condizione, condition Writeln( Ciao amico mio ); Write( inserisci il valore del raggio ); Readln(r) a := PIG*sqr(r); Writeln( la circonferenza ha area pari a:, a:8:2); SEQUENZA UNTIL (a <> 10) {ciclo finché è vero che a = 10, esco con a DIVERSO da 10 } NB: il ciclo viene eseguito FINCHÉ la condizione è FALSA! entro almeno una volta nel ciclo 13
14 Operatori aritmetici ( +, * ) Operatore della MOLTIPLICAZIONE a := PIG * sqr(r); a := a + 2 ; Operatore della SOMMA 14
15 Operatori aritmetici ( /, - ) Operatore della SOTTRAZIONE a := a - 4 ; a := a / 2 ; Operatore della DIVISIONE 15
16 Operatori aritmetici ( % modulo ) a := a DIV 2 ; Operatore della RESTO DELLA DIVISIONE PER 2 16
17 Operatori LOGICI di RELAZIONE REPEAT {ripeti } diverso Writeln( Ciao amico mio ); Write( inserisci il valore del raggio ); Readln(r) a := PIG*sqr(r); Writeln( la circonferenza ha area pari a:, a:8:2); SEQUENZA UNTIL (a <> 10) {ciclo finché è vero che a = 10 } Potranno esserci: =, >, <, <=, >= 17
18 Operatori LOGICI di CONGIUNZIONE REPEAT {ripeti } e (insieme) Writeln( Ciao amico mio ); Write( inserisci il valore del raggio ); Readln(r) a := PIG*sqr(r); Writeln( la circonferenza ha area pari a:, a:8:2); SEQUENZA UNTIL (a <> 10) AND ( b = 3 ) {ciclo finché è vero che a = 10 E b <> 3, devono valere tutte e due le condizioni} Potranno esserci: AND, OR, NOT, XOR 18
19 Istruzioni di INPUT/OUTPUT OUTPUT (su video) Writeln( Ciao amico mio ); INPUT (da tastiera); in r viene inserito quanto digitato! Readln(r) a := PIG*sqr(r); Writeln( la circonferenza ha area pari a:, a:8:2); 19
20 RIPETIZIONE con CONTATORE (FOR) FOR a := 0 TO 9 DO { ciclo 10 volte } Write( Ciao amico mio ); Writeln( a vale:, a:8:2); Estremi del ciclo END NB: il ciclo viene eseguito 10 VOLTE! 20
21 RIPETIZIONE con CONTATORE (FOR) variante FOR a := 9 DOWNTO 0 DO { ciclo 10 volte } Write( Ciao amico mio ); Writeln( a vale:, a:8:2); Estremi del ciclo END NB: il ciclo viene eseguito 10 VOLTE! 21
22 RIPETIZIONE con CONTATORE EMULATA da WHILE a := 9 ; WHILE ( a >= 0 ) DO { ciclo 10 volte } Write( Ciao amico mio ); Writeln( a vale:, a:8:2); END a := a 1 ; NB: il ciclo viene eseguito 10 VOLTE! 22
23 a := 9 ; REPEAT RIPETIZIONE con CONTATORE EMULATA da REPEAT-UNTIL Write( Ciao amico mio ); Writeln( a vale:, a:8:2); a := a 1 ; UNTIL ( a < 0 ) { ciclo 10 volte } NB: il ciclo viene eseguito 10 VOLTE! 23
24 Esempio di utilizzo del FOR FOR a := 1 TO 30 DO Write( Ciao amico mio, il di, a, è: ); Writeln( a*2); END NB: il ciclo viene eseguito 30 VOLTE! 24
25 Altro esempio di utilizzo del FOR ( nesting di FOR ) FOR a := 1 TO 10 DO Begin FOR b := 1 TO 10 DO Begin Writeln( a*b); End; End; NB: la WRITELN viene eseguita??? VOLTE! 25
26 ARRAY (schiera, lista) VAR mio_array: ARRAY [ ] OF INTEGER; Si tratta di una struttura dati che consente la memorizzazione di serie di dati omogenei È un tipo di dato strutturato (il più semplice) In ogni cella posso inserire un dato di tipo INTEGER! come? 26
27 ARRAY: assign VAR mio_array: ARRAY [ ] OF INTEGER; Begin mio_array [ 3 ] := 78; (* assegna alla cella nr 3 il valore 78 *) End come invece leggere un dato dall array? 27
28 ARRAY: lettura VAR mio_array: ARRAY [ ] OF INTEGER; Begin writeln( mio_array [ 3 ] ); (* stampa la cella nr 3 (valore 78) *) End Vediamo un meccanismo comodo per l elaborazione in ciclo 28
29 ARRAY: elaborazione in ciclo VAR mio_array: ARRAY [ ] OF INTEGER; Begin For i := 1 to 4 do Begin mio_array [ i ] := i * 2; (* assegna alla cella i_esima il valore i 2 *) writeln( mio_array [ i ] ); (* stampa la cella i_esima *) End; End
30 ARRAY: inserimento DATI VAR mio_array: ARRAY [ ] OF INTEGER; Begin For i := 1 to 4 do Begin readln( mio_array [ i ] ); (* legge da tastiera e inserisce il dato letto nella cella i_esima *) writeln( mio_array [ i ] ); (* e la stampa *) End; End
31 ARRAY multi-dimensione VAR mio_array: ARRAY [ 1.. 3, ] OF INTEGER; Si tratta di una struttura dati di tipo matriciale
32 Program prova_procedure; VAR a, b:integer; LE PROCEDURE Procedure PIPPO; FOR a := 1 TO 10 DO Begin FOR b := 1 TO 10 DO Write( a*b:5 ); Writeln; End; END; Begin PIPPO; PIPPO; End. 32
33 LE PROCEDURE: SONO SOTTOPROGRAMMI PER RICHIAMARE L ESECUZIONE DI UN INSIEME DI ISTRUZIONI PIÙ VOLTE e DA PUNTI DIVERSI DEL PROGRAMMA! 33
34 Program prova_procedure; VAR a, b:integer; Procedure PIPPO; END; Procedure PLUTO; PIPPO; END; Begin PIPPO; PLUTO; End. SEZIONE PER LE PROCEDURE 34
35 ARRAY: algoritmi fondamentali Esistono una serie di algoritmi che operano sugli array che rivestono notevole importanza in informatica e sono alla base di una serie di tecniche di memorizzazione delle informazioni 35
36 ARRAY: ricerca (SEARCH) Ricerca di un dato contenuto nell array: esame sequenziale dell array Vantaggi: semplicità Svantaggio: lentezza con grande numero di elementi (i.e. tante celle)
37 Ricerca di un dato nell array Program Ricerca_in_array; VAR a, i:integer; m_arr: ARRAY [ ] of Integer; trovato: BOOLEAN; Procedure carica_array; For i:=1 to 100 do m_arr [ i ] := Random(100); END; Procedure cerca_in_array; trovato := false; For i:=1 to 100 do if a = m_arr [i] then trovato := true; if trovato then writeln( ho trovato il numero in array! ) else writeln( numero non presente ); END; Begin randomize; (* accende il generatore di numeri casuali *) carica_array; (* riempie l array con numeri casuali *) write ( Fornire il numero da cercare in array: ); readln( a); cerca_in_array; (* cerca nell array se è presente il numero fornito *) End. 37
38 ARRAY: ordinamento (SORT) Si tratta di ordinare in modo de/crescente i dati contenuti nell array
39 Sort dell array Program ordina_array; VAR a, i, temp:integer; m_arr: ARRAY [ ] of integer; Procedure carica_array; For i:=1 to 100 do m_arr [ i ] := Random(100); END; Procedure stampa_array; For i:=1 to 100 do writlen( i:4, m_arr [ i ] :4); END; Procedure ordina_array; (* BUBBLE-SORT *) For a:=1 to do For i:=1 to do if m_arr [i] > m_arr[i+1] then begin temp := m_arr[i+1]; m_arr[i+1] := m_arr[i]; m_arr[i] := temp; end END; Begin randomize; (* accende il generatore di numeri casuali *) carica_array; (* riempie l array con numeri casuali *) stampa_array; (* stampa l array *) ordina_array; (* ordina l array *) stampa_array; (* stampa l array *) End. 39
40 Program ordina_array; VAR a, i, temp:integer; m_arr: ARRAY [ ] of integer; (procedure stampa e carica array) Sort dell array: ottimizzazione Procedure ordina_array; (* BUBBLE-SORT *) VAR fatto_scambio: BOOLEAN; fatto_scambio := TRUE; a := 1; While ( a <= 100-1) AND fatto_scambio do Begin fatto_scambio := FALSE; For i:=1 to do if m_arr [i] > m_arr[i+1] then begin temp := m_arr[i+1]; m_arr[i+1] := m_arr[i]; m_arr[i] := temp; fatto_scambio := TRUE; end; a := a + 1; End; END; Begin randomize; (* accende il generatore di numeri casuali *) carica_array; (* riempie l array con numeri casuali *) stampa_array; (* stampa l array *) ordina_array; (* ordina l array *) stampa_array; (* stampa l array *) End. 40
41 Passaggio parametri. È spesso necessario poter trasferire informazioni (variabili) tra procedure. 41
42 PASSAGGIO VARIABILI ALLE PROCEDURE: valore Program prova_procedure; VAR a, b:integer; Procedure PIPPO( b:integer); writeln( b ); END; Procedure PLUTO; Var a: integer; a:=9; pippo( a ); END; Begin PIPPO( 7); PLUTO; End. Cosa stamperà la Writeln? Alla procedura PIPPO la procedura PLUTO ha passato il VALORE della variabile a! Si parla di PASSAGGIO PER VALORE 42
43 PASSAGGIO VARIABILI ALLE PROCEDURE: indirizzo o riferimento Program prova_procedure; VAR a, b:integer; Procedure PIPPO( VAR b:integer); b := 8 ; writeln( b ); END; Procedure PLUTO; Var a: integer; a:=7; pippo( a ); writeln ( a ); END; Begin PIPPO( 7); PLUTO; End. Cosa stamperà la Writeln? Cosa stamperà la Writeln in PLUTO? Alla procedura PIPPO la procedura PLUTO ha passato l INDIRIZZO della variabile a! Si parla di PASSAGGIO PER INDIRIZZO o RIFERIMENTO 43
44 LE FUNZIONI Program prova_procedure; VAR a, b:integer; Function PIPPO ( b : integer ) :integer ; PIPPO := 7 * b ; END; Begin write ( inserire il valore di b ); readln ( b ); a := PIPPO ( b ); writeln ( a ); End. 44
45 LE FUNCTION: SONO SOTTOPROGRAMMI PER RICHIAMARE L ESECUZIONE DI UN INSIEME DI ISTRUZIONI PIÙ VOLTE e DA PUNTI DIVERSI DEL PROGRAMMA che effettuano un calcolo e restituiscono un valore! 45
PASCAL 1. 27/03/2004 Pascal 1 prof. Bruno Franceschini - ITI Bolzano
PASCAL 1 Vediamo gli elementi di base del linguaggio PASCAL, un linguaggio per comunicare al calcolatore una serie di istruzioni, che rappresentano un algoritmo, che sarà in grado di svolgere dopo averle
DettagliLaboratorio di Programmazione(corso A) Laurea in Informatica - A.A. 2000/2001 Docente: A. Lanza
Laboratorio di Programmazione(corso A) Laurea in Informatica - A.A. 2000/2001 Docente: A. Lanza 1.1. Introduzione al linguaggio Pascal Struttura di programma Elementi lessicali: le parole riservate e gli
DettagliINFORMATICA GENERALE Prof. Alberto Postiglione. Università degli Studi di Salerno. UD 3.2b: Programmazione in Pascal (1)
INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno : Programmazione in Pascal (1) PROGRAMMAZIONE: Introduzione al Pascal (1) 14 nov 2011 Dia 2
DettagliAlgoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal
Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi
DettagliINFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Il Linguaggio di Programmazione Pascal
INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno : Programmazione in Pascal (1) PROGRAMMAZIONE: Introduzione al Pascal (1) 14 nov 2011 Dia 2
DettagliUD 3.2b: Programmazione in Pascal (1)
UD 3.2b: Programmazione in Pascal (1) Il Linguaggio di Programmazione Pascal Esistono molti linguaggi di programmazione. Per motivi didattici utilizzeremo una versione ridotta di un linguaggio di programmazione
DettagliPascal: esempi di programmazione
Pascal: esempi di programmazione Problemi elementari di programmazione.................. 2252 a2» 2013.11.11 --- Copyright Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net Somma tra
DettagliLaboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza. Il tipo ARRAY Problemi (calcolo della frequenza, trasposta, )
Laboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza Il tipo ARRAY Problemi (calcolo della frequenza, trasposta, ) Editazione a cura di Bombini T., De Candia P. e Galantino
DettagliIng. Lorenzo Vismara
Ing. Lorenzo Vismara ! "# #!$#%&# '(!)&!*)&#*$# +!, +$-.(( #!((%&#, #!& %&) /$#01&! 0#( 3452 $ 6#( 1 2 &## #!7 #89): #;##( 1? )#&)< $9): #@82 #)AA)#&#&$( #7)& @B && ##@A&#C 7 $C#&7 @B A&#)@#7&#
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Università di Camerino Corso di Laurea in Informatica (12 CFU) I periodo didattico Emanuela Merelli email:emanuela.merelli@unicam.it Argomenti della lezione Elementi di un linguaggio
DettagliUn algoritmo ben fatto deve terminare dopo un numero finito
Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica, e Programmi D. Gubiani 29 marzo 2010 D. Gubiani, e Programmi 1 Esempi di dal
DettagliIL TEOREMA DI BOEHM-JACOPINI
IL TEOREMA DI BOEHM-JACOPINI Un qualunque algoritmo può essere descritto unicamente attraverso le tre strutture: Sequenza Diramazione Ciclo o iterazione Le tre strutture sono complete. Un qualunque linguaggio
DettagliPASCAL: I VETTORI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL. 1, HOEPLI. Informatica
PASCAL: I VETTORI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL. 1, HOEPLI Informatica I dati strutturati: gli array I vettori (o Array) Fino a ora abbiamo memorizzato le informazioni (valori)
DettagliIMPLEMENTARE. le sue variabili devono essere registrabili su memoria le variabili devono poter essere messe in relazione tra loro
IMPLEMENTARE Il modello di un sistema, che descrive una situazione, dovrà avere alcune caratteristiche per essere implementato (i.e. portato) sul calcolatore: le sue variabili devono essere registrabili
DettagliCognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :
PROGRAMMAZIONE (Corsi B e C) Pre-appello di Gennaio 2004 (A.A. 2003/2004) PROGRAMMAZIONE (B e C) S. Straordinaria - Appello di Gennaio (A.A. 2002/2003) 22 Gennaio 2004 ore 11 Aula II di Facoltà (Durata:
DettagliINTRODUZIONE AL LINGUAGGIO DI PROGRAMMAZIONE PASCAL. Per iniziare lo studio del linguaggio di programmazione pascal, consideriamo il seguente esempio.
INTRODUZIONE AL LINGUAGGIO DI PROGRAMMAZIONE PASCAL Per iniziare lo studio del linguaggio di programmazione pascal, consideriamo il seguente esempio. ESERCIZIO: realizzare un algoritmo (in linguaggio di
DettagliCICLO FOR. for contatore:= valore_iniziale to valore_finale do begin istruzione 1; istruzione 2; istruzione n; end;
CICLO FOR Il ciclo FOR è una particolare struttura iterativa che viene utilizzata per ripetere un blocco di istruzioni per un numero di volte che è noto a priori, a differenza del ciclo REPEAT-UNTIL e
DettagliELEMENTI DI PROGRAMMAZIONE E TURBO PASCAL
Liceo Scientifico e Classico S. Trinchese ELEMENTI DI PROGRAMMAZIONE E TURBO PASCAL seminario per la classe IV BS Prof Antonio Cazzato Perché programmare? La programmazione ha una notevole valenza didattica
DettagliCaratteristiche generali del linguaggio Visual Basic
Caratteristiche generali del linguaggio Visual Basic Per ottenere un aiuto contestuale dall help di Visual Basic sulla sintassi di funzioni o, oppure su proprietà, eventi o metodi, basta selezionare la
DettagliProgrammazione con il linguaggio LibreOffice Basic
Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software
DettagliLaboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza
1 Laboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza Le relazioni tra tipi I costrutti selettivi Le istruzioni iterative Un problema (uso di istruzioni iterative) Editazione
DettagliLaboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza
Laboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza Il tipo subrange La sezione di dichiarazione delle variabili Problemi ed esercizi su subrange ed enumerati Editazione
DettagliAlgoritmi, Strutture Dati e Programmi. UD 5.a: Searching (parte 1)
Algoritmi, Strutture Dati e Programmi : Searching (parte 1) Prof. Alberto Postiglione AA 2007-2008 Ricerca di un'informazione in una tabella Determinare se una parola X è presente in un dizionario (cioè
DettagliCognome-Nome:... Matricola...
DIPARTIMENTO di INFORMATICA Corso di Laurea in Informatica Cognome-Nome:..... Matricola... Rispondere sul foglio allegato ad almeno 4 tra i quesiti 1..5 ed al quesito 6. Riportare sul foglio allegato solo
DettagliLa sezione di dichiarazione delle costanti 1.2 I tipi elementari Classificazione dei tipi Il tipo integer Il tipo boolean
Laboratorio di Programmazione A.A. 2000\2001 La sezione di dichiarazione delle costanti 1.2 I tipi elementari Classificazione dei tipi Il tipo integer Il tipo boolean Editazione a cura di: de Pinto E.
DettagliUniversità degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto
Il Pascal (continua) Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2005/2006 Selezione multipla! Nel
DettagliEsercitazioni di Elementi di Informatica
Esercitazioni di Elementi di Informatica Docente: Prof. Angelo Chianese angelo.chianese@unina.it Tutor: Ing. Antonio Picariello antonio.picariello@unina.it Interpreti e Compilatori Interprete Es. Qbasic
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
DettagliLinguaggio Testuale. E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato»
Linguaggio Testuale E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato» Delle volte viene chiamato metalinguaggio, e l algoritmo scritto tramite
Dettagliunità didattica 3 Le strutture condizionali e le strutture iterative
unità didattica 3 Le strutture condizionali e le strutture iterative 1. La struttura condizionale Il Pascal prevede la codifica della struttura condizionale (indicata anche con il nome di struttura dell
DettagliJavascript: il browser
Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di
DettagliPREPARAZIONE PER SECONDA PROVA IN ITINERE Esercizio 1 SULLA MODELLAZIONE DEI DATI
PREPARAZIONE PER SECONDA PROVA IN ITINERE Esercizio 1 SULLA MODELLAZIONE DEI DATI Si definisca il tipo opportuno di dato per memorizzare una tabella che contenga, per ciascuna delle principali valute (dollaro
DettagliVBA Principali Comandi
VBA Principali Comandi Sintassi Significato Esempio Dim As Dichiarazione Dim x As Integer di una variabile Dim , , ,.,
DettagliLezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
DettagliSviluppo di programmi
Sviluppo di programmi FASE 1: Dare un nome al problema partendo dall analisi del problema FASE 2: Scrivere la specifica funzionale FASE 3: Scrittura dell algoritmo FASE 3.1: Introduzione delle variabili
DettagliFondamenti di Informatica T-1
Fondamenti di Informatica T-1 Istruzioni di selezione e tipi enumerativi Tutor: Angelo Feraudo angelo.feraudo2@unibo.it a.a. 2017/2018 Fondamenti di Informatica T-1 Angelo Feraudo 1 / 27 SELEZIONE Permette
DettagliTela (Teaching Language)
Tela (Teaching Language) Paradigma imperativo Dichiarazioni di variabili, costanti, moduli Programma strutturato in moduli innestati Scope statico Passaggio dei parametri per valore Corpo del modulo =
DettagliDescrizione di un algoritmo
Descrizione di un algoritmo Si descrive un algoritmo cercando di sintetizzare il più possibile la sua sequenza di passi; Non si utilizza un linguaggio di programmazione specifico, ma è meglio utilizzare
DettagliQualsiasi programma in C++ segue lo schema:
Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni
DettagliProgrammazione. 1 Introduzione. Tutto per la gloria di Dio.
Programmazione Tutto per la gloria di Dio. 1 Introduzione Un programma è un piano di azione che deve essere eseguito da un esecutore, di solito uno strumento automatico, la maggior parte delle volte un
DettagliProgrammazione a blocchi. Algobuild Prof. Sergio Roselli
Programmazione a blocchi Algobuild Prof. Sergio Roselli Blocchi base Inizio programma I Fine programma F Input IN A Output Esecuzione OUT A A = 5 + 1 L interprete Algobuild Algobuildpermette di trascrivere
DettagliCorso di laurea in Informatica (Triennale) A.A. 2002/ 03 Corso di Programmazione (C) Docente: S. Ferilli II esonero (16 dicembre 02)
Corso di laurea in Informatica (Triennale) A.A. 2002/ 03 Corso di Programmazione (C) Docente: S. Ferilli II esonero (16 dicembre 02) Cognome e Nome: Matricola: Esercizio n.1 Specificare intestazione, nidificazione
DettagliLaboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza
Laboratorio di Programmazione Laurea in Informatica A.A. 2000/2001 Docente: A. Lanza I file esterni Assign flessibile I file di tipo text I/O bufferizzato La procedura page Creazione, Stampa, Travaso,
DettagliEvoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN
LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna
DettagliStrutture di controllo e cicli
AA 2012-2013 IF logico L IF logico rappresenta il tipo piú semplice di istruzione condizionale IF logico L IF logico rappresenta il tipo piú semplice di istruzione condizionale Sintassi IF ( e s p r e
DettagliInformatica (A-K) 5. Algoritmi e pseudocodifica
Vettori e matrici #1 Informatica (A-K) 5. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile & Ambientale A.A. 2011-2012 2 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
DettagliLESSICO E SINTASSI DEL PASCAL
LESSICO E SINTASSI DEL PASCAL Il linguaggio di programmazione Pascal è potente e semplice nello stesso tempo; ciò ne giustifica la scelta, inoltre i nuovi compilatori del linguaggio pascal permettono di
DettagliFondamenti di Informatica T-1. Selezione
Selezione 2 Selezione Permette di differenziare il flusso di controllo a seconda che sia verificata o meno una condizione. Il flusso di controllo si ramifica in due (o più) sequenze di istruzioni alternative.
DettagliSelezioni scolastiche 2018
Selezioni scolastiche 2018 Come funziona lo pseudocodice Lo Staff 4 novembre 2018 Da questa edizione delle fasi scolastiche delle Olimpiadi Italiane di Informatica nella sezione Problemi di Programmazione
DettagliDichiarazioni e tipi predefiniti nel linguaggio C
Politecnico di Milano Dichiarazioni e tipi predefiniti nel linguaggio C Variabili, costanti, tipi semplici, conversioni di tipo. Premessa Programmi provati sul compilatore Borland C++ 1.0 Altri compilatori:
DettagliFondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
DettagliPseudocodice; La miglior soluzione per leggere e capire facilmente gli esercizi di programmazione delle selezioni scolastiche. Lo Staff delle OII
Pseudocodice; La miglior soluzione per leggere e capire facilmente gli esercizi di programmazione delle selezioni scolastiche. Lo Staff delle OII 6 novembre 2018 Come anticipato nell ultima revisione del
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Strutture di Dati Parte 4 Conclusioni G. Mecca M. Samela Università della Basilicata Strutture di Dati: Conclusioni >> Sommario Sommario Ricapitolazione Alcune
DettagliSTRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER
1 STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER Un computer e una macchina che riceve in ingresso delle informazioni, le elabora secondo un determinato procedimento e produce dei risultati che vengono
DettagliFondamenti di Informatica
Vettori e matrici #1 Le variabili definite come coppie sono dette variabili scalari Fondamenti di Informatica 5. Algoritmi e pseudocodifica Una coppia è una variabile
DettagliCome ragiona il computer. Problemi e algoritmi
Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Per risolvere il problema
DettagliLezione 5 e 6. Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza. Valentina Ciriani ( ) Laboratorio di programmazione
Lezione 5 e 6 - Concetto di blocco - Controllo del flusso di un programma - Costrutti per la scelta if e switch - Costrutti while e for - Operatori in C Fabio Scotti (2004-2009) Laboratorio di programmazione
DettagliPaolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09
Linguaggi procedurali Paolo Bison Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09 Linguaggi procedurali, Paolo Bison, FI08, 2008-09-29 p.1 Linguaggi procedurali classe
DettagliUniversità degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto
Il Pascal (continua) Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2005/2006 Le procedure! Spesso, soprattutto
DettagliProgrammazione 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'
DettagliPASCAL. 05/04/2012 Pascal 1
PASCAL 05/04/2012 Pascal 1 Per iniziare Compariranno vari menu, ma quelli principali sono tre File in cui troviamo: New per creare un nuovo documento di lavoro, Load per aprire lavori già salvati, Save
DettagliRisoluzione di un problema
Algoritmi Risoluzione di un problema Descrizione di un problema! Individuazione di un ALGORITMO! Metodo risolutivo (progetto) Introduzione 2 Algoritmo Sequenza finita di mosse che risolve in un tempo finito
DettagliRELAZIONE DELLA PROVA DI LABORATORIO DI INFORMATICA
RELAZIONE DELLA PROVA DI LABORATORIO DI INFORMATICA Anno scolastico Lab informatica AULA n 35 Data inizio svolgimento Progr. relazione primo trimestre secondo pentamestre Cognome e Nome DATI DELLO STUDENTE
DettagliUniversità degli Studi di Ferrara
Università degli Studi di Ferrara Corso di Laurea in Matematica - A.A. 2018-2019 Programmazione Lezione 5 Controllo di Flusso Docente: Michele Ferrari - michele.ferrari@unife.it Informazioni Inizio tutorato
DettagliPASCAL - Record. Il linguaggio PASCAL consente l utilizzo dei RECORD
PASCAL - Record Il linguaggio PASCAL consente l utilizzo dei RECORD Si tratta di un contenitore che descrive un oggetto composto da più dati di tipo diverso. 1 Un esempio: IL LIBRO Pensiamo ad una variabile
DettagliAlgoritmi e basi del C
Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 24 Agosto 2015 Benvenuti nel fantastico mondo del C 2 Il primo programma: ciao mondo 3 Ciao Mondo: stdio.h Come
DettagliInformatica Generale Andrea Corradini Ancora sui linguaggi di programmazione
Informatica Generale Andrea Corradini 18 - Ancora sui linguaggi di programmazione Sommario Principali componenti di un linguaggio di programmazione Variabili e costanti Strutture dati: array e record Strutture
DettagliArray in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica
Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo
DettagliFondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Laurea in Ingegneria ivile e Ingegneria per l ambiente e il territorio Linguaggio : Le basi Stefano
DettagliLa Programmazione. Cos è la programmazione? Concetti preliminari
La Programmazione Cos è la programmazione? Concetti preliminari 1 Sommario La programmazione, questa sconosciuta Programmiamo Macchine Astratte Linguaggi di basso e alto livello e loro implementazione
DettagliPascal: introduzione. «a2» Copyright Daniele Giacomini --
a2» 2013.11.11 --- Copyright Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net Pascal: introduzione Struttura fondamentale.................................. 2205 Istruzioni Pascal.....................................
DettagliJavascript: il browser
Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di
DettagliPag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi
1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni La formalizzazione
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Strutture di Controllo Parte 4 Conclusioni G. Mecca M. Samela Università della Basilicata Strutture di Controllo >> Sommario Sommario Ricapitolazione Alcune
DettagliI costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni
Classi di istruzioni In maniera simile a quanto fatto per i dati, un linguaggio mette a disposizione dei costrutti per realizzare la parte esecutiva dell algoritmo. Questa consiste di: Leggi i valori di
DettagliVARIABILE STRUTTURATA
DISPENSE DI PROGRAMMAZIONE Modulo 3 Parte 2 Ha collaborato alla editazione Giuseppe Porcelli VARIABILE STRUTTURATA Una variabile di tipo strutturato possiede più di una singola COMPONENTE. Per definire
DettagliBreve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN
Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...
DettagliElementi di Informatica
Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica Algoritmi, e Programmi D. Gubiani 29 marzo 2010 D. Gubiani Algoritmi, e Programmi
DettagliDispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dall'Algoritmo al Programma
Istituto Tecnico Statale Commerciale Dante Alighieri Cerignola (FG) Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS Dall'Algoritmo al Programma Pr.: 002 Ver.:1.0 Autore: prof. Michele Salvemini
DettagliVBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.
Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Elementi del linguaggio e primi programmi
DettagliLe basi del linguaggio Java
Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una
DettagliALESSANDRO E ALESSIO SONO GLI AUTORI DEL SEGUENTE PROGRAMMA CHE TROVA LA PALLINA DIVERSA IN QUATTRO PASSAGGI.
ALESSANDRO E ALESSIO SONO GLI AUTORI DEL SEGUENTE PROGRAMMA CHE TROVA LA PALLINA DIVERSA IN QUATTRO PASSAGGI. uses crt; var dati : array [1..12] of longint; somma1 : array [ 1..3 ] of longint; dati2 :
DettagliInformatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
DettagliRappresentazione dell informazione
Rappresentazione dell informazione Codifica dei numeri Rappresentazioni in base 2, 8, 10 e 16 Rappresentazioni M+S, C1 e C2 Algoritmi di conversione di base Algoritmi di somma, moltiplicazione e divisione
Dettagli3. La sintassi di Java
pag.9 3. La sintassi di Java 3.1 I tipi di dati statici In Java, come in Pascal, esistono tipi di dati statici predefiniti e sono i seguenti: byte 8 bit da -128 a 127 short 16 bit coincide con l integer
DettagliPROGRAMMAZIONE STRUTTURATA
PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:
DettagliIstruzioni condizionali di diramazione in Fortran 90
Istruzioni condizionali di diramazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: Istruzioni di diramazione DIS - Dipartimento
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere
DettagliAlgoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21
DettagliLa formalizzazione dell informazione: Dati e Diagrammi di Flusso
La formalizzazione dell informazione: Dati e Diagrammi di Flusso Codifica degli algoritmi Algoritmo formulato per essere comunicato tra esseri umani chiaro, sintetico e intuitivo codificato in linguaggi
Dettagli1 introdurre le monete per l importo necessario. 2 selezionare la quantità di zucchero. 3 selezionare la bevanda desiderata
Esempi di Problema: Prendere un Caffè al Distributore Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica, e Programmi D. Gubiani
DettagliUniversità degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto
Il Pascal (continua) Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2005/2006 Operatori! I segni di operazione
DettagliFortran. Funzioni e Subroutine.
Fortran Funzioni e Subroutine http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Dal Fortran II del 1958, Fortran consente di
DettagliAlgoritmi e Strutture Dati A-L. Informatica Esercitazioni 1
Algoritmi e Strutture Dati A-L. Informatica Esercitazioni 1 Gabriele D Angelo {21, 22}/02/2006 1 Programmazione Pascal, esempi Come da tradizione incominciamo con un esempio banale
DettagliCostanti e Variabili
Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli
DettagliUn esempio per cominciare. Inizio e fine di un programma. La somma di 3 numeri PASCAL ANSI C. Regole sintattiche
Un esempio per cominciare La somma di 3 numeri Vs ANSI PROGRAM SOMMA; VAR A,B,,d:REAL; BEGIN (* Inizializzazione di A,B, *) READLN(); A:5.; B:7.; (* alcolo della somma tra A,B e *) d:a+b+; (* Stampa del
DettagliQualsiasi programma in C++ segue lo schema: Variabili
Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni
DettagliAlgoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 11 Marzo 2014 Informazione: dato + significato Che giorno è oggi? 14 Marzo o anche
Dettagli