Radice quadrata – Ricerche…

La funzione radice quadrata ha un andamento monotono crescente.

Osserva

\begin{cases}0 \le x < \sqrt{x} < 1 & 0 \le x < 1\\1 \le \sqrt{x} < x & x \ge1\end{cases}


Ricerca sequenziale

Una possibile strategia

  1. Partire dal valore più basso possibile (0 oppure 1)
  2. Aumentare il valore di un certo passo finché il suo quadrato è inferiore a x
  3. Annullare l’ultimo aumento
  4. Diminuire il valore del passo
  5. Ripetere dal punto 2. finché…

Più formalmente

  1. Se x < 1 allora y = 0 altrimenti y = 1
  2. passo = x/10
  3. y = y + passo
  4. Se y^2 > x allora
    • y = y – passo
    • passo = passo / 10
  5. Continua dal punto 3. finché…

La scelta di partire dal basso e incrementare è ragionevole…
La scelta del valore 10 al cambio di passo è ragionevole…


Ricerca binaria

  1. Stabilire l’intervallo della soluzione
  2. Scegliere il valore centrale dell’intervallo
  3. Se il quadrato del valore è inferiore a x allora la metà inferiore dell’intervallo viene scartata
  4. Se il quadrato del valore è maggiore di x allora la metà superiore dell’intervallo viene scartata
  5. Ripetere dal punto 2. finché…

Più formalmente

  1. Se x < 1 allora l’intervallo è [0, 1] altrimenti [1, x]
  2. y è uguale al centro dell’intervallo
  3. Se y^2 < x allora y diventa l’estremo inferiore dell’intervallo: [y, …]
  4. Se y^2 > x allora y diventa l’estremo superiore dell’intervallo: […, y]
  5. Continua dal punto 2. finché…

A ogni passo le distanze si dimezzano…