Kommentare nur allgemein, bereits in einer Woche weißt du nicht mehr auf
welche Einstellungen du den ADC und den PCInt gesetzt hast.
Wie oben geschrieben gibt es den arraywert nums[6] nicht.
Wie ist dein Schalter angeschlossen? Offensichtlich fragst du ab ob er
high ist. Pulldown extern angeschlossen? Wenn ja, warum nicht den
internen pullup benutzen? (Am Ende aufpassen dass du den pullup nicht
ausschaltest)
_delay_ms () nimmt schon eine Weile auch größere zahlen, die Schleife
ist nicht nötig.
Warum fragst du in der Interruptroutine, der durch pin4 ausgelöst wird,
ob pin4 gedtückt wurde?
Die variable result ist nicht nötig, es reicht ein:
PORTB= nums[adc%6];