Однажды ты спросишь меня, что для меня на первом месте: ты или программирование?
Я отвечу тебе, что программирование.
И ты уйдёшь, так и не узнав, что ты для меня на нулевом месте.
Все таки неправильно. Первый элемент массива имеет индекс 0, никакого нулевого места не бывает.
а в некоторых там может быть любой интервальный тип в качестве индекса :-)
например boolean или перечисление или интервал типов:
type t = (a1, a2, a3, a4, a5, a6);
type tt = array[t] of real;
type t2 = a3..a5;
type tt2 - array[t2] of real;
и т.д.
p.s. это паскаль
в стандартном паскале строк нет :-) есть array[] of char который можно инициализировать через 'xxxxx', тип string ввели в "богомерзком" борланде :-) Ну и соответственно приведение типов друг к другу тоже отсутствовало изначально, только через системозависимые расширения можно было это делать (вроде модификатора origin на СМ-ках). А вообще - стандартный паскаль весьма непоследовательный язык, Вирт это всё потом в Модуле и Обероне исправлял.
так это и неважно. Первый элемент массива может иметь индекс 0 или 1, или еще какой угодно. При этом он будет на первом месте, а нулевого места не будет.
Я бы спросил тебя, что такое индекс, но проще наверное написать самому
И́ндекс (лат. index — список, реестр, указатель, а также указательный палец) — число, буквы или другая комбинация символов, указывающая место элемента в совокупности, номинальной шкале или характеризующая состояние некоторой системы, например показатель активности, производительности, развития, изменения чего-либо[1].
Мы сейчас можем долго перекидываться терминологией.
Но давай определимся со следующим:
имеем массив arr = ['a', 'b', 'c']
элемент массива 'a' находится на первом месте, имея при этом индекс 0.
Т.е. если ты в питоне каком-нибудь, вызовешь arr[0], то как результат получишь 'a'.
При этом, если ты запустишь цикл по массиву, то первым элементом у тебя будет 'a'.
Таким образом, мы в данном конкретном случае, получаем разные понятия между индексом и местом.
Индекс-то и [-2] может быть, а "минус второго" места вроде как не бывает ;)
Мы сейчас можем долго перекидываться терминологией.
ты сам про терминологию и писал )
Но давай определимся со следующим:
имеем массив arr = ['a', 'b', 'c']
Индекс-то и [-2] может быть, а "минус второго" места вроде как не бывает ;)А под индексом -2 у тебя что будет? Какой элемент? Я надеюсь ты такое в коде не используешь ;) А то у тебя в код ревью на первом месте будет переписать этот кусок кода ))
Создадим массив:
var slavekParenicePriority = ['programming', 'SlavekGFName', 'Beer']
создадим консольку, которая просит ввести: to check Slavek priority please enter priority place:
отправим его девушки, она введет цифру: 1 - profit
А под индексом -2 у тебя что будет? Какой элемент? Я надеюсь ты такое в коде не используешь ;) А то у тебя в код ревью на первом месте будет переписать этот кусок кода ))
Под индексом -2 у меня будет второй элемент с конца списка. И бывают такие ситуации, что ни один код-ревьювер ничего не скажет :)
создадим консольку, которая просит ввести: to check Slavek priority please enter priority place:Ты не написал, что твоя консолька делает с цифрой один.
отправим его девушки, она введет цифру: 1 - profit
И если ты хороший программист, знающий, что с твоей программой будут работать люди не шарящие в индексах, то ты будешь возвращать результат slavekParenicePriority[input_value -1]
Под индексом -2 у меня будет второй элемент с конца списка. И бывают такие ситуации, что ни один код-ревьювер ничего не скажет :)
то есть в твоем коде бывает буквально цифра, что бы получить элемент? ну незнаю )) от такого кода пахнет заранее если ты решил использовать что то типо arr[0] или arr[-2] фронтендер?))
Ты не написал, что твоя консолька делает с цифрой один.
И если ты хороший программист, знающий, что с твоей программой будут работать люди не шарящие в индексах, то ты будешь возвращать результат slavekParenicePriority[input_value -1]
В данном кейсе условный заказчик парень который хочет порадовать девочку и не соврать ей одновременно )) ты же сделаешь правильно, но не по ТЗ )) зачем мне писать, если и так понятно, что девочка должна ввести первое место и получить нужный результат ))
то есть в твоем коде бывает буквально цифра, что бы получить элемент? ну незнаю )) от такого кода пахнет заранее если ты решил использовать что то типо arr[0] или arr[-2] фронтендер?))
Такое бывает, например при определении контура на изображении, и тебе нужен 2-й из самых маленьких, и т.п.
(ниразу ни фронтендер, тружусь ML/DL инженером)
В данном кейсе условный заказчик парень который хочет порадовать девочку и не соврать ей одновременно )) ты же сделаешь правильно, но не по ТЗ )) зачем мне писать, если и так понятно, что девочка должна ввести первое место и получить нужный результат ))
в таком случае надо возвращать результат, вне зависимости от инпута - 'SlavekGFName' :)
Кого мы тут обманываем?
Если бы мне, как сеньору, миддл или джун начал рассказывать про нулевое место - я бы нихуя не понял, ведь черт его знает что там у него в голове за макароны. Есть общепринятые термины. В контексте массивов нет термина "место", есть индекс. Всё. С какого числа он там начинается - это уже и так ясно исходя из контекста разговора про конкретный язык.
Потому что теория и практика расходятся всегда. Вот прямо вообще всегда. На термины мы переходим только когда возникает какое-то взаимонепонимание.
Ни разу мне ни один другой сеньор не говорил про место в массиве... Это блять как с механиком про вёдра компрессии говорить. Тупо и дико.
А вот с джуном про место в массиве разговор был, и после уточнений и допытываний оказалось, что он имел в виду совсем не индекс, и не совсем массив. Так что несмотря на то, что "на практике всё другое", я предпочитаю локальные жаргонизмы уводить в сторону терминов, обычно это сразу вскрывает ряд подробностей.
В твоём же случае джун закосячил ещё до "места", назвав массивом что-то другое. Если бы имелся ввиду именно индексированный массив, а не объект или map, тогда вообще похер как там индекс зовётся: индексом или местом или позицией.
IT-юмор
5.8K постов52.7K подписчиков
Правила сообщества
Не публикуем посты:
1) с большим количеством мата
2) с просьбами о помощи
3) не относящиеся к IT-юмору