32 lines
557 B
C
32 lines
557 B
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
|
|
uint ppcm(uint a, uint b) {
|
|
uint i = 2;
|
|
uint ppcm = 1;
|
|
while (a != 1 || b != 1) {
|
|
int da = a % i == 0;
|
|
int db = b % i == 0;
|
|
if (da) {
|
|
a /= i;
|
|
}
|
|
if (db) {
|
|
b /= i;
|
|
}
|
|
if (da || db) {
|
|
ppcm *= i;
|
|
} else {
|
|
i++;
|
|
}
|
|
}
|
|
return ppcm;
|
|
}
|
|
|
|
uint f(int a, int b) { return ppcm(abs(a), abs(b)); }
|
|
|
|
int main() {
|
|
int a = 9;
|
|
int b = -21;
|
|
printf("ppcm(%d, %d) = %d\n", a, b, f(a, b));
|
|
}
|