Страница: 1 | 2 |
Вопрос: Проблема с For ... Next
Добавлено: 04.03.07 13:54
Автор вопроса:
piratik
Что за ерунда такая происходит
В цикле FOR I=1 TO 10 все работает нормально, а вот цикл FOR I=1 TO I<10 никогда не работает. Неужели после TO не может быть выражение?
Щас проверил в нескольких местах - везде указана константа.
Неужели я не ошибаюсь?
Ответы
Всего ответов: 17
Номер ответа: 1
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #1
Добавлено: 04.03.07 18:07
Ты не прав. Вот выписка из MSDN:
[ statements ]
[ Exit For ]
[ statements ]
Next [ counter ]
counter
Required in the For statement. Numeric variable. The control variable for the loop.
datatype
Required if counter is not already declared. Data type of counter.
start
Required. Numeric expression. The initial value of counter.
end
Required. Numeric expression. The final value of counter.
step
Optional. Numeric expression. The amount by which counter is incremented each time through the loop.
statements
Optional. One or more statements between For and Next that run the specified number of times.
Exit For
Optional. Transfers control out of the For loop.
Next
Required. Terminates the definition of the For loop.
Номер ответа: 2
Автор ответа: GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #2
Добавлено: 04.03.07 19:13
Гы гы...
I<10 - это true или false.
Цикл FOR I=1 TO false или FOR I=1 TO true - это пять...
Автору изучить азы, которые нужно иметь ещё до начала знакомства с любым языком программирования.
Номер ответа: 3
Автор ответа: piratik
Вопросов: 3
Ответов: 6
Профиль | | #3
Добавлено: 04.03.07 22:32
Ув. GSerg,
Все дело в том что например для С следующий код является нормальным.
FOR (I=1;I<10;I++)
Я даже скажу что это верно не только для С но и для JSCRIPT, JAVA, C# и так далее.
Значит ответ Brand-а верен, end - Numeric expression. Жалко конечно.
Спасибо.
Номер ответа: 4
Автор ответа: GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #4
Добавлено: 05.03.07 08:24
Numeric expression, piratik, и константа - вещи сугубо разные...
А что касается C, то там в стандарте и написано - вторая секция for отведена под логическое выражение. А не под численное.
А если тебе нужны логические выражения в качестве границы цикла в VB, то это цикл DO, а не FOR. RTFM.
Номер ответа: 5
Автор ответа: piratik
Вопросов: 3
Ответов: 6
Профиль | | #5
Добавлено: 05.03.07 22:16
Спасибо я уже разобрался, что надо использовать DO или там еще типа WHILE что то. Просто не ожидал от FOR такого
). Интересно а чем отличается Numeric expression от константы? Вроде оба являются неизменными значениями (R-value) только область жизни разная. Ладно это уже другая тема.
Да а что такое это RTFM?
Спасибо.
Номер ответа: 6
Автор ответа: EROS
Вопросов: 58
Ответов: 4255
Профиль | | #6
Добавлено: 05.03.07 22:41
RTFM — аббревиатура, первоначально означавшая Read The Following Materials (прочитай сопроводительную документацию), однако позднее всё чаще расшифруемое как Read The Fucking Manual (прочитай грёбаное руководство). Это наставление обычно даётся в ответ на вопрос, ответ на который можно легко найти, прочитав соответствующую документацию, и является намёком на то, что спрашивающий впустую тратит время собеседников.
Во избежание использования в выражении бранного слова fucking (которое является оскорбительным для многих людей), RTFM также расшифровывают как Read The Foolish Manual (прочитай глупое руководство) или, в некоторых случаях, Read The Fricken Manual. Также иногда используются менее уничижительные значения Read The Friendly Manual (прочитай дружественное руководство), Read The Flaming Manual (прочитай чёртово руководство) или Read The Fine Manual (прочитай хорошее руководство). Кроме того, буква «F» может быть полностью исключена, и акроним примет вид RTM, т. е. Read The Manual (прочитай руководство).
В некоторых странах Содружества Наций хакеры предпочитают использовать RTBM, т. е. Read The Bloody Manual (прочитай проклятое руководство), в качестве первоначального ответа. Если обсуждение разрастается, для ответа начинают использовать RTFM.
В сленге хакеров существуют и другие производные этого выражения, например, RTFS, то есть Read The Fucking Source (просмотри грёбаный исходник), и RTFB, т. е. Read The Fucking Binary (просмотри грёбаный бинарник). Прежнее выражение также найдено в варианте, вдохновлённом «Звёздными войнами»: UTSL, то есть Use The Source, Luke (используй исходник, Люк), — игра слов с выражением Use The Force, Luke (используй Силу, Люк). Эти версии менее бранные чем RTFM и используются в юмористическом смысле, поскольку предполагается, что это ошибка разработчика, не предоставившего документацию — в частности RTFB используется, чтобы указать, что программа является настолько старой или плохо задокументированной, что единственный способ понять, что она делает, — это исследовать машинный код. На Slashdot распространён вариант RTFA, то есть Read The Fucking Article (прочитай грёбаную статью), обычно используемый в отношении того, кто оставил комментарий, из которого ясно, что он на самом деле не прочитал соответствующую статью. Другой вариант, впервые зафиксированный в Usenet в 1996, — STFW, Search The Fucking Web (ищи в грёбаной Сети). Более конкретная версия — UTFG, Use The Fucking Google (используй грёбаный Google).
'//
UTFG!
Номер ответа: 7
Автор ответа: GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #7
Добавлено: 06.03.07 00:02
Тем, что numeric expression может являться константной, переменной, результатом функции или любой комбинацией их любыми операторами.
Номер ответа: 8
Автор ответа: piratik
Вопросов: 3
Ответов: 6
Профиль | | #8
Добавлено: 06.03.07 00:22
Надо бы еще где то мануал по VB раздобыть
Наверное тема закрыта, получены все ответы.
Спасибо to GSerg и особено спасибо to EROS за столь исчерпывающий ответ
Номер ответа: 9
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #9
Добавлено: 07.03.07 04:57
Самый развернутый был у меня, а меня опять никто не поблагодарил
Номер ответа: 10
Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #10
Добавлено: 07.03.07 05:58
Напиши это в файл HTML и запусти
while(1){
alert('Ты мне замечательно помог, Brand!');
alert('Огромное спасибо тебе за помощь, Brand!')
}
</script>
Номер ответа: 11
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #11
Добавлено: 07.03.07 15:42
О... Если б ты смог это через XSS на форум залить, было б вообще замечательно
)))
Номер ответа: 12
Автор ответа: Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #12
Добавлено: 07.03.07 16:13
вот ещё про алерты: fuckme.narod.ru
(баян)
Номер ответа: 13
Автор ответа: Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #13
Добавлено: 07.03.07 16:18
Прикольно.
Номер ответа: 14
Автор ответа: piratik
Вопросов: 3
Ответов: 6
Профиль | | #14
Добавлено: 08.03.07 02:10
Brand, где б такое исчерпывающее описание надыбать?
У меня VB вообще без справки идет, пишет MSDN collection does not exist.
Номер ответа: 15
Автор ответа: Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #15
Добавлено: 08.03.07 04:33
Описание можно найти, разумеется, в MSDN.
* Заходим на www.live.com
* Вводим в поле запроса "MSDN collection does not exist"
* Жмем "Search"