Okay, in vaguely plain English: the words “any” and “an” [an egg] and “one” all have the same root word. They express a few important concepts, but the most important one we’re interested in is this: “there is [at least one of]something.”
So, interrogative or negative statements:
A: Did you catch any fish? [Is there at least one item of fish?]
B: No, I didn’t catch any. [Of fish there is not at least one.]
A: How about you, C?
C: Yes, I caught one!
There’s your declaratory “any”: it turned into “one” in C’s sentence. Why? [talking out of ass mode ON] The old “any” was a genitive construction, i.e. possessive: “I didn’t catch any of fish,” lit. Both “any” and “of fish” would be inflected into the genitive case in Old English.
If you said “I caught a fish!” you would put fish into the accusative [direct object] case, and “any” would no longer be grammatically appropriate. (You could say, “Of fish, I caught one,” but the word “one” would still be a direct object and thus in accusative case.)
Short answer: “any” and “one” are two different grammatical forms of the same word. Therefore, when two people say–“Did you catch any fish?” “Yes, I caught one!”–both people are basically using the same word, they just don’t realize it, because they forgot all their old English grammar.
[talking out of ass mode OFF]
Actually, humility aside, I think I got this right.
Ask a more accomplished linguist for a second opinionm, or ask me again to rephrase this more simply.