Olá Leandro. Eu encontrei um tópico parecido aqui contendo uma resposta do instrutor.
Eu costumo seguir a prática de sempre ligar o pino digital em um resistor que está conectado ao terra e também conectado à um lado da chave e ter o outro lado da chave ligado diretamente ao 5V ou VCC.
Assim tenho menos interferências pois no caso onde eu não estou apertando o botão ele vai receber algo próximo a 0V e quando pressiono o botão leio diretamente os 5V.
Tem um guia aqui detalhando melhor como funciona essa ligação e como calcular o resistor. Já adianto que o valor do resistor não é tão relevante, 10kΩ serve para a maioria dos casos.
E um fato um pouco mais desconhecido é que a família AVR de chips costumam ter resistores de pullup internos na maioria de suas portas, basta inicializar o pino como pinMode(5, INPUT_PULLUP)
. Caso tenha alguma dúvida segue a documentação.