correcao do metodo set_diagonal