11.04.2013 Views

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

**<br />

%<br />

<strong>di</strong>viso<br />

elevamento a potenza<br />

Capitolo 8. Operazioni ed argomenti correlati<br />

# La versione 2.02 <strong>di</strong> <strong>Bash</strong> ha introdotto l’operatore <strong>di</strong> elevamento a potenza "**".<br />

let "z=5**3"<br />

echo "z = $z" # z = 125<br />

modulo, o mod (restituisce il resto <strong>di</strong> una <strong>di</strong>visione tra interi)<br />

bash$ expr 5 % 3<br />

2<br />

5/3 = 1 con resto 2<br />

Questo operatore viene utilizzato, tra l’altro, per generare numeri in un determinato intervallo (ve<strong>di</strong><br />

Esempio 9-24, Esempio 9-27) e per impaginare l’output dei programmi (ve<strong>di</strong> Esempio 26-15 e<br />

Esempio A-6). È anche utile per generare numeri primi, (ve<strong>di</strong> Esempio A-16). Modulo si trova<br />

sorprendentemente spesso in <strong>di</strong>verse formule matematiche.<br />

Esempio 8-1. Massimo comun <strong>di</strong>visore<br />

#!/bin/bash<br />

# gcd.sh: massimo comun <strong>di</strong>visore<br />

# Uso dell’algoritmo <strong>di</strong> Euclide<br />

# Il "massimo comun <strong>di</strong>visore" (MCD) <strong>di</strong> due interi è l’intero<br />

#+ più grande che <strong>di</strong>vide esattamente entrambi.<br />

# L’algoritmo <strong>di</strong> Euclide si basa su <strong>di</strong>visioni successive.<br />

# Ad ogni passaggio,<br />

#+ <strong>di</strong>videndo

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!