Vogliamo realizzare un programma che utilizza la stessa tecnica: prima compiliamo una tabella di quadrati, e poi effettuiamo delle moltiplicazioni usando questo metodo.
Per memorizzare la tabella dei quadrati, usiamo un vettore di cento elementi. Questo vettore è sufficiente a moltiplicare due numeri la cui somma non supera 100. Una volta scritti i valori nel vettore, possiamo utilizzarli per calcolare tutte le moltiplicazioni necessare. Il programma completo MoltiplicazioneBabilonese.java è riportato qui sotto.
/*
Moltiplicazione fra interi la cui somma e' minore
di 100 usando il metodo babilonese.
*/
class MoltiplicazioneBabilonese {
public static void main(String[] args) {
int quadrati[]=new int[101];
int i;
int a=10, b=20, c=2, d=4, e=32, f=31;
for(i=0; i<=100; i=i+1) {
quadrati[i]=i*i;
}
System.out.println( (quadrati[a+b]-quadrati[a]-quadrati[b])/2 );
System.out.println( (quadrati[c+d]-quadrati[c]-quadrati[d])/2 );
System.out.println( (quadrati[e+f]-quadrati[e]-quadrati[f])/2 );
}
}