Онлайн компилятор C

#include <stdio.h> int main() { int x, digit1, digit2; scanf("%d", &x); while(x>9){ digit1 = x%10; digit2 = ( x%100 )/10; if(digit1<=digit2){ printf("YES\n"); return 0; } x = x/10; } printf("NO\n"); return 0; }
This code checks if any digit in a number is less than or equal to the digit immediately to its left. It reads an integer, then repeatedly compares the last digit with the second-to-last digit, printing "YES" if the last digit is smaller or equal, and stopping early. If no such pair is found, it prints "NO".

- The condition `digit1<=digit2` checks if the right digit is less than or equal to the left digit. Think about what the problem likely asks: do you need to check if digits are in non-decreasing order from left to right, or something else? Your current check compares digits from right to left, which may reverse the intended order.
- The loop divides `x` by 10 each iteration, which removes the last digit. Consider whether you are comparing the correct pair of adjacent digits after each division.