Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 2D-программирование

2D-программирование Вопросы, касающиеся двумерного программирования

Ответ
 
Опции темы
Старый 21.02.2010, 23:11   #1
IgorOK
Мастер
 
Аватар для IgorOK
 
Регистрация: 26.10.2009
Сообщений: 1,194
Написано 615 полезных сообщений
(для 2,209 пользователей)
Индексирующая переменная цикла

Возникла проблема. После выполнения нижеприведённого кода у меня перевернулось мировоззрение...

For i=1 To 3
Next

Print i

Индексирующая переменная почему-то после выхода из цикла увеличивается ещё на единицу. Собсно вопрос: Так было всегда? Что-то я этого не припомню. В связи с этим возникает проблема с индексами массива

Толи я - дурак, толи лыжи не едут...
(Offline)
 
Ответить с цитированием
Старый 21.02.2010, 23:14   #2
Android
Бывалый
 
Регистрация: 29.03.2007
Сообщений: 662
Написано 199 полезных сообщений
(для 448 пользователей)
Ответ: Индексирующая переменная цикла

Што?
Может нужно так?

For i=1 To 3
Print i
Next
(Offline)
 
Ответить с цитированием
Старый 21.02.2010, 23:19   #3
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Ответ: Индексирующая переменная цикла

цикл действует так :
1)переменная приравнивается к индексу
2)Проверка выходит ли значение переменной за границы диапозона
3)Если нет, то выполняется действие, индекс увеличивается на шаг.

То есть когда переменная равняется 4м, она не проходит по условию цикла и выходит из него. Так что если переменная юзается только внутри цикла, то гуд
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Reizel (25.02.2010)
Старый 21.02.2010, 23:30   #4
IgorOK
Мастер
 
Аватар для IgorOK
 
Регистрация: 26.10.2009
Сообщений: 1,194
Написано 615 полезных сообщений
(для 2,209 пользователей)
Ответ: Индексирующая переменная цикла

Спасибо.

Брр... Три года сижу на блице и такого не замечал...
(Offline)
 
Ответить с цитированием
Старый 21.02.2010, 23:51   #5
jimon
 
Сообщений: n/a
Ответ: Индексирующая переменная цикла

во всех языках программирования взяли за основу принцип что значение переменной - итератора цикла после выхода из цикла не определенно и не стоит на него рассчитывать
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо за это полезное сообщение:
IgorOK (23.02.2010), Phantom (22.02.2010), tormoz (22.02.2010)
Старый 22.02.2010, 00:56   #6
ffinder
Дэвелопер
 
Аватар для ffinder
 
Регистрация: 10.09.2007
Сообщений: 1,442
Написано 793 полезных сообщений
(для 1,460 пользователей)
Ответ: Индексирующая переменная цикла

Сообщение от jimon Посмотреть сообщение
переменной - итератора цикла
это индексатор, а не итератор!
(Offline)
 
Ответить с цитированием
Старый 22.02.2010, 01:04   #7
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Индексирующая переменная цикла

Сообщение от ffinder Посмотреть сообщение
это индексатор, а не итератор!
кэп помоги!
Сообщение от jimon
и не стоит на него рассчитывать
х3-х3 очень удобно бывает: читаешь из некоего потока в строку (массив char-ов) н байт (используя некую индексную перменную, инкерментируемую на каждой итерации), после выхода из цикла "закрываешь" строку нуль-байтом на н+1ой (т.е. берём значение итератора) позиции
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Phantom (22.02.2010)
Старый 22.02.2010, 01:31   #8
jimon
 
Сообщений: n/a
Ответ: Индексирующая переменная цикла

ffinder
ну если ты его будешь использовать для обращение по индексу - то индексатор, но Print i это не обращение по индексу, скорее правильнее называть просто счётчиком цикла, потому что такой термин общеприменим
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо за это полезное сообщение:
Arton (21.03.2010), IgorOK (23.02.2010), SBJoker (22.02.2010)
Старый 22.02.2010, 01:37   #9
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Индексирующая переменная цикла

импэ реквистирует трактовку термина от ffinder (яндекс выдаёт следующее):
Индексатор позволяет работать с классом или структурой таким образом, как если бы это были массивы. Индексация класса выполняется по индексу, указываемому как параметр. Иногда классы, используемые как индексаторы, называют классами-индексаторами.
т.е. совсем не переменная, инкремент/декремент которой (вместе с условием выхода за границу) является инвариантом цикла.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 22.02.2010, 23:55   #10
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Индексирующая переменная цикла

ffinder ау! Отзовись!
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 23.02.2010, 00:20   #11
IgorOK
Мастер
 
Аватар для IgorOK
 
Регистрация: 26.10.2009
Сообщений: 1,194
Написано 615 полезных сообщений
(для 2,209 пользователей)
Ответ: Индексирующая переменная цикла

Ещё раз спасибо за подробное разъяснение.

(Offline)
 
Ответить с цитированием
Старый 25.02.2010, 01:53   #12
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Индексирующая переменная цикла


ffail
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
IGR (25.02.2010)
Старый 25.02.2010, 15:51   #13
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Ответ: Индексирующая переменная цикла

Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 2000 сообщение(ий)):
У вас нет прав, чтобы видеть скрытый текст, содержащийся здесь.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 23:08.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com