5.3. Логикалық өрнектер
Қатынас операциялары.Қатынас операторлары скаляр және векторлық деректермен де жұмыс істей алады. Массивтерге арналған қатынастар операторлары екі массивті элементтік салыстыруымен орындалады және егер қатынасы дұрыс болса, сол өлшемдегі логикалық массивті 1-ге(true) тең және теріс жағдайда 0-ге (false) тең элементтермен қайтарады.
Шартты орнату үшін келесі қатынас операторлары қолданылады (5.1 кесте).
5.1 кесте-Қатынас операциялары
Оператор
|
Тең
|
Кем немесе тең
|
Кем
|
Бартық немесе тең
|
Артық
|
Тең емес
|
Белгісі
|
==
|
<=
|
<
|
>=
|
>
|
~=
|
Теңдіктің операторы бір емес, екі = белгіден тұрады.
Осы аталған операциялардан басқа, MATLAB-та келесі бұйрықтар (функциялар) бар:
- eq(a, b)–а мен b мәндерін теңдікке тексереді;
- ge(a, b) –a мәні b-дан артық немесе тең екенін тексереді;
-gt(a, b)- a-ның b-дан артық екенін тексереді;
- le(a, b)–a-ның b-дан аз немесе тең екенін тексереді;
- lt(a, b) – a мәні b-дан аз екенін тексереді;
- ne (a, b) –a мәні b мәніне тең емес екендігін тексереді;
-isequal – массивтерді теңдікке тексереді;
- isequaln –NaN мәндерін тең деп қарастыра отырып, массивтерді теңдікке тексереді.
Логикалық операторлар. MATLAB-та логикалық өрнек екі мәнде бола алады. Олар «true» немесе «false» емес, сандық түрде болады, яғни 1, егер өрнек ақиқат болса және 0, егер жалған болса.
MATLAB үш логикалық операторды қолданады: AND (&) - И, OR( | ) - ИЛИ, NOT( ~)- жоқ. (5.2 кесте).
Қатынас операциялары сияқты, логикалық операцияларды да векторлар мен матрицаларға қолдануға болады.
5.2 кесте-Логикалық қатынастар
Оператор
|
Шарт
|
Әдіс 1
|
Әдіс 2
|
ЛогикалықЖӘНЕ
|
x<3 және y=4
|
and (x<3, y==4)
|
(x<3) & (y==4)
|
Логикалық НЕМЕСЕ
|
х=1 немесе х=2
|
or (х==1, х==2)
|
(x==1) | (x==2)
|
Терістеу ЖОҚ
|
a≠1.9
|
not (a==1.9)
|
~(a==1.9)
|
5.4 Зертханалық жұмысты орындау тәртібі
5.4.1 Келесі операцияларды орындау үшін скрипт-файлын жасаңыз:
- A және B матрицасының көбейтіндісін табу;
A=[4,7,8;5,2,3];
B=[5,7,8;8 7 4];
C=A.*B
- v векторына А матрицасының көбейтіндісін табу;
- B матрицасына кері С матрицасын табу;
- А матрицасының анықтауышын табу.
5.4.2 Келесі формула бойынша Фаренгейт градустарында берілген температураны Цельсий градустарына түрлендіру үшін файл-функцияны құрыңыз:
function tcel=temp(tfahr);
tcel=(tfahr-32)*5/9
end
Егер Фаренгейт бойынша судың қайнау температурасы 212°тең болса, осы функцияны пайдалана отырып, судың қайнау температурасын Цельсий бойынша табыңыз.
Бұл функцияны кезкелген векторларға қолданыңыз.
Бұл функцияны кез келген матрицаға қолданыңыз.
5.4.3 Бірнеше кіріс айнымалылары бар файл-функцияны жасаңыз. Кіріс айнымалылары ретінде текше көлемін табу үшін: len ұзындығы, br ені және dep биіктігі кіріс айнымалылары ретінде қабылдаңыз.
5.4.4 Алдыңғы функцияны текшенің көлемімен беттің ауданын есептейтіндей етіп өзгертіңіз; түсініктемелер қосыңыз; есептеулерді орындаңыз және кіріс шамасының бірнеше мәні үшін нәтижелер алыңыз.
function S=audan(len,br)
S=len*br
end
5.4.5 Квадрат теңдеудің түбірлерін есептеу үшін алгоритмнің блок-сызбасын жасаңыз. Осы алгоритмді іске асыру үшін файл-функциясын жасаңыз. Осы функция көмегімен таңдалған квадрат теңдеуінің түбірін есептеңіз. Функцияның мәтінінде теңдеудің дискриминантын тексерілуін қарастырыңыз.
function d=disk(a,b,c)
d=(-b).^2-4*a*c
end
Түбірлері х1
function x1=dis(a,b,d)
x1=(-b+sqrt(d))/2*a
end
Түбірлері х2
function x2=di(a,b,d)
x2=(-b+sqrt(d))/2*a
end
5.4.6 Есептеу мақсатында файл-функциянықұрыңыз:
- берілген радиусы бар сфераның көлемін есептеңіз;
Сфера көлемі:v= *3.14*
- сфера бетін есептеңіз;
5.4.7 Бұйрық терезеде q, w, e скаляр шамаларын енгізіңіз.
Теріңіз:
- w0) | (q<0); result = ~(q<0); (e>0) | (q<0).
1 деген сан дұрыс
0 деген сан дұрыс емес
Есептеу коды
>> q=3;
>> c=4;
>> w=2;
>> e=5;
>> -wans =
logical
1
>> q==e
ans =
logical
0
>> (e>0) | (q<0)
ans =
logical
1
>> result = ~(q<0)
result =
logical
1
>> (e>0) | (q<0)
ans =
logical
1
>>
5.4.8 Үшөлшемді x және y векторларын енгізіңіз:
- z= (x;
- z = ~(x;
\
Есептеу коды
>> x=[1,5,8];
>> y=[8,4,6];
>> z= (x
z =
1×3 logical array
1 0 0
>> z = ~(x
z =
1×3 logical array
0 1 13>
Достарыңызбен бөлісу: |