Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 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:

For counter [ As datatype ] = start To end [ Step step ]
    [ 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?

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 от константы?

Тем, что 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-сайт: sharpc.livejournal.com
 Профиль | | #10
Добавлено: 07.03.07 05:58
Напиши это в файл HTML и запусти
<script>
while(1){
alert('Ты мне замечательно помог, Brand!');
alert('Огромное спасибо тебе за помощь, Brand!')
}
</script>

Ответить

Номер ответа: 11
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #11 Добавлено: 07.03.07 15:42
О... Если б ты смог это через XSS на форум залить, было б вообще замечательно :))))

Ответить

Номер ответа: 12
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #12
Добавлено: 07.03.07 16:13
вот ещё про алерты: fuckme.narod.ru
(баян)

Ответить

Номер ответа: 13
Автор ответа:
 Djon



Вопросов: 61
Ответов: 471
 Web-сайт: www.vk-book.ru
 Профиль | | #13
Добавлено: 07.03.07 16:18
вот ещё про алерты: fuckme.narod.ru

Прикольно. :)

Ответить

Номер ответа: 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.

У меня VB вообще без справки идет, пишет MSDN collection does not exist.

* Заходим на www.live.com
* Вводим в поле запроса "MSDN collection does not exist"
* Жмем "Search"

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам