Оператор альтернативного выбора
Еще одним способом организации разветвлений является оператор 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 можно по формуле modulo(x,k). Следовательно, при построении алгоритма необходимо использовать шесть условных операторов.
Решение задачи станет значительно проще, если при написании программы воспользоваться оператором select.
D=input('D=');
//Вычисление остатка отделения D на 7, сравнение его с числами
// от 0 до 6.
select modulo(D,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.
Дата добавления: 2015-02-07; просмотров: 1050;