vuoi
o PayPal
tutte le volte che vuoi
Modulo A
- Fasi della programmazione
- Algoritmo ➔ Processo Risolutivo
- Codifica
- Compilazione
- Algoritmo ➔ Processo Risolutivo
Linguaggio di programmazione
- 2 possibilità
- Compilazione ➔ linguaggio che permette di ottenere un eseguibile
- Interpretazione
- Script ➔ un linguaggio per definire programmi eseguibili all’interno di altri programmi
- Istruzioni
- Semplici ➔ WRITELN ➔ induzione, sposta il cursore
- Composte - non terminano, ma iniziato con ;)
Costanti
- Stringhe ➔ Insieme di caratteri
- Concatenazione 2 stringhe ➔ "2" + "1" = "21"
- Numeri
- Interi
- Reali
- Booleani ➔ O = Falso, 1 = Vero
- Operatori logici
- Operatori di confronto
- Stringhe
- "abete" > "abato"
- 125 > 121
Funzioni
- Function ➔ individualizzazione funzione
- Return ➔ è una parola chiave e ciò che segue è l'espressione il cui valore è il risultato della funzione
- Argomenti ➔ parametri formali
- Invocazione ➔ parametri attuali
Programma ➔ nei linguaggi di programmazione, il programma è una funzione che ha come argomenti dati digitati in input e opportunamente convertiti.
VARIABILI - permettono di introdurre dei nomi simbolici a cui sono associati dei valori. Il valore associato ad una variabile può cambiare durante l'esecuzione.
- 1 - Nome serve ad identificarla
- 2 - VALORE: valore associato
- 3 - LOCALIZZAZIONE DI MEMORIA: in cui il valore è memorizzato
- 4 - TIPO
NOTE - L'IDENTIFICATORE - sequenza di lettere, cifre e caratteri speciali. Lettere minuscole e maiuscole distinte.
DICHIARAZIONI DI VARIABILI
- SINTASSI: var identificatore = espressione
- KEYWORD
In OS non è necessario inizializzare le variabili - var x - NaN
STATO - AMBIENTE: Insieme di variabili e funzioni.
SPECIFICITA' DI UN PROBLEMA CONSISTE NELL'OSSERVAZIONE DI UNO STATO INIZIALE (determinare dati) E DI UNO STATO FINALE.
SOSTITUTO DEL CONTENUTO DELLE LOCATION
ASSEGNAZIONE
- Sintassi: identificatore = espressione
- Semantica: modifica nello stato risultante del valore della variabile di nome (identificatore) dandogli il valore assegnato
PROCEDURA
Serie di istruzioni che fanno riferimento allo stato corrente delle "macchine".
NaN
- = NaN ➔ FALSE | (NaN => False ) | ! NaN = True
Sintassi
- var nomeArray = [];
- var nomeArray = new Array();
Elementi separati dalle virgole
vet[5] = elemento in posizione 5, il 6° elemento
vet[i] = i>0 necessariamente
Heap — luogo in cui sono memorizzati gli array. Reference — indirizzo in memoria che individua il luogo della heap in cui è memorizzato l’array.
confronto array —> false
nomeArray.length = lunghezza array
Ordinamento a bolle —> gli elementi più leggeri all'inizio
Procedure
- grazie alla sintassi con attribuzione le modifiche dello stato di esito non categorico Return o se la categoria errore non è seguita da un’espressione
- Astrazione di istruzioni
- Modifiche sul parametro formale modificano il parametro attuale
- In JS le funzioni possono anche restituire array come risultato passando a elemento la sua dimensione
- Array vuoto è ordinato per definizione e anche l’array di 1 elemento
nomeArray.splice
posizione valore inseriti al posto di quelli rimossi
Simbolo per cui esiste arco ⇒ cambio stato
Lettura input
Simbolo per cui non esiste arco ⇒ fallimento
Automa ⇒ quintupla (Λ, Σ, S, F, δ)
- Λ insieme di insiemi, alfabeto di L
- Σ insieme totale
- S ⊆ Σ insieme iniziale
- F ⊆ Σ sottoinsieme degli stati in cui l'automa si arresta
- δ ⊂ (Σ × Λ) × Σ = transizione relazionale
Riconoscimento stringa
L(G) = {t} ⊆ Λⁿ t ∧ A accetta α, ∀l
Automa non deterministico
⇒ un solo totale di destinazione
Equivalenti
⇒ riconoscono lo stesso linguaggio
Passaggio a deterministico
- (Λ, Σn, Sn, Fδ)
- Ss ⇒ {S1 ,S2}
- Fδ = {Si | Si ∈ P(Σn) ∧ Sn ∩ F ≠ ∅}
- Λ = alfabeto
- Σ = alfabeto
Prontezza e enumerazione nodale
Dei simboli che ottengono a destra della codificazione avvia la sintassi e i simboli
Sintattica espressione questura
- V = insieme di stringhe formali ovemmete non dominali
- S ∈ V = con simbolo iniziale
- P = predizioni