Introduzione alla programmazione strutturata

Gaetano A. Lanzarone, Marco Maiocchi, Roberto Polillo

Introduzione alla programmazione strutturata

Il caso del Fortran, Cobol e Assembler

Edizione a stampa

36,50

Pagine: 224

ISBN: 9788820448691

Edizione: 5a edizione 1986

Codice editore: 1290.4

Disponibilità: Fuori catalogo

Una guida concettuale e operativa alla programmazione strutturata, diretta tanto a chi si accosta per la prima volta alla programmazione quanto a chi ha maturato un'esperienza tradizionale in questa attività.

Nei primi capitoli, dopo una breve introduzione ai concetti fondamentali della programmazione, vengono definiti gli strumenti linguistici atti a rappresentare algoritmi in modo ordinato. In particolare, viene presentato un insieme flessibile di costruiti di controllo per strutturare i programmi, indicandone per ciascuno e comparativamente il campo di applicabilità e illustrando come essi si possano realizzare in alcuni dei più diffusi linguaggi procedurali correnti, quali il Fortran, il Cobol e un Assembler tipico.

Nei capitoli successivi vengono affrontati gli aspetti relativi all'introduzione sistematica di commenti nel testo di un programma, che esprimono il significato funzionale di una porzione di codice o lo stato della computazione in particolari punti del programma. Viene fornito, a partire dalle strutture di controllo introdotte, uno standard di documentazione preciso seppure non vincolante per il programmatore. Si mostra poi come tali asserzioni possono essere usate a base di una verifica, intuitiva, della congruenza logica delle varie parti di programma, e si specificano e illustrano delle regole informai, che possono essere seguite per la revisione della consistenza di un programma scritto con i costruiti di controllo introdotti.

Negli ultimi capitoli viene trattato il problema della costruzione di programmi più complessi, secondo il metodo della specificazione per successivi livelli di dettaglio. Viene mostrato come impiegare gli strumenti linguistici prima considerati per attuare un procedimento che, a partire da un problema dato, conduca gradualmente e in modo controllato, attraverso successive approssimazioni, fino a un testo strutturato e documentato che costituisca il programma desiderato.

Prefazione, di Gianni Degli Antoni
1. Il concetto di algoritmo
1.1. Introduzione
1.2. Operazioni
1.3. Sequenze di esecuzione
1.4. La specificazione di un algoritmo
1.5. Istruzioni e schemi di controllo
1.6. Istruzioni elementari e istruzioni non elementari
1.7. Variabili ed istruzioni di assegnamento
1.8. Strutture di dati
1.9. Costrutti di controllo
1.10. Programmi e linguaggi di programmazione
2. Le strutture di controllo
2.1. Introduzione
2.2. Sequenza
2.3. Selezione (selezione binaria, selezione n-aria, selezione per casi)
2.4. Iterazione (iterazioni enumerative, non enumerative, a più uscite)
2.5. Nidificazione di strutture
2.6. Un esercizio di traduzione
3. Alcuni esempi
3.1. Introduzione
3.2. Ricerca in una sequenza
3.3. Fusione di due sequenze ordinate
3.4. Ordinamento per interscambi
4. Equivalenza e completezza
4.1. Introduzione
4.2. Equivalenza ed equivalenza funzionale
4.3. Raffronto fra le strutture di controllo
4.4. Potenza espressiva (il linguaggio a salti, il teorema di Jacopini-Bóhm)
5. Schemi di controllo guidati da eventi
5.1. Introduzione
5.2. Selezione guidata da eventi
5.3. Iterazione interrotta da eventi
5.4. Esempi
6. Traduzione delle strutture di controllo in Fortran, Cobol e Assembler
6.1. Introduzione
6.2. La traduzione in Fortran
6.3. La traduzione in Cobol
6.4. La traduzione in Assembler
6.5. Strumenti per la traduzione automatica
7. Motivazioni e asserzioni
7.1. Introduzione
7.2. Motivazioni
7.3. Asserzioni
7.4. Asserzioni invarianti
7.5. Un esempio: ricerca binaria
7.6. Relazioni fra asserzioni, assegnamenti e test
7.7. Struttura del testo di un programma
7.8. Esempi
8. Correttezza e verifiche informali di correttezza
8.1. Introduzione
8.2. Regole per la dimostrazione di correttezza (correttezza della sequenza, della selezione binaria, della selezione per casi, delle iterazioni non enumerative, delle iterazioni enumerative, delle iterazioni a più uscite, dell'Iterazione interrotta da eventi, della selezione guidata da eventi)
8.3. Un esempio di dimostrazione di correttezza per livelli
8.4. Verifiche informali di correttezza
8.5. Terminazione
9. Il processo di costruzione di un programma: lo sviluppo top-down
9.1. Introduzione
9.2. Il solitario del ferroviere: una ristesura
9.3. La generazione dei numeri primi: un problema di sintesi dell'algoritmo
9.4. La documentazione e gli standard di codifica
10. Strumenti per la programmazione top-down in Fortran, Cobol, Assembler
1 0.1. La PERFORM ed i predicati
10.2. Uno standard di codifica
11. Un esempio conclusivo
11.1. Introduzione
11.2. La gestione dei movimenti di magazzino
Appendice


Collana: Quaderni di informatica

Livello: Testi per professional