UP Down Counter Problem

Up Down Counter is working well the LCD third digit not showing properly, but i have not found any mistake. :confused:
In serial monitor every thing just fine.
Can some one help me to solve the issue. I just modify a bit to work with 3 digits.( 999)

Counter_Big_Digits.ino (6.21 KB)

Sorry to forgot another issue the button input 2 not work with ground just need to connect with +5. button input 3 is just fine.

sny2ksa: the LCD third digit not showing properly, but i have not found any mistake. I just modify a bit to work with 3 digits.( 999)

What do you mean by "not showing properly"?

Looks like your mistake is in this function:

void printNumber(int val)
{
  int col = 5;  // Big Digit Position
  if ( val >= 10)
  {
    printDigits(val / 10, col);
    printDigits(val % 10, col + 4);
    printDigits(val % 10, col + 8);
    Serial.println(val);
    Serial.println(col);
  }
  else
  {
    printDigits(val, col);
    Serial.println(val);
    Serial.println(col);
  }
}

If the value is two or more digits long, it displays three digits. I think you want three-digit numbers to display three digits and two-digit numbers to display only two digits.