четверг, 2 сентября 2021 г.

Алгоритм НОД

Мишка тут пишет свой Minecraft с блэкджеком и Graphics2D. Понадобилось ему посчитать наибольший общий делитель. И вот что он нашёл на просторах StackOverflow. Красиво:
int a = Math.abs(first);
int b = Math.abs(second);
while (a != 0 && b != 0) {
    if (a > b) a %= b;
    else b %= a;
}
int r = a + b;

2 комментария:

  1. Наибольшая общая мера последние 2500 лет
    https://stokito.wordpress.com/2013/01/27/%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D0%B8-%D0%B0%D0%BB%D0%B5%D0%BA%D1%81%D0%B0%D0%BD%D0%B4%D1%80%D0%B0-%D1%81%D1%82%D0%B5%D0%BF%D0%B0%D0%BD%D0%BE%D0%B2%D0%B0-%D0%B2-%D1%8F%D0%BD%D0%B4%D0%B5%D0%BA%D1%81/

    ОтветитьУдалить
  2. Это ссылка на видео Степанова про разное и про НОД. Мне очень понравилось и я рекомендую его посмотреть в том числе и твоему сыну.

    ОтветитьУдалить