e-olymp 903. Первая или последняя?

Задача взята с сайта e-olimp.com

Условие задачи

Задано трехзначное число. Какая цифра в нем больше: первая или последняя?

Входные данные

Одно трехзначное число.

Выходные данные

Вывести большую из указанных цифр. В случае их равенства вывести знак «=» (без кавычек).

Тесты:

Входные данные Результат
1 328 8
2 956 9
3 384 4
4 672 6
5 558 8
6 733 7
7 797 =
8 555 =

 

 

ideone.com

Пояснение:

Для того чтобы определить первую цифру [latex] (a) [/latex] трехзначного числа [latex]n[/latex] необходимо найти целую часть от деления этого числа на сто, воспользовавшись формулой  [latex]a = n/100[/latex]. Чтобы определить вторую цифру [latex] (b) [/latex] необходимо найти остаток от деления числа на десять, воспользовавшись формулой [latex]b=n[/latex][latex]\%[/latex][latex]10[/latex] . Затем необходимо проверить равны ли эти цифры, если нет-найти большую.

Засчитанное решение на e-olymp.com

Related Images:

5 thoughts on “e-olymp 903. Первая или последняя?

  1. Выражение b=(n%100)%10; избыточно. Остаток от деления на 10 не меняется после взятия остатка от деления на 100.

    Пусть n = 100 * x + 10 * y + z;
    n % 10 = z;
    n % 100 = 10* y + z;
    (10* y + z) % 10 = z.

  2. Молодец. Справились с моей головоломкой 🙂
    Зачтено.
    Поняли в чём проблема, почему приходится так сложно выводить?
    Из-за тернарной операции. у обоих вариантов результата должен быть один и тот же тип. А вам нужен то символ (=), то число. Если оставить просто печать a или b, то в случае равенства будет печататься 61 — код символа ‘=’.

Добавить комментарий