Написать программу: на вход программа получает № дня недели - случайное число из диапазона [1; 7]. вывести на экран название дня недели, соответствующее данному порядковому номеру.
Если число 49 записывается как 121, значит первый остаток от деления равен 1, то есть основанием системы счисления является число, кратное 48.
121 имеет 3 разряда, значит основание однозначно меньше 10 и больше 2. Подходят 3, 4, 6, 8.
Учитывая, что в числе 121 три разряда, значит число 48 делилось всего три раза. Число 8 не подойдет, т.к. 48/8=6, значит будет всего два деления. Число 3 не подойдет, т.к. 48/3 = 16, 16/3=5 - то есть тут будет больше трёх знаков. Число 4 не подойдет, т.к. 48/4=12, а 12 делится на 4 без остатка, но, судя по числу, во втором делении остаток должен быть равен 2. Остаётся число 6. Проверим
#include <stdlib.h>
#include <locale.h>
int main(int argc, char *argv[]) {
setlocale(LC_ALL,"RUS");
int a; scanf("%d",&a);
switch (a)
{ case 0:{printf("Ноль \n"); break; }
case 1:{printf("Понедельник \n"); break; }
case 2:{printf("Вторник \n"); break; }
case 3:{printf("Среда \n"); break; }
case 4:{printf("Четверг \n"); break; }
case 5:{printf("Пятница \n"); break; }
case 6:{printf("Суббота \n"); break; }
case 7:{printf("Вскрс \n"); break; }
default: printf("Неправильно\n"); }
return 0;}