Algoritmi avanzati con algobuild


COSA SI FA: l'obiettivo

Con un tuo compagno risolvi i problemi complessi che trovi sotto.

Prima di tutto scegli un problema e scrivi con pages le risposte alle domande che permettono di analizzare la situazione e realizzare un algoritmo adatto:

  1. Quale è il numero e il titolo di questo algoritmo/problema?
  2. quali sono i valori da chiedere in input? 
  3. ci sono casi limite dei valori in input da verificare e accettare? (validazione)
  4. quale è l'output, il risultato? 
  5. quale è in sintesi la procedura per arrivare al risultato?
  6. quali sono i test utili per verificare il funzionamento dell'algoritmo? (simulazione)

Anche se si lavora in gruppi di due, il documento è personale e deve essere curato da ognuno degli studenti sul proprio ipad. 
Aggiungi per ogni algoritmo l'immagine del flowchart.


Ecco i problemi avanzati da risolvere. 
Non sono facili, prendi il tempo necessario per pensarci su, per fare schemi, trovare soluzioni, sbagliare, riprovare, avere finalmente successo.

  1. Verificare se un numero dato è primo. Il resto della divisione tra a e b si calcola scrivendo resto = a % b. per esempio 5 % 2 dà come risultato 1.
  2. Date le posizioni (1..8, 1..8) di due regine nella scacchiera determinare se si possono "mangiare" reciprocamente
  3. Calcolare la radice quadrata di un numero usando la funzione sqrt(). Nella casella di assegnazione va scritto r=sqrt(a)    attenzione alla validità degli input! il numero richiesto deve essere positivo. 
  4. Calcolare la lunghezza della diagonale di un quadrato dato il lato.
  5. Trovare tutti i divisori di un numero N. vedi l'esercizio 1.
  6. Calcolare la sequenza di Fibonacci fino al numero positivo N
  7. Calcolare la somma di tutti i numeri da 1 fino a N
  8. Calcolare il fattoriale di un numero intero positivo. n!, non sai cosa è? cerca su wikipedia e rivedi l'esercizio precedente.
  9. Scrivere i multipli di un numero dato (i primi 10 multipli). per esempio dato in input il numero 4 i multipli scritti in output saranno 4, 8, 12, ..., 40
  10. Trasformare un numero binario di 4 bit in numero decimale, ad esempio 1001 in decimale vale 9
  11. Trasformare un numero intero da decimale a binario;
  12. idee?



CON CHI: PER CONDIVIDERE
risolto un algoritmo avanzato e completata la sua scheda, cambia il tuo compagno. Con il nuovo compagno potrai: spiegare l'algoritmo appena risolto e farti raccontare della soluzione del suo problema. 

Completate le vostre relative schede passare a risolvere un problema nuovo per entrambi.


DOVE E QUANDO?
in laboratorio puoi collaborare con compagni e l'insegnante. a casa puoi pensare alle soluzioni e applicarti per conto tuo. algobuild funziona su ogni tipo di computer. carta e penna anche :)



PER RIPASSARE
Se hai dubbi o vuoi ripassare,  trovi i passi di base e alcune risorse video e PDF per creare algoritmi con algobuild:




Buon lavoro



M.C.