A list of twenty items has a twentieth item.
Dijkstra is far too mathematical with this―no student learning programming for the first time (edited: changed from programmer) in the world ever thought "arrays starting at 0―how natural!".
A list of twenty items has a twentieth item.
Dijkstra is far too mathematical with this―no student learning programming for the first time (edited: changed from programmer) in the world ever thought "arrays starting at 0―how natural!".
Better than starting at pi; that would be irrational.
A clock starts at zero. A day has 24 hours but there is not a twenty-fourth hour. Midnight is 0:00.
"This structure tracked a 24-hour day using both sundials and mechanical hour indicators"
You're right that it is convenient that the address of an item is first index + current index * index size in memory, but things like that comes at a cost of making indeces completely unintuitive.
That is because they are learning it for the first time.
Another way of putting that might be that they don't know a single thing about the subject ;)