Skip to content
The Lumenary

Practice · Grades 9–12

Divisibility, Euclid's algorithm and unique factorisation

Divisibility, Euclid's algorithm and unique factorisation

Warm-upHuman

Use Euclid's algorithm to compute gcd⁡(252,198)\gcd(252, 198).

Divisibility, Euclid's algorithm and unique factorisation

Warm-upHuman

Which pairs (x,y)(x, y) satisfy 5x+3y=15x + 3y = 1? (Choose all that apply.)

Choose all that apply

Divisibility, Euclid's algorithm and unique factorisation

CoreHuman

For which of these numbers dd is it true that for all integers a,ba, b: if d∣abd \mid ab then d∣ad \mid a or d∣bd \mid b? (Choose all that apply.)

Choose all that apply

Divisibility, Euclid's algorithm and unique factorisation

CoreHuman

Compute lcm⁡(84,90)\operatorname{lcm}(84, 90).

Divisibility, Euclid's algorithm and unique factorisation

CoreHuman

Which of these fractions have a terminating decimal expansion? (Choose all that apply.)

Choose all that apply

Divisibility, Euclid's algorithm and unique factorisation

CoreHuman

In the proof of Euclid's lemma we assume p∣abp \mid ab and p∤ap \nmid a, and then say gcd⁡(p,a)=1\gcd(p, a) = 1. Why?

Choose one

Divisibility, Euclid's algorithm and unique factorisation

CoreHuman

With a 66-litre jug, a 1515-litre jug and a tap, what is the smallest positive amount of water you can measure exactly (by filling, emptying and pouring between the jugs)?

Divisibility, Euclid's algorithm and unique factorisation

StretchHuman

In the Hilbert numbers 1,5,9,13,17,21,…1, 5, 9, 13, 17, 21, \dots (numbers of the form 4k+14k + 1), which statement is true?

Choose one

Divisibility, Euclid's algorithm and unique factorisation

CoreFormal

Which Lean statement correctly formalises Euclid's lemma for natural numbers?

Choose one

Divisibility, Euclid's algorithm and unique factorisation

StretchComputational

Write extended_gcd(a, b) for natural numbers a, b (not both zero), returning a triple (g, x, y) with g == gcd(a, b) and a * x + b * y == g. Use the recursion: if b == 0 return (a, 1, 0); otherwise get (g, x, y) for (b, a % b) and back-substitute using a % b == a - (a // b) * b.

Runs entirely in your browser, in an isolated worker. Nothing is sent to a server.