Скачиваний:
3
Добавлен:
28.04.2023
Размер:
109.45 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ Федеральное государственное образовательное бюджетное учреждение высшего профессионального образования «Санкт-Петербургский государственный университет телекоммуникаций им. проф. М. А. Бонч-Бруевича»

Кафедра радиосистем и обработки сигналов

Дисциплина «Прикладные пакеты моделирования»

Лабораторная работа №6

Режим программирования: Организация разветвлений и циклов

Выполнил:

Проверил:

Санкт-Петербург

2022 г.

  1. Организация разветвлений с одним условием.

function y1=y1(a,b) x=[-4:0,1:4];

if and(a~=0,b~=0)

y1=a*sin(b*x);

plot(x,y1),grid,title('y1=a*sin(b*x)'); else

y1=(a+2)*x+b;

plot(x,y1),grid,title('y1=(a+2)*x+b'); end

Command Window:

>> s=y1(4,1)

3.3659 3.6372

s = 3.0272 -0.5645 -3.6372 -3.3659 0

0.5645 -3.0272

>> c=y1(0,0)

c = -8 -6 -4 -2 0 2 4 6

Пояснение:

  • какой оператор использован для организации разветвления Разветвление по условию выполняется с помощью оператора if

  • что проверяется при организации разветвления

При организации разветвления проверяется условие

  • какие параметры function-файла y1 являются входными и выходными у1 - выходной параметр, а и b - входные

  1. Организация разветвлений с несколькими условиями.

function y2=y2(a,b)

x=[-4:0,1:4];

if and(a~=0,b~=0)

y2=a*sin(b*x);

plot(x,y2),grid,title('y2=a*sin(b*x)');

elseif and(a>-2,b>0)

y2=(a+2)*x+b;

plot(x,y2), grid, title('y2=(a+2)*x+b');

else

y2=(2-a)*x.A2+b;

plot(x,y2),grid,title('y2=(2-a)*xA2+b'); end

Command Window:

>>z=y2(-3,0)

z =

80 45 20 5 0 5 20 45 80

>> c=y2(1,4)

c =

0.2879 0.5366 -0.9894 0.7568 0 -0.7568 0.9894

0.5366 -0.2879

Пояснение:

• какой оператор использован для организации разветвления Оператора if elseif else использован для организации разветвления

  1. Организация цикла с заранее известным числом повторений.

function F=Fibonacci (i)

F1=0;

F2 = 1;

disp(strcat(num2str(F1,F2)))

for i=3:10

F=F1+F2;

F1=F2;F2=F;

disp(strcat(num2str(F)))

end

Command Window:

>> F=Fibonacci

0

1

2

3

5

8

13

21

34

F =

34

Пояснение:

  • какой оператор использован для организации цикла оператор for использован для организации цикла

  • какие параметры function-файла Fibonacci являются входными и выходными F-выходной параметр, i-входной

  1. Организация цикла с заранее неизвестным числом повторений.

function [s,s1,s2] = GeomProg(q)

n=0;s0=0;

q=input('q=') e=input('e=') while e>1e-4

s=s0+(q).An;

e=abs(s-s0);

s0=s;

n=n+1;

end

s1=1/(1-q)

s2=abs( (s)-abs(s1)) disp(strcat(['s= ', num2str(s),'s1= ', num2str(s1),'s2= ', num2str(s2)]))

Command Window:

>> GeomProg q=0.3 q =

0.3000 e=100 e =

100 s1 = 1.4286 s2 = 2.8119e-005 s= 1.4285s1= 1.4286s2= 2.8119e-005

ans = 1.4285

Пояснение:

• какой оператор использован для организации цикла

оператор while использован для организации цикла

  • какие параметры function-файла GeomProgression являются входными и выходными

8,81,82-выходные параметры, q-входной

  1. Организация разветвлений в зависимости от значения выражения.

script

clc

clear

disp('0-Fibonacci')

disp('1-GeomProg')

disp('2-y1')

disp('3-y2')

variant=input('variant= ');

switch (variant)

case 0

disp('Исполняется файл Fibonacci')

y=Fibonacci;

case 1

disp('Исполняется файл GeomProg')

y=GeomProg;

case 2

disp('Исполняется файл y1')

y=y1;

case 3

disp('Исполняется файл y2')

y=y2;

otherwise

disp('Неверный ввод')

end

Command Window:

0-Fibonacci

  1. GeomProg

• какой оператор использован для организации цикла 4

какой оператор использован для организации разветвления 5

что проверяется при организации разветвления 5

Неверный ввод

Пояснение:

  • какой оператор использован для организации разветвления

оператор switch использован для организации разветвления

  • что проверяется при организации разветвления

при организации разветвления проверяется значение выражения

  • к какому типу данных может принадлежать переменная variant переменная variant может принадлежать к типу данных int

Соседние файлы в папке Лабы