i still prefer to use interrupts. Once a button is pressed, it jump automatically to a X routine.

if you want to monitor few button, you can use Interrupt on PORTx change.

What else the program will do?