C/C++

Задание на С.

Вообще не выкупаю как делать. Только начал заниматься С. Можете пожалуйста помочь с данным заданием?
Так есть таблица, вам должны были её диктовать на доске!!!
АШ
Адилжан Шамахун Ашимий
5 117
Лучший ответ
что значить "не выкупаю"? это что-то блатное?
a1=a%100;
a2=(a/10)%10;
a3=a%10;
if(a1==a2 && a2==a3){ } // без изменения
if(a1!=a2 && a2!=a3 && a1!=a3){ a=a1*100+a2*10; }
итд...
Саша Кузьмичев
Саша Кузьмичев
53 291
#include <stdio.h>
#include <math.h>

int main()
{
int NUM;
do
{
scanf("%d", &NUM); /* если не работате scanf, используй scanf_s */
}while(fabs(NUM) < 100 || fabs(NUM) > 999); /* чтобы был ввод только трёхзначных чисел */
int minus = 0, ed, des, sot;
if(NUM < 0)
{
minus = 1;
NUM *= -1;
}
ed = NUM % 10; /* единицы */
des = (NUM / 10) % 10; /* десятки */
sot = NUM / 100; /* сотни */
if(des == sot && sot == ed)
{ /* все цифры одинаковые */
if(minus) NUM *= -1;
}
else if(ed != des && des != sot && sot != ed)
{ /* все цифры разные */
if(ed < des && ed < sot)
{
NUM -= ed;
}
else if(des < ed && des < sot)
{
NUM -= des*10;
}
else
{
NUM -= sot*100;
}
if(minus) NUM *= -1;
}
else /* две цифры одинковые */
{
NUM = ed*100;
NUM += des*10;
NUM += sot;
if(minus) NUM *= -1;
}
printf("%d\n",NUM);
return 0;
}