SICP – cap. 1 – Costruire astrazioni tramite procedure – esercizi – 22

CfQUlODXIAAB4FW

Continuo da qui con gli esercizi, qui.

Exercise 1.18: Using the results of exercises 1.16 and 1.17, devise a procedure that generates an iterative process for multiplying two integers in terms of adding, doubling, and halving and uses a logarithmic number of steps.

C’è anche una nota di cultura generale, quelli di SICP sono prof tosti (la stessa cosa la faceva a volte il mio relatore per la tesi): This algorithm, which is sometimes known as the “Russian peasant method” of multiplication, is ancient. Examples of its use are found in the Rhind Papyrus, one of the two oldest mathematical documents in existence, written about 1700 B.C. (and copied from an even older document) by an Egyptian scribe named A’h-mose.

Gli esercizi citati sono qui e qui.
Al solito ecco le soluzioni dei miei maestri:

  • Bill the Lizard, chiaro e didascalico;
  • Ken Dyck, un po’ frettoloso;
  • S-sol, di fretta anche lui;
  • Weiqun Zhang, anche lui, ma –al solito– cura il codice, definisce locali le procedure di servizio.

s35

Confessione: occorre fare le prove con carta e penna (sarebbe anche meglio carta, matita e gomma), alla fine viene “ah!” 😉

:mrgreen:

Posta un commento o usa questo indirizzo per il trackback.

Trackback

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

%d blogger hanno fatto clic su Mi Piace per questo: