Читайте также:
|
|
Еще одним способом организации разветвлений является оператор select альтернативного выбора следующей структуры:
select параметр
case значение1 then операторы1
case значение2 then операторы2
…
else операторы
end
Оператор select работает следующим образом: если значение параметра равно значению1, то выполняются операторы1, иначе если параметр равен значению2, то выполняются операторы2; в противном случае, если значение параметра совпадает со значением3, то выполняются операторы3 и т.д. Если значение параметра не совпадает ни с одним из значений в группах case, то выполняются операторы, которые идут после служебного слова else.
Конечно, любой алгоритм можно запрограммировать без использования select, используя только if, но использование оператора альтернативного выбора select делает программу более компактной.
Рассмотрим использование оператора select на примере решения следующей задачи.
ЗАДАЧА.
Вывести на печать название дня недели, соответствующее заданному числу D, при условии, что в месяце 31 день и 1-е число - понедельник.
Для решения задачи воспользуемся условием, что 1-е число - понедельник. Если в результате остаток от деления заданного числа D на семь будет равен единице, то это понедельник (первое, восьмое, пятнадцатое, двадцать второе и двадцать девятое числа), двойке - вторник, тройке - среда и так далее. Вычислить остаток от деления числа х на k можно по формуле x-int(x/k)*x. Следовательно, при построении алгоритма необходимо использовать семь условных операторов.
Решение задачи станет значительно проще, если при написании программы воспользоваться оператором select.
D=input('Enter a number from 1 to 31');
//Вычисление остатка отделения D на 7, сравнение его с числами
// от 0 до 6.
select D-int(D/7)*7
case 1 then disp('Monday');
case 2 then disp('Tuesday');
case 3 then disp('Wednesday');
case 4 then disp('Thursday');
case 5 then disp('Friday');
case 6 then disp('Saturday');
else
disp('Sunday');
end
Рассмотрим операторы цикла в Scilab. В sci-языке есть два вида цикла - оператор цикла с предусловием while и оператор for.
Оператор while
Оператор цикла while имеет вид
while условие
операторы
end
Здесь условие - логическое выражение; операторы будут выполняться циклически, пока логическое условие истинно.
Оператор цикла while обладает значительной гибкостью, но не слишком удобен для организации «строгих» циклов, которые должны быть выполнены заданное число раз.
Оператор цикла for используется именно в этих случаях.
Дата добавления: 2014-12-20; просмотров: 84 | Поможем написать вашу работу | Нарушение авторских прав |