Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.06.2011, 18:36
Новичок на форуме
Отправить личное сообщение для Gofop Посмотреть профиль Найти все сообщения от Gofop
 
Регистрация: 29.06.2011
Сообщений: 3

Поведение счётчика цикла
Почему:
for(i = 0; i < 5; i++){}
document.write(i) // i == 5 ?


По логике i == 5 при i <= 5 (как в том же Си)

Последний раз редактировалось Gofop, 29.06.2011 в 18:43.
Ответить с цитированием
  #2 (permalink)  
Старый 29.06.2011, 19:05
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от Gofop
как в том же Си
Щито?
Код:
#include <stdio.h>

int main(){
    int i;
    for(i = 0; i < 5; ++i);
    printf("%d", i); // 5
    return 0;
}
Какая-то неправильная логика у Вас. Цикл прекращается, как только прекращает выполняться условие, а выполняться оно прекращает как раз в случае i == 5.
Ответить с цитированием
  #3 (permalink)  
Старый 29.06.2011, 19:14
Новичок на форуме
Отправить личное сообщение для Gofop Посмотреть профиль Найти все сообщения от Gofop
 
Регистрация: 29.06.2011
Сообщений: 3

C++
Код:
#include <iostream>

int main
{
    for(int i = 0; i < 5; i++)
        std::cout << i << std::endl;

    return 0;
}

Код:
[wz2@localhost ~]$ '/home/wz2/a.out'
0
1
2
3
4
i == 4
Ответить с цитированием
  #4 (permalink)  
Старый 29.06.2011, 19:29
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

<script>
for(i = 0; i < 5; i++)
  document.write(i + "<br>");
</script>

i == 4???
Ответить с цитированием
  #5 (permalink)  
Старый 29.06.2011, 19:31
Аватар для walik
Профессор
Отправить личное сообщение для walik Посмотреть профиль Найти все сообщения от walik
 
Регистрация: 09.11.2009
Сообщений: 1,101

Gofop,
В вашем первом сообщение i == 5 потому что вы смотрите на счетчик уже после цикла. Если же смотреть на i как в сообщение Sweet'a то, все верно (0,1,2,3,4) , потом i становится равным 5 и условие не выполняется, и все, он так и остается равным 5.
__________________
"Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете."
Мой сертификат :-D клацай
Ответить с цитированием
  #6 (permalink)  
Старый 29.06.2011, 19:33
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

walik, я написал относительно этого.
Ответить с цитированием
  #7 (permalink)  
Старый 29.06.2011, 19:37
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Gofop, ололо
Код:
#include <iostream>

int main()
{
    int i;
    for(i = 0; i < 5; i++)
        std::cout << i << std::endl;
    std::cout << "Final: " << i << std::endl;

    return 0;
}
Цитата:
barmaley-exe@laptop:~/cpp$ ./a.out
0
1
2
3
4
Final: 5

Последний раз редактировалось B@rmaley.e><e, 29.06.2011 в 19:45.
Ответить с цитированием
  #8 (permalink)  
Старый 29.06.2011, 22:09
Новичок на форуме
Отправить личное сообщение для Gofop Посмотреть профиль Найти все сообщения от Gofop
 
Регистрация: 29.06.2011
Сообщений: 3

Сообщение от walik Посмотреть сообщение
Gofop,
В вашем первом сообщение i == 5 потому что вы смотрите на счетчик уже после цикла. Если же смотреть на i как в сообщение Sweet'a то, все верно (0,1,2,3,4) , потом i становится равным 5 и условие не выполняется, и все, он так и остается равным 5.
Точно, спасибо)

for(i = 0; i < 5; i++){document.write(i)}
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Странное поведение переменной mycoding Серверные языки и технологии 4 14.01.2011 19:18
Принцип работы счетчика liveinternet paveljava5 Общие вопросы Javascript 5 02.08.2010 11:53
Странное поведение replace cooli0 Общие вопросы Javascript 4 25.01.2010 17:16
Как приостановить выполнение цикла? SashaBorandi jQuery 3 13.02.2009 08:57
как отобразить в окне значения счетчика во время выполнения цикла FOR Алекс97 Общие вопросы Javascript 5 06.09.2008 10:36