Elevators and Floor Numbering

March 16, 2007 By: erik Category: Geeky, Photos, Spain, Spain-v-USA, USA 2,489 views

Rate this post:
1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 4.00 out of 5)
Loading...

It’s time for Round 2 in our comparison of how Spain and the US differ in small, trivial ways. Today’s topic: Elevators and floor numbering.

The Difference

In the United States, when you walk into a building from the street, you are on the “first floor” of the building. If you go up the stairs to the floor above, you will be on the second floor.

In Spain (and the rest of Europe), when you walk into a building from the street, you are on the “ground floor” of the building. If you go upstairs to the floor above, you will be on the first floor.

CIMG3074.JPG

The buttons in the elevator in my building.

Argument By Arrays

In computer programming, all lists and arrays are zero-indexed, meaning that they start counting at zero. To explain why, we’re going to have to jump into the first week of Computer Science 101…

Let’s say that one integer takes up 4 bytes of memory. So an array of 5 integers requires 20 bytes of memory. Let’s say our array is stored at memory address 3456, and the values are the some numbers in the Fibonacci sequence. So, in memory, our array looks like:

Memory Address Value
3456 8
3457
3458
3459
3460 13
3461
3462
3463
3464 21
3465
3466
3467
3468 34
3469
3470
3471
3472 55
3473
3474
3475

The way we access the individual elements of our array is to specify what is called an “offset” from the original array address. If we say, fibonacci[1] the offset is 1, fibonacci[3] the offset is 3, etc.. The computer is going to multiply our offset by the size of our data type (remember we said an integer was 4 bytes), and add that to the memory address of our array. It will then read a four-byte integer from that memory location. So,

memory location of fibonacci[0] = (0 x 4) + 3456 = 3456
memory location of fibonacci[1] = (1 x 4) + 3456 = 3460
memory location of fibonacci[2] = (2 x 4) + 3456 = 3464
memory location of fibonacci[3] = (3 x 4) + 3456 = 3468
memory location of fibonacci[4] = (4 x 4) + 3456 = 3472

You can see that asking for fibonacci[0] gives us the first integer in the array, fibonacci[1] gives us the second integer, and so on. This is why arrays are zero-indexed in computers.

Floors in buildings should work exactly the same way. The building is the array, and the floor is the offset. If I tell you to meet me at 3456 Main St., I expect you to go to that location and enter the building, and not go up or down any stairs. If the building has five stories, and I want to meet you at the top story, I should tell you the number of stories to go up in the building to find me. So, just like the fifth, and final, element in our array was fibonacci[4], I should tell you “3456 Main St., 4th floor”.

Argument By Cartesian Coordinates

If you prefer geometry to computer science, this explanation is for you. For the purposes of daily human life, we live in a world of three spacial dimensions. We’ll call the axes east-west (ew), north-south (ns), and up-down (ud). Our examples will assume a universally-known origin at some point on the ground. Let’s start off with simple and work our way up.

Assume we’re in a 1-dimensional world. If I want to meet you at a certain point, I need to tell you how far east or west of the origin to meet me. For example, if I said, “Meet me at 4 east,” you’d know where to go.

Now assume we’re in a 2-dimensional world. If I want you to meet me at a certain point, I need to tell you how far east or west to go and how far north or south to go from the origin to meet me. I might ask you to meet me at (4 ew, 3 ns) or (-5 ew, 7 ns). Or, and this is crucial, I might ask you to meet me at (5 ew, 0 ns). Note that (5,0) is a perfectly valid Cartesian coordinate, and clearly denotes a point on the plane.

Now let’s go up to a 3-dimensional world. Let’s assume there’s a building at (3 ew, 4 ns). If I tell you to go to (3 ew, 4 ns, 0 ud), “Meet me at the corner of Third St. and Fourth Ave.,” I expect you to go to the building and wait for me in the lobby on the ground floor. If I want you on the next floor up, I’d send you to (3 ew, 4 ns, 1 ud). I’d say, “Meet me at the corner of Third St. and Fourth Ave, first floor.”

Obviously, if I really wanted to meet you there, I’d have to specify a fourth coordinate in the temporal dimension as well, but that’s irrelevant to this discussion.

Conclusion

I’ve presented two very logical, somewhat geeky, reasons for why Spain’s zero-indexed floor numbering system is superior to the American one-indexed system. It may seem arbitrary, but I contend that, while it may be trivial, it is not arbitrary.

This point goes to Spain.

Score: USA: 1, Spain: 1

 
  • Uncle Steve

    “In computer programming, all lists and arrays are zero-indexed”: Not so, some languages begin their indexing at 1.

    “Spain’s zero-indexed floor numbering system is superior to the American one-indexed system”: True, but so is the metric system superior to the US (or, isn’t it really the British?) system, but the US still has not adopted the metric system.

    I strongly remember two things from my jr. high days (yes Erik, back when the dinosaurs roamed the earth…):

    1) I was told that before I graduated high school, the US would be on the metric system, so I’d better learn it now.

    2) My science teacher yearned for the day that scientists would finally conclude that cigarettes were actually harmful to one’s health, because then they would of course be made illegal.

    Funny, eh?

  • Dang it! I knew smarty pants would say, “some languages are one-indexed!” It’s true, but they are in the tiny minority, and end up having to decrement the index before looking in memory anyway.

    I’m not saying that I think it will change. I’m just stating that one way, of a seemingly arbitrary issue, is better.

    I considered writing one of these on the metric system, including Fahrenheit-v-Celsius, but there’s no doubt in anyone’s mind as to which is superior, so I discarded the idea as pointless.

  • Paul

    In graduate school I trained pigeons. It was important to start with a “naive” pigeon, one which had never received pellets for pecking before. Celsius and metric measurement are only clearly superior in the laboratory where all your pigeons are naive. Once the critical mass of trained humans are making one-second estimations based on their viewing of football games (100 yard field), Bob Beamon’s broad jump (30 feet), and feeling comfortable (72 degrees), rule-makers (all trained themselves) have a hard time forcing change.

  • Your “and the rest of Europe” may be (very slightly) untrue; I’ve heard that Russian floor numbering follows the same system as in the U.S. And while the bulk of the Soviet Union was Asian, Russia (or much of it) is certainly part of Europe.

    In Slovenia we follow the normal (European) system, with K = klet (cellar), P = pritličje (ground floor) 2, 3, etc. (For the longest time I assumed P was ‘parkiranje’, parking. Duh.)

    I’m still canvassing the book spines on our shelves.