




























Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Una introduzione alle istruzioni di base per la descrizione e la progettazione di algoritmi. Viene discusso il concetto di raffinamento, la progettazione top-down, la differenza tra linguaggi di alto e basso livello, e la struttura dei programmi. Inoltre, vengono presentati costrutti condizionali a più vie e iterativi, nonché la modularità e l'uso di sottoprogrammi.
Tipologia: Appunti
1 / 36
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!





























Università degli Studi “Suor Orsola Benincasa” Facoltà di Scienze della Formazione Corso di Laurea in Scienze e Tecniche di Psicologia Cognitiva A.A. 2017/ Prof. Roberta Presta
u … capire preliminarmente se il problema ammette soluzioni u … nel caso ne ammetta, individuare un metodo risolutivo (algoritmo) u …. esprimere tale metodo in un linguaggio comprensibile all'esecutore a cui è rivolto
u Il più semplice tra essi è quello che stabilisce che le azioni devono essere svolte una dopo l'altra ( sequenza ) u Un altro costrutto comune ci consente di indicare che alcune azioni devono essere svolte solo se si verificano determinate condizioni ( selezione ) u Esempio: la frase "se la parola è sbagliata, allora correggi, altrimenti non fare niente" prescrive la correzione soltanto in presenza di un errore. u Un ultimo costrutto ci dice che alcune azioni devono essere ripetute un certo numero di volte ( iterazione ) u Esempio: «per ogni parola del rigo, fai le seguenti operazioni», «ripeti le operazioni da 1 a 4 fino alla terminazione del testo»
u Elementari: istruzioni note all’esecutore (l’esecutore è direttamente in grado di eseguirle); u non elementari: quelle non note all'esecutore (devono essere scomposte in istruzioni semplici per poter essere eseguite dall’esecutore)
u Si parte dalla sua descrizione in linguaggio naturale u Si esegue il processo di raffinamento in modo da esprimere tutte le istruzioni non elementari in termini di istruzioni appartenenti al “repertorio” dell’esecutore u Si traduce quindi l’algoritmo in un linguaggio di programmazione comprensibile all’esecutore, ottenendo così il programma vero e proprio
u la costruzione di ogni algoritmo in tali linguaggi richiede un gran numero di comandi ed è particolarmente onerosa
u Analisi del problema : comprensione del “cosa” si deve fare e definizione dei requisiti della soluzione u Progettazione della soluzione : comprensione del «come» si deve costruire la soluzione (algoritmo) u Programmazione: implementazione della soluzione nel linguaggio di programmazione scelto u Verifica: fase di test in cui si controlla che la soluzione costruita soddisfi i requisiti!
u Rappresenta l’informazione da manipolare tramite il programma u Ad essa vengono associati: u un nome identificativo u un tipo u un’area di memoria atta a contenere un valore di quel tipo u la dimensione di tale area e le relative regole d’uso di tale area dipendono dal tipo della variabile
u Insieme di valori a cui sono associati delle operazioni definite su essi u Esempio: il tipo «numero intero», il tipo «carattare», il tipo «numero reale», …
u Costrutti di sequenza u Costrutti di selezione o costrutti condizionali u A due vie o a più vie u Costrutti di iterazione