Правильно написать окончание слова рубль - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Нужно написать программу, что бы правильно склонялось слово рубль (10 рублей, 22 рубля, ну и т.д.). Для реализации основной задачи желательно использовать конструкцию switch-case-defaul. Подскажите пожалуйста как это лучше реализовать, в голову ничего не приходит.

Решение задачи: «Правильно написать окончание слова рубль»

textual
Листинг программы
char *p;
k = n%100;
if (k%10==0 || (k>=11 && k<20) || k%10 >=5) p = "ей";
else if (k%10==1) p = "ь";
else p = "я";
printf("%d рубл%s", n, p);

Объяснение кода листинга программы

В этом коде:

  1. Объявлена переменная p типа char* (строка символов) и инициализирована значением рубль.
  2. Затем вычисляется значение переменной k как остаток от деления числа n на 100.
  3. Далее выполняется проверка: если k делится на 10 без остатка (k%10==0), или k находится в диапазоне от 11 до 19 ((k>=11 && k<20)), или остаток от деления k на 10 больше или равен 5 (k%10 >=5), то переменной p присваивается значение ей.
  4. Если k равно 1, то переменной p присваивается значение ь.
  5. В противном случае переменной p присваивается значение я.
  6. И наконец, с помощью функции printf() выводится строка, состоящая из числа n, за которым следует символ рубля (%s) и значение переменной p. Код выполняет функцию формирования окончания слова рубль в зависимости от последней цифры числа.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5
Похожие ответы