Файл: Электронное пособие Scilab.pdf

Добавлен: 15.11.2018

Просмотров: 12851

Скачиваний: 228

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

61 

 

 

 

Рис. 1.3.4-1. Примеры операторов присваивания 

 
Все переменные, используемые в правой части оператора присваивания 

должны  быть  предварительно  определены.  Если  командная  строка 
заканчивается  символом  точка  с  запятой  (;),  то  результат  выполнения 
оператора  не  выводится,  иначе  он  выводится  в  следующей  строке 
командного  окна.  Это  замечание  распространяется  и  на  выполнение 
операторов присваивания, расположенных в sci-файлах. 

 

Операторы  ввода  данных.

Для  организации  простейшего 

ввода в Scilab можно воспользоваться функциями 

 
x=input('title'); 
или 
x=x_dialog('title', 'stroka'); 
 
Функция  input  выводит  в  командной  строке  Scilab  подсказку  title,  и 

ждет  пока  пользователь  введет  значение,  которое  в  качестве  результата 
возвращается  в  переменную  х.  Функция  x_dialog  выводит  на  экран 
диалоговое окно с именем title. После чего пользователь может щелкнуть OK 
и  тогда  stroka  вернется  в качестве результата  в  переменную  x,  либо  ввести 
новое  значение  вместо  stroka,  которое  и  вернется  в  качестве  результата  в 
переменную  x.  На  рис.1.3.4-2  представлено  диалоговое  окно,  которое 
формируется строкой x=x_dialog('Input X','5')

 


background image

62 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
Рис. 1.3.4-2. Ввод данных с клавиатуры 
 
Функция input преобразовывает введенное значение к числовому типу 

данных,  а  функция  x_dialog  возвращает  строковое  значение.  Поэтому  при 
использовании  функции  x_dialog  для  ввода  числовых  значений, 
возвращаемую ею строку следует преобразовать в число с помощью функции 
evstr.  Поэтому  можно  предложить  следующую  форму  использования 
функции x_dialogдля ввода числовых значений 

 
x=evstr(x_dialog('title', 'stroka')); 
 
Для  вывода  в  текстовом  режиме  можно  использовать  функцию  disp 

следующей структуры 

 
disp(b) 
 
Здесь b -имя переменной или заключенный в кавычки текст . 
 
 

Условный операторifend.

Условный оператор ifвобщем 

виде записывается следующим образом:  

if ЛогическоеВыражение1then   
 Инструкции1  
elseif Условие2  
 
ЛогическоеВыражение2   
else   
ЛогическоеВыражение3   
end 
 
 
 

 


background image

63 

 

Правил записи логических выражений описано в Теме1.1.  
 
 Эта конструкция допускает несколько частных вариантов. Простейшее 

– усеченное разветвление, имеет следующий вид: 

 
if ЛогическоеВыражение 
       Инструкции  
end 
 
Напомним,  что  если  ЛогическоеВыражение  T  (то  есть  «Истина»),  то 

выполняются  Инструкции,  составляющие  тело  структуры  if...end.  При  этом 
оператор end указывает на конец перечня инструкций. Инструкции в списке 
разделяются  запятая  или  точка  с  запятой.  Если  ЛогическоеВыражение  F        
(«Ложь»), то Инструкции не выполняются.  

Ниже  приведен  пример  использования  простейшего  усеченного 

разветвления, реализованного с использования оператора if (рис.1.3.4-3). 

 

 

 
Рис. 1.3.4-3.  Пример усеченного разветвления 
 
Вторая частная конструкция напоминает стандартное разветвление:  
if ЛогическоеВыражение then 
Инструкции1   
else   
Инструкции2   
end 
 
Здесь 

выполняются 

Инструкции1, 

если    

ЛогическоеВыражение  T  («Истина),  а  в  противном  случае  выполняются  
Инструкции2.  

В  примере,  приведенном  на  рис.1.3.4-4  рассматривается  стандартное 

разветвление, реализованное с использованием оператора if

 


background image

64 

 

 

 

Рис. 1.3.4-4. Пример стандартного разветвления 

 
Из  приведенного  примера  видно,  что  оператор  if  может  быть  в  одну 

строку, так и несколько строк.  

 
На  следующем  примере  рассмотрим  более  сложное  -  вложенное 

разветвление:  

 

.

;

/

;

2

;

)

cos(

),

sin(

,

max

;

0

,

,

max

2

случае

противном

в

y

x

xy

если

x

y

x

xy

если

y

x

t

 

 
При  его  реализации,  для  того  чтобы  полностью  отразить  структуру 

сложного  разветвления,    используем  sci-функцию  (рис.1.3.4-6).  Подберем 
данные для проверки основного разветвления и обратимся к функции raz() с 
различными исходными данными (рис.1.3.4-7). 
 


background image

65 

 

 

 

Рис. 1.3.4-6. Функция, реализующая вложенное разветвление  

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Рис. 1.3.4-7. Обращение к функции raz() с различными исходными 

данными 

 
Оператор множественного выбора –switch. 
Для осуществления 

множественного выбора используется следующая конструкция switch: