Question: $A$ and $B$ play a game. $B$ chooses a positive integer in mind. $A$ can ask questions of the form "Is your number $x$?" for any $x$ that $A$ wants. Does $A$ have a finite algorithm to correctly guess $B$'s number?
Answer 1: Yes. $A$ sequentially asks the question for $1,2,3,\dots$, so no matter which number $y$ that $B$ chooses, $A$'s algorithm will finish in $y$ steps.
Answer 2: No. No matter what $A$ asks, $B$'s strategy is to always answer no. So $A$'s algorithm cannot terminate.
Obviously, one of these answers must be wrong. But which one?
Answer 1 is correct, and Answer 2 is incorrect.
According to the specification of this problem, $B$ is to choose a number and stick to that. So, $A$ will eventually hit on that number using the $1,2,3,...$ strategy.
Of course, $B$ can lie and say "no" even if $A$ guesses the number $B$ has in mind. But that does not mean that $A$ did not pick correctly. The question is not whether $A$ has a strategy that will, after some finite guesses, tell $A$ what the number is. The question is simply:
So that has nothing to do with $A$ knowledge, but simply about the fact whether $A$ spoke out the number that $B$ picked.
Here, by the way, is another interesting scenario. Suppose that $A$'s strategy is predictable, as the $1,2,3,..$ strategy is. With that, $B$ can anticipate what $A$ is going to ask and always pick a new number that $A$ is not going to ask, and hasn't asked before either. In this scenario, $B$ will never have to lie and can always confidently say "No" forever. However, now we are describing a game that is different from the original (that is, if $B$ does this, then $B$ is cheating). For the original game, where $B$ chooses a number once, and then has to stick with it, there is a finite winning strategy for $A$
In sum, as long as we stick to the rules of the game, then the answer to the question:
is yes. And the reasoning given by Answer 1 is exactly correct.