Что? Препод не принимает решение задачи?
Вот Вам кто-то подсуропил.

Написал рекурсивную функцию.
(1) рекурсивный поиск Н.О.Д
Пусть была вызвана функция NOD(55,23) 55 - это X, а 23 - это Y
Если бы было X=0 то результатом функции было бы число Y (т.е. NOD(0,4) = 0, NOD(0,77)=77...), и все бы закончилось. Но X<>0.
Тогда функция вызывает сама себя, но параметры уже будут другими:
Вместо 55 используется остаток от деления Y на X (т.е. 55 mod 23, что равно 9),
Вместо 23 передается наоборот 55
Т.е. получается, что NOD(55,23)=NOD(9,55), и все надо начинать сначала.
Только теперь 9 - это X, а 55 - Y
...
Через некоторое время обязательно получится что
NOD(55,23)=NOD(9,55)=NOD(что-то,что-то)=....=NOD(0,что-то)
и вот это последнее "что-то" и будет результатом вычислений
(2)
Тут все проще. Если знать Н.О.Д., то Н.О.К находится просто по формуле, которая в этой строке и написана.
(3) и (4) вычисляют и сразу печатают результат на экран. Заодно оформляя его красиво. Мол, то-то равно тому-то, а это - этому. Вот и все.