Interrupting with push buttons has failed.

If find two errors:

First you use LOW as the interrupt cause so as long as the pin gets a LOW input it fires the interrupt. That's many times while you push a button because the Arduino is much faster than you.

Second you do something you must not do:

  void nochange() {
    mode = 0;
    Serial.println("0");
  }

You use the Serial object inside an interrupt service routine. This will fill up the serial buffer very fast and as soon as the buffer is full it waits for the serial interrupt to push out some bytes. This will never happen because interrupts are blocked inside ISRs, your code will freeze.