NWD z resztą z dzielenia

Algorytmy z egzaminu różnymi sposobami - JavaScript od podstaw: konsola (JavaScript)

Wiele odejmowań tej samej liczby to po prostu dzielenie z resztą. Wersja z `%`: zastępujemy parę (a, b) parą (b, a % b), aż reszta wyjdzie 0. Wynik jest ten sam, a kroków dramatycznie mniej. Ten wariant zna każdy egzamin.

function gcdMod(a, b) {
  let steps = 0;
  while (b !== 0) {
    const r = a % b;
    a = b;
    b = r;
    steps++;
  }
  return [a, steps];
}

console.log('NWD(48, 18) =', ...gcdMod(48, 18));
console.log('NWD(1000, 3) =', ...gcdMod(1000, 3));

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu JavaScript od podstaw: konsola·Zaloguj się, aby zapisać postęp na koncie.