КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Вопрос №27. If Логическое_выражение then
End If Логическое_выражение then If Логическое_выражение then Инструкции_1, else Инструкции_2, end If Логическое_выражение then Инструкции, end End Else ElseifЛогическое_выражение_2 then IfЛогическое_выражение_1 then Вопрос №24,26 End Else IfЛогическое_выражение then Условный оператор Вопрос №25 Оператор присваивания Оператор присваивания имеет следующую структуру a=b здесь a – имя переменной или элемента массива, b - значение или выражение. В результате выполнения оператора присваивания переменной a присваивается значение выражения b. x=5;y=sin(x); Одним из основных операторов, реализующим ветвление в большинстве языков программирования, является условный оператор if. Существует обычная и расширенная формы оператора if в Scilab. Обычный if имеет вид Инструкции_1 Инструкции_2 Инструкции в списке разделяют оператором, (запятая)или; (точка с запятой).
Логические выражения Логические выражения состоят из констант, переменных и функций, соединенных операциями отношения: больше (>), больше или равно (>=), равно (==), не равно (~=), меньше (<), меньше или равно (<=). Например: x2>y. Логические выражения принимают значения «истина» или «ложь». Например, при x=2 и y=8 значение выражения x2>y является ложью. Несколько логических выражений могут быть объединены в одно операторами & и |. Например: x.^2>y | y>7. Если несколько логических выражений соединены оператором &, то значение такого выражения является истиной, если каждое логическое выражение, входящее в него, является истиной. Если несколько логических выражений соединены оператором |, то значение такого выражения является истиной, если хотя бы одно логическое выражение, входящее в него, является истиной. Зачастую при решении практических задач недостаточно выбора выполнения или невыполнения одного условия. В этом случае можно, конечно, по ветке else написать новый оператор if, но лучше воспользоваться расширенной формой оператора if. Инструкции_1 Инструкции_2 Инструкции_3 В этом случае оператор if работает так: если логическое выражение_1истинно, то выполняются инструкции_1, а затем инструкции, стоящие после оператора end. Если логическое выражение_2 является истиной, то выполняются инструкции 2, а затем инструкции, стоящие после оператора end. Если ни одно из логических выражений не является истиной, то выполняются инструкции, стоящие после слова else. Частные случаи: Примеры: -->if x>5 then y=8, end -->if x>5 then y=8;t=6; end Пример: -->if x>5 then y=8,t=6; else y=x^2,end Инструкции Замечание: слово then в составе условного оператора if не является обязательным.
Пример. Вычислить функцию y при x=0.397, если Решение: x=0.397; if x. ^2<=25* cos (x. ^3) then y=sin (3 *x) else y =(2* x – tan (x))./ sqrt (x. ^2+2) end Набрав этот файл в редакторе Scipad и запустив его на выполнение командой Execute/Load into Scilab, получим: y = 0.9287402 В качестве примера программирования разветвляющегося процесса рассмотрим решение квадратного уравнения . Входными данными этой задачи являются коэффициенты квадратного уравнения a, b, c. Выходными данными являются корни уравнения x 1, x 2или сообщение о том, что действительных корней нет. Алгоритм состоит из следующих этапов: 1. Ввод коэффициентов уравнения a, b и с. 2. Проверка, является ли уравнение квадратным (а ≠0). 3. Вычисление дискриминанта уравнения d. 4. Если d=0, то выводится сообщение: уравнение имеет два равных корня и печатается значение корня. 5. Если d>0, определяются x 1 и x 2 6. Если d<0, то выводится сообщение «Корней нет». Программа решения квадратного уравнения clc a=input('a='); b=input('b='); c=input('c='); if a==0 then disp("Уравнение не является квадратным") else // Вычисляем дискриминант. d=b*b-4*a*c; // Если дискриминант отрицателен, if d<0 // то вывод сообщения, disp(' Действительных корней нет'); elseif d==0 //иначе-вычисление корней соответствующего // квадратного уравнения. disp("уравнение имеет два равных корня");x=-b/(2*a) else x1=(-b+sqrt(d))/2/a x2=(-b-sqrt(d))/2/a end end a=-->1 b=-->2 c=-->-5 x1 = 1.4494897 x2 = - 3.4494897 Найти все корни квадратного уравнения можно и без оператора if, воспользовавшись тем, что в Scilab определены операции над комплексными числами. clc a=input('a='); b=input('b='); c=input('c='); d=b*b-4*a*c; x1=(-b+sqrt(d))/2/a; x2=(-b-sqrt(d))/2/a; disp(x1,x2); a=-->1 b=-->2 c=-->3 - 1. - 1.4142136i - 1. + 1.4142136i Комплексные корни квадратного уравнения
Дата добавления: 2015-03-29; Просмотров: 311; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |