Tak, Rzymianie też mieli problemy z zerem.
Jest to po prostu [nieintuicyjna] konsekwencja matematyki (będącej silnym składnikiem programowania, zwłaszcza wczesnego programowania) definiowania zera jako pierwszego (problematycznego terminu) rzeczywistej, dodatniej * liczby naturalnej, a ponieważ tablica jest indeksowana liczbą rzeczywistą , liczby naturalne, "pierwszy" element ma indeks 0.
Miesiące są w rzeczywistości nazwanymi wartościami w tablicy, w której dni i lata są wartościami numerowanymi - być może bardziej przydatne byłoby myślenie o dniach / latach jako o tablicach, które wyglądają jak {"1", "2", "3",. .. } sami.
A jeśli chodzi o to, dlaczego jest to tak powszechne (poza matematyczną poprawnością), wszystkie wymienione języki pochodzą z jednego wspólnego źródła ...
Edytować:
Patrząc dalej, ten link do Wikipedii szczegółowo opisuje kilka dobrych i interesujących powodów indeksowania zerowego (co nie mówi bezpośrednio o tym, dlaczego miesiące są indeksowane przez zero, ale myślę, że to już zostało omówione), a ten link SO odpowiedział na pytanie wcześniej.
Wygląda na to, że dominującą opinią jest albo „wypadek historyczny”, albo „ponieważ miesiące nie są liczbami, więc nie można ich porównywać z przechowywaniem w ciągu dnia / roku”, w zależności od tego, kogo zapytasz.
* Przepraszam, przepraszam, fizyka! = Matematyka wraca, żeby mnie tam ugryźć. Idę teraz wyprasować ręce.