07.05.2013 Views

Cap´ıtulo 2 Divisibilidad en Z - IMERL

Cap´ıtulo 2 Divisibilidad en Z - IMERL

Cap´ıtulo 2 Divisibilidad en Z - IMERL

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

30 CAPÍTULO 2. DIVISIBILIDAD EN Z<br />

Tras las consideraciones anteriores, podemos escribir el algoritmo de Euclides como<br />

sigue, donde rem(a, b) repres<strong>en</strong>ta el resto de dividir a <strong>en</strong>tre b:<br />

Entrada : a, b ∈ Z<br />

mi<strong>en</strong>tras b = 0, hacer<br />

t ←− |a|<br />

a ←− |b|<br />

b ←− rem(t, a)<br />

salida : a<br />

Pseudo–código del algoritmo de Euclides.<br />

Naturalm<strong>en</strong>te, el algoritmo anterior puede ext<strong>en</strong>derse al cálculo del máximo común<br />

divisor de más de dos <strong>en</strong>teros. Supongamos dados t <strong>en</strong>teros positivos a1, . . . , at y sea<br />

R0 = (a1, . . . , at). Supongamos que i es el índice de la coord<strong>en</strong>ada más pequeña de<br />

R0. En este caso es fácil ver que mcd(a1, . . . , at) es igual a<br />

mcd(rem(a1, ai), . . . , rem(ai−1, ai), ai, rem(ai+1, ai), . . . , rem(at, ai))<br />

Esta idea conduce al sigui<strong>en</strong>te algoritmo.<br />

<strong>en</strong>trada : (a1, a2, . . . , at) ∈ Z t<br />

Inicializar A := (|a1|, |a2|, . . . , |at|)<br />

mi<strong>en</strong>tras A cont<strong>en</strong>ga, al m<strong>en</strong>os, dos coord<strong>en</strong>adas no nulas hacer<br />

Calcular el índice i del m<strong>en</strong>or <strong>en</strong>tero no nulo de A<br />

A ←− (rem(a1, ai), . . . , rem(ai−1, ai), ai, rem(ai+1, ai), . . . , rem(at, ai))<br />

salida : ai<br />

Pseudo–código del algoritmo de Euclides para t <strong>en</strong>teros.<br />

Ejemplo 2.10 Calcular el mcd de 120, 146 y 180. En este caso, se ti<strong>en</strong>e:<br />

mcd(120, 146, 180) = mcd(120, 26, 60) = mcd(16, 26, 8) = mcd(0, 2, 8) =<br />

= mcd(0, 2, 0) = 2.

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

Saved successfully!

Ooh no, something went wrong!