• Non ci sono risultati.

Fondamenti di Informatica

N/A
N/A
Protected

Academic year: 2021

Condividi "Fondamenti di Informatica"

Copied!
52
0
0

Testo completo

(1)

Fondamenti di Informatica

Introduzione ad AlgoBuild

Prof. Christian Esposito

Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17

Introduzione ad AlgoBuild

(2)

Introduzione ad AlgoBuild:

OUTLINE

• Caratteristiche

• Come si presenta

• Utilizzo del blocco di output

Esempio

• Utilizzo dei blocchi di input, output ed esecuzione

Esempio

Introduzione ad AlgoBuild 02/52

(3)

Caratteristiche – 1/3

• Fonte

• https://algobuild.com/it/index.html

Introduzione ad AlgoBuild 03/52

(4)

Caratteristiche – 2/3

• Con AlgoBuild è possibile disegnare in maniera semplice ed efficace diagrammi di flusso

• AlgoBuild permette anche di tradurre i diagrammi di flusso in pseudo-codice

Maggiori informazioni

• https://algobuild.com/it/index.html

Introduzione ad AlgoBuild 04/52

(5)

Caratteristiche – 3/3

• Dove reperirlo?

• AlgoBuild è scaricabile gratuitamente

• L’indirizzo da cui può essere scaricato è

• https://algobuild.com/it/download.html

La versione stabile attualmente è la 0.75

Introduzione ad AlgoBuild 05/52

(6)

Come si Presenta

Introduzione ad AlgoBuild 06/52

(7)

Come si Presenta

Diagramma di flusso

Introduzione ad AlgoBuild 07/52

(8)

Come si Presenta

Pseudo-codice

Introduzione ad AlgoBuild 08/52

(9)

Come si Presenta

Pannello di Output

Introduzione ad AlgoBuild 09/52

(10)

Come si Presenta

Pannello delle variabili

Introduzione ad AlgoBuild 10/52

(11)

Come si Presenta

Barra strumenti

Introduzione ad AlgoBuild 11/52

(12)

Esempio 1: “Hello, World!” – 1/13

• Iniziamo ad utilizzare AlgoBuild con l’esempio Hello, World!

Hello, World! mostra semplicemente la stringa

“Ciao, Mondo!”

• Storicamente, molti manuali di programmazione usano l’esempio “Hello, world!” per mostrare lessico, sintassi e semantica basilare di un dato linguaggio di programmazione

Introduzione ad AlgoBuild 12/52

(13)

Esempio 1: “Hello, World!” – 2/13

• Nell’area del diagramma di flusso possiamo notare i due blocchi di inizio (START) e fine (END)

Sono inseriti automaticamente da AlgoBuild

Introduzione ad AlgoBuild 13/52

(14)

Esempio 1: “Hello, World!” – 3/13

Posizioniamoci con il mouse sulla freccia che collega lo START e l’END del nostro diagramma di flusso

Introduzione ad AlgoBuild 14/52

(15)

Esempio 1: “Hello, World!” – 4/13

Cliccando su «NEW», ci verranno proposte diverse alternative per l’inserimento di un nuovo blocco

Introduzione ad AlgoBuild 15/52

(16)

Esempio 1: “Hello, World!” – 5/13

Selezioniamo Nuovo Output

Introduzione ad AlgoBuild 16/52

(17)

Esempio 1: “Hello, World!” – 6/13

Selezioniamo Nuovo Output

• Ci verrà richiesto qual è l’output che vogliamo mostrare

Introduzione ad AlgoBuild 17/52

(18)

Esempio 1: “Hello, World!” – 7/13

• Scriviamo la stringa ‘‘Ciao, Mondo!’’, poi

• Clicchiamo su OK

Oppure premiamo il tasto Invio della tastiera

Introduzione ad AlgoBuild 18/52

(19)

Esempio 1: “Hello, World!” – 8/13

Ecco il nostro diagramma di flusso

Introduzione ad AlgoBuild 19/52

(20)

Esempio 1: “Hello, World!” – 9/13

• AlgoBuild ha contestualmente generato anche lo pseudo-codice

• Ecco cosa ci presenterà l’area preposta

Introduzione ad AlgoBuild 20/52

(21)

Esempio 1: “Hello, World!” – 10/13

• Possiamo anche modificare il nome del diagramma di flusso

Cliccando sul blocco START oppure END

• Scrivendo il nome che vogliamo assegnare al diagramma

Introduzione ad AlgoBuild 21/52

(22)

Esempio 1: “Hello, World!” – 11/13

• Possiamo modificare anche il nome del diagramma di flusso

Cliccando sul blocco START oppure END

• Scrivendo il nome che vogliamo assegnare al diagramma

Ad esempio, lo chiamiamo helloworld

Introduzione ad AlgoBuild 22/52

(23)

Esempio 1: “Hello, World!” – 12/13

NOTA IMPORTANTE

Per inserire un nuovo blocco dobbiamo sempre cliccare sulla freccia che collega i due blocchi tra i quali vogliamo inserire un nuovo blocco

Introduzione ad AlgoBuild 23/52

(24)

Esempio 1: “Hello, World!” – 13/13

• L’esecuzione…

• Ora che il nostro diagramma è stato generato, possiamo simulare la sua esecuzione tramite AlgoBuild

Comandi per la gestione dell’esecuzione

Introduzione ad AlgoBuild 24/52

(25)

Esempio 1: “Hello, World!” – 13/13

• L’esecuzione…

• Ora che il nostro diagramma è stato generato, possiamo simulare la sua esecuzione tramite AlgoBuild

Serve ad avviare l’esecuzione delle istruzioni

Introduzione ad AlgoBuild 25/52

(26)

Esempio 1: “Hello, World!” – 13/13

• L’esecuzione…

• Ora che il nostro diagramma è stato generato, possiamo simulare la sua esecuzione tramite AlgoBuild

Serve a mettere in pausa l’esecuzione

Introduzione ad AlgoBuild 26/52

(27)

Esempio 1: “Hello, World!” – 13/13

• L’esecuzione…

• Ora che il nostro diagramma è stato generato, possiamo simulare la sua esecuzione tramite AlgoBuild

Serve ad interrompere l’esecuzione

Introduzione ad AlgoBuild 27/52

(28)

Esempio 1: “Hello, World!” – 13/13

• L’esecuzione…

• Ora che il nostro diagramma è stato generato, possiamo simulare la sua esecuzione tramite AlgoBuild

• AlgoBuild permette di simulare l’esecuzione anche passo passo

• In questo caso sarà necessario cliccare ogni volta su per eseguire l’istruzione successiva

Introduzione ad AlgoBuild 28/52

(29)

Esempio 1: “Hello, World!” – 13/13

• L’esecuzione…

• Ora che il nostro diagramma è stato generato, possiamo simulare la sua esecuzione tramite AlgoBuild

• AlgoBuild permette di simulazione l’esecuzione, anche passo passo

• Possiamo anche decidere il tempo (in millisecondi) che intercorre tra ogni istruzione eseguita

Introduzione ad AlgoBuild 29/52

(30)

Esempio 1: “Hello, World!” (2)

DEMO Esecuzione «Hello, World!» (Tempo passo: 5000ms, ovvero 5 secondi)

Introduzione ad AlgoBuild 30/52

(31)

• Cliccando con il tasto sinistro su una specifica istruzione apparirà il menu contestuale che consente di

Modificare l’istruzione selezionata

Copiare l’istruzione

Tagliare l’istruzione (utile per spostarla da una parte ad un’altra, utilizzando i comandi Taglia e Incolla)

Modificare un’Istruzione

AlgoBuild: Strutture iterative e selettive 31/52

(32)

Operatore Descrizione

< Minore

<= Minore o uguale

> Maggiore

>= Maggiore o uguale

== Uguale

!= Diverso

Operatore Descrizione

+ Addizione

- Sottrazione

* Moltiplicazione

/ Divisione

% Resto della divisione intera

AlgoBuild:

Operatori Artimetici, Relazionali e Logici

Operatori Aritmetici

Operatori Relazionali

Operatore Descrizione

&& AND

|| OR

! NOT

Operatori Logici

Introduzione ad AlgoBuild 32/52

(33)

Esempio 2: Perimetro Rettangolo – 1/5

P = 2 * (L1 + L2)

L1

L2

Introduzione ad AlgoBuild 33/52

(34)

Esempio 2: Perimetro Rettangolo – 1/5

P = 2 * (L1 + L2)

L1

L2

L1 à input L2 à input P à output

Introduzione ad AlgoBuild 34/52

(35)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

◦ Iniziamo

35/52

(36)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

◦ Iniziamo

36/52

(37)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

◦ Iniziamo

Inseriamo il primo input: la variabile L1

37/52

(38)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

◦ Iniziamo

Ripetendo le operazioni appena viste, inseriamo anche l’input della seconda variabile (ovvero L2)

38/52

(39)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

◦ Iniziamo

Come si può notare, tale diagramma di flusso presenta due blocchi di

input, denotati dalle variabili L1 ed L2

39/52

(40)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

◦ Iniziamo

40/52

(41)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

41/52

(42)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

42/52

(43)

Introduzione ad AlgoBuild

Esempio 2: Perimetro Rettangolo – 2/5

◦ Iniziamo

L’ultima operazione è quella di mostrare a video il valore della variabile risultato P

(dopo l’operazione di assegnamento) 43/52

(44)

Esempio 2: Perimetro Rettangolo – 3/5

PSEUDO-CODICE PROG perimetro_ret

IN L1 IN L2

ASSIGN P=2*(L1+L2) OUT P

END PROG //perimetro_ret

Introduzione ad AlgoBuild 44/52

(45)

DEMO Esecuzione Perimetro Rettangolo (Tempo passo: 5000ms, ovvero 5 secondi)

Introduzione ad AlgoBuild 45/52

(46)

Selezionando l’opzione «Traccia» verranno fornite (nel Pannello di Output) ulteriori informazioni riguardanti il flusso di esecuzione

Oltre ad eventuali errori che possono intercorrere

Esempio 2: Perimetro Rettangolo – 4/5

Introduzione ad AlgoBuild 46/52

(47)

Selezionando l’opzione «Traccia» Non selezionando l’opzione «Traccia»

Esempio 2: Perimetro Rettangolo – 5/5

Introduzione ad AlgoBuild 47/52

(48)

AlgoBuild permette di modificare le opzioni di visualizzazione del diagramma di flusso, permettendo di cambiare

Tipo di carattere

Dimensioni del carattere

Dimensioni del carattere nel pannello di output

Spessore delle linee relative al contorno dei blocchi ed agli archi orientati che collegano i blocchi (frecce)

• Cliccando sul tasto apparirà una finestra di dialogo che ci permetterà di vedere e modificare le suddette caratteristiche di visualizzazione

Altre Opzioni AlgoBuild – 1/3

Introduzione ad AlgoBuild 48/52

(49)

AlgoBuild permette di modificare le opzioni di visualizzazione del diagramma di flusso, permettendo di cambiare

Tipo di carattere

Dimensioni del carattere

Dimensioni del carattere nel pannello di output

Spessore delle linee relative al contorno dei blocchi ed agli archi orientati che collegano i blocchi (frecce)

• Cliccando sul tasto apparirà una finestra di dialogo che ci permetterà di vedere e modificare le suddette caratteristiche di visualizzazione

Altre Opzioni AlgoBuild – 1/3

Introduzione ad AlgoBuild

Finestra di Dialogo

Modifica opzioni di visualizzazione

49/52

(50)

È anche possibile salvare un diagramma di flusso, per poi aprirlo successivamente (ad esempio, per fare modifiche, per simulare altre esecuzioni, etc)

Le opzioni di salvataggio ed apertura sono presenti nella barra strumenti

Le opzioni di salvataggio/apertura sono presenti anche nel menu «File»

In particolare, sono presenti anche opzioni per

Stampare il diagramma di flusso

Copiare il diagramma di flusso negli appunti

Il diagramma verrà copiato come immagine

Salvare il diagramma come immagine (JPG, PNG, GIF)

Altre Opzioni AlgoBuild – 2/3

Introduzione ad AlgoBuild 50/52

(51)

Il menu «Aiuto» permette di accedere rapidamente a

Manuale AlgoBuild (online)

Sintassi e funzioni (online)

Pagina Facebook ufficiale e canale Youtube (con suggerimenti e video)

Informazioni sulla versione di AlgoBuild

Altre Opzioni AlgoBuild – 3/3

Introduzione ad AlgoBuild 51/52

(52)

Riepilogo

• Primo approccio ad AlgoBuild

• Utilizzo dei blocchi di

Input

Output

Esecuzione/Assegnamento

• Simulazione di esecuzione, mediante AlgoBuild

Introduzione ad AlgoBuild 52/52

Riferimenti

Documenti correlati

(descri- zione codicologica ibid., pp. - L'edizione critica è stata curata da Henri Quentin in collaborazione con Hippolyte Delehaye: Acta Sanctorum Novembris. Collecta,

Così ad esempio, alla metà degli anni '90 del secolo scorso, due antropologi di rilievo come Marc Augè e Clifford Geertz, con un background culturale differente,

This paper reviews the major (Calcium, Phosphorus, Potassium, Sodium, Chlorine, Sulphur, Magnesium) and the trace elements (Iron, Copper, Cobalt, Iodine, Manganese, Zync,

Available Open Access on Cadmus, European University Institute Research Repository.... European

Fig.. ste aree della Sardegna le cavità minerarie e le grotte di miniera sono di primaria importanza per molte specie di pipistrelli che trovano rifu- gio nel loro interno. La

In discussing Northanger Abbey it is essential to see that the problems Catherine, the heroine, has in understanding herself and her experience are not different from the problems

Jean Guiguet specifically identifies Virginia Woolf with her six protagonists: She is in love with words, like Bernard: in love with books, like Neville: a lover of action, like

Simona scarsa medio-bassa medio-tardiva rotonda blu scuro Sofia scarsa medio-elevata medio-precoce ovale blu scuro Speranza medio-scarsa media intermedia rotonda