Top.Mail.Ru
Ответы

Цикл repeat это оболочка от while или у этого цикла есть какие то особые преимущества?

1234567
 $i = 0 
Do 
    MsgBox(4096, "Значение", '$i = ' & $i) 
    $i = $i + 1 ; аналогично $i += 1 
Until $i = 10 ; повторяет цикл, пока $i не станет равной 10

 
12345
 $i = 0 
While $i <= 10 ; при верном условии цикл повторяется 
    MsgBox(4096, '$i=' & $i, "Значение $i = " & $i, 1) 
    $i = $i + 1 
WEnd 
По дате
По Рейтингу
Аватар пользователя
Новичок

Нет, это разные циклы. Существует достаточно много задач, в которых удобнее сначала выполнить тело цикла, а только потом проверить условие. И в Python или Go нехватка цикла с постусловием ощущается достаточно сильно.

Самый банальный пример - ввод числа с проверкой значения (в синтаксисе C++):

12345
 int n;
do {
  cout << "Введите число [1..10]: ";
  cin >> n;
} while (n < 1 || n > 10); 

Всё предельно просто и понятно. Но попробуй реализовать это циклом с предусловием - код сразу же станет сложнее.

P.S. И, кстати, твой первый цикл выведет числа от 0 до 9, а второй - от 0 до 10.