* Данный текст распознан в автоматическом режиме, поэтому может содержать ошибки
Г л а в а VII. У п р а в л я ю щ и е о п е р а т о р ы я з ы к а Б е й с и к 43 го, что сначала выполняется тело ц и к л а ( У С Л О В И Е является неравенством), где переменной у1 присваивается числовое значение и только затем проверяет¬ ся условие (у1-у)>=Г1. 'Вычисление квадратного корня по итерационной формуле Ньютона DIM x AS DOUBLE 'определение переменных DIM y AS DOUBLE 'с двойной точностью DIM h AS DOUBLE INPUT "Введите число, из которого необходимо извлечь корень. Х="; x INPUT "Введите начальное приближение. У="; y0 INPUT "Введите точность вычисления, h = " ; h y= y0 'присвоить начальное значение у WHILE A B S ( y 1 — y) >= h 'начало итерационного цикла y 2 = y + 1 / 2 * ( x / y — y ) 'вычисление очередного приближения y 1 = y : y = y 2 'переназначения WEND 'конец цикла PRINT "значение корня равно "; y 'Вывод на экран значения корня END 7.7. О п е р а т о р D O - L O O P - б е з у с л о в н ы й ц и к л Оператор DO-LOOP повторяет блок операторов до тех пор, пока не выпол¬ нится оператор E X I T D O . Формат оператора DO-LOOP: DO [блок операторов] LOOP Оператор DO-LOOP является частным случаем оператора D O - W H I L E ( U N TIL)-LOOP (см.п.7.8), но настолько специфическим, что о нем стоит погово¬ рить отдельно. П о сути ключевое слово D O является меткой, на которую LO¬ OP постоянно передает управление. Организуя такой безусловный цикл, необ¬ ходимо позаботиться о том, чтобы в какой-то момент управление попало на оператор E X I T DO, который и обеспечит корректный выход из цикла, то есть на оператор, следующий за ключевым словом LOOP. Рассматривая этот опе¬ ратор с точки зрения теории структурного программирования, можно найти только одно объяснение тому, что он до сих пор определен в Бейсике. Это пре¬ емственность языка, то есть программы, написанные на ранних версиях языка Бейсик, должны выполняться и на более поздних версиях языка, что конечно же является достоинством языка программирования. Н о автор не рекомендует использовать данный оператор в программировании, поскольку при неболь¬ шом усилии всегда можно приспособить для решения возникшей задачи опе¬ р а т о р ы арифметического или итерационного циклов или структуры SELECT CASE. П р и всем своем довольно богатом опыте программирования автор не смог придумать или найти такую задачу, которая решалась бы только с приме¬ нение оператора безусловного цикла.