The visuals are definitely valuable in explaining this. It used to be popular, and still is in some circles, to debate whether programming languages ought start array indexing at 0 or 1. When talking about this with other programmers, I've discovered that a lot of the issues/confusion could be avoided by consistent use of terminology: Offsets/offsetting always being zero-based and indexes/indexing always being one-ba…
I prefer that model for floor numbering, personally. It means if you're on floor N that you're N stories above the ground.
In British English, the first floor is the first above the ground.
In American English, the first floor is the ground.