Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Algoritmi e Programmazione in un Linguaggio di Alto Livello - Prof. Basile, Appunti di Informatica Legale

Questo documento introduttivo spiega come risolvere problemi automaticamente attraverso l'uso di algoritmi espressi in un linguaggio di programmazione. I metodi risolutivi, i linguaggi di programmazione, e i principi base di un programma, inclusi standard input/output, variabili, tipi di variabile, operatori, e identificatori. Anche una panoramica delle istruzioni di assegnamento, input/output (scanf e printf), istruzioni composite, e istruzioni condizionali e iterative.

Tipologia: Appunti

2020/2021

Caricato il 23/04/2021

Gabriella99991
Gabriella99991 🇮🇹

4.3

(3)

25 documenti

1 / 3

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
CODIFICA DEGLI ALGORITMI IN UN LINGUAGGIO DI ALTO LIVELLO
Larisoluzionediproblemiinmodoautomaticorichiedelamanipolazionedell’informazione
Ilmetodorisolutivo:cioèl’insiemediattivitàchecipermettonodiotteneredaidaticheabbiamo
(datiiningresso)l’informazionechecerchiamo.
Seilproblemadeveessererisoltoautomaticamenteidatiiningressoeilmetodorisolutivodevono
essereespressiinunlinguaggiocomprensibileallostrumentodicalcolo:
Metodorisolutivo=Algoritmo
Linguaggiocomprensibileallostrumentodicalcolo=Linguaggiodiprogrammazione
Strumenti:
Conoscereletecnologie-ilinguaggidiprogrammazione
Conoscerelemetodologie-comeusareilinguaggidiprogrammazione
L’insiemediregolechedescrivonounalgoritmoquandosonoespresseinunlinguaggiodi
programmazionedefinisconoquellochesichiamaprogramma
UNALGORITMO(uninsiemediregoleperrisolvereinmodoautomaticounproblema)deve
avereleseguentiproprietà:
Non Ambiguità:leregoledevonoessereinterpretabiliinmodounivocodall’esecutore
dell’algoritmoeirisultatinondevonovariareinfunzionedell’esecutore(determinismo)
Eseguibilità:l’esecutoredeveessereingrado,conlerisorseadisposizione,dieseguireogni
singolaregola
Finitezza:l’esecuzionedell’algoritmodeveprendereuntempofinito,cioèl’algoritmodeve
esseredescrittodaunnumerofinitodipassielementariedeveeseguireunnumerofinitodi
operazioni(deveterminareprimaopoi)
LA STRUTTURA DI UN PROGRAMMA
Lastrutturageneralediunprogrammaècompostadatreparti:
Una intestazione(serveperdichiarareilnomediunprogramma)
La dichiarazione delle variabili(serveperdefiniretuttelevariabiliutilizzatedalprogramma)
Le istruzioni(rappresentanoipassidell’algoritmorisolutivopropostodescrittipermezzodiun
linguaggiodiprogrammazione)
Elementi e terminologia
StandardInput,StandardOutput
Celledimemoriaovariabili
Tipi di variabile
Interi:1,370,-12
pf3

Anteprima parziale del testo

Scarica Algoritmi e Programmazione in un Linguaggio di Alto Livello - Prof. Basile e più Appunti in PDF di Informatica Legale solo su Docsity!

CODIFICA DEGLI ALGORITMI IN UN LINGUAGGIO DI ALTO LIVELLO

 La risoluzione di problemi in modo automatico richiede la manipolazione dell’informazione  Il metodo risolutivo: cioè l’insieme di attività che ci permettono di ottenere dai dati che abbiamo (dati in ingresso) l’informazione che cerchiamo. Se il problema deve essere risolto automaticamente i dati in ingresso e il metodo risolutivo devono essere espressi in un linguaggio comprensibile allo strumento di calcolo: Metodo risolutivo = Algoritmo Linguaggio comprensibile allo strumento di calcolo = Linguaggio di programmazione Strumenti: Conoscere le tecnologie - i linguaggi di programmazione Conoscere le metodologie - come usare i linguaggi di programmazione L’insieme di regole che descrivono un algoritmo quando sono espresse in un linguaggio di programmazione definiscono quello che si chiama programma UN ALGORITMO (un insieme di regole per risolvere in modo automatico un problema) deve avere le seguenti proprietà:  Non Ambiguità : le regole devono essere interpretabili in modo univoco dall’esecutore dell’algoritmo e i risultati non devono variare in funzione dell’esecutore (determinismo)  Eseguibilità : l’esecutore deve essere in grado, con le risorse a disposizione, di eseguire ogni singola regola  Finitezza : l’esecuzione dell’algoritmo deve prendere un tempo finito, cioè l’algoritmo deve essere descritto da un numero finito di passi elementari e deve eseguire un numero finito di operazioni (deve terminare prima o poi) LA STRUTTURA DI UN PROGRAMMA La struttura generale di un programma è composta da tre parti:  Una intestazione (serve per dichiarare il nome di un programma)  La dichiarazione delle variabili (serve per definire tutte le variabili utilizzate dal programma)  Le istruzioni (rappresentano i passi dell’algoritmo risolutivo proposto descritti per mezzo di un linguaggio di programmazione) Elementi e terminologia Standard Input, Standard Output Celle di memoria o variabili  T ipi di variabile  Interi : 1, 370, -

 Caratteri: ‘a’ , ‘p’ , ‘3’  Stringhe: ʺTestʺ, ʺProvaʺ, ʺQuesta è una stringaʺ Test , ʺTestʺ, ʺProvaʺ, ʺQuesta è una stringaʺ ʺTestʺ, ʺProvaʺ, ʺQuesta è una stringaʺ Prova , ʺTestʺ, ʺProvaʺ, ʺQuesta è una stringaʺ ʺTestʺ, ʺProvaʺ, ʺQuesta è una stringaʺ Questa è una stringa ʺTestʺ, ʺProvaʺ, ʺQuesta è una stringaʺ  Booleane: VERO o FALSO  Operatori:  Standard +, -, /diviso, per, %resto della divisione  Operatori logici !, &&, || (Not, AND e OR)! not Vera quando il singolo operando utilizzato è falso o viceversa/ && and Vera se e solo se entrambi i valori sono veri/ || or Vera se uno dei due valori è vero*  operatori di relazione (==, !=, , <=, >=), Operatori di confronto Gli operatori di confronto consentono di determinare il valore di due espressioni in base al confronto tra i loro valori. Un uguale = ha solamente valore di assegnamento. == Uguale 5 == 5 Vera se entrambi i valori sono uguali != Non uguale 4 != 5 Vera se i due valori non sono uguali !== Non identico 4 !== ‘4’ Vera se i due valori sono diversi o se i tipi sono diversi

Maggiore 5 > 4 Vera se il valore di sinistra è maggiore di quello di destra < Minore 4 < 5 Vera se il valore di sinistra è minore di quello di destra = Maggiore o uguale 5 >= 4 Vera se il valore di sinistra è maggiore o uguale di quello di destra <= Minore o uguale 4 <= 5  Identificatori simbolici (sequenza di caratteri)  Identificatori predefiniti e riservati (Es scanf, printf)  Un programma nel nostro ‘‘pseudoC’’ è composto da:  un’intestazione seguita da  Dichiarazione delle variabili  una sequenza di istruzioni racchiusa tra i simboli { e }.  L’intestazione è costituita dall’identificatore predefinito main seguito da una coppia di parentesi ( ) (per il momento vuote)  Le istruzioni sono frasi del linguaggio di programmazione; ognuna di esse termina con il simbolo ‘;’ LE PRINCIPALI ISTRUZIONI  Istruzione di assegnamento X = 23;