Ҳаёт

Дастури сартарошида барои муқоисаи арзишҳо дар Перл

Дастури сартарошида барои муқоисаи арзишҳо дар Перл



We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

Операторҳои муқоисавии Perl баъзан метавонанд ба барномасозони нави Perl иштибоҳ кунанд. Ихтилоф аз он далел бармеояд, ки Perl амалан ду маҷмӯи операторҳои муқоисавӣ дорад - яке барои муқоисаи арзишҳои ададӣ ва дигаре барои муқоисаи сатри амрикоии стандартии мубодилаи иттилоот (ASCII).

Азбаски операторҳои муқоисавӣ одатан барои назорати ҷараёнҳои мантиқии барномаҳо ва қабули қарорҳои муҳим истифода мешаванд, истифодаи операторони нодуруст барои арзише, ки шумо меозмояд, метавонад ба хатогиҳои ногаҳонӣ ва соатҳои ислоҳи хато оварда расонад, агар шумо эҳтиёткор набошед.

Дар хотир нигоҳ доштани чизеро, ки дар поёни ин саҳифа навишта шудаанд, фаромӯш накунед, то баъзе чизҳоро дақиқаи охирин дар хотир дошта бошед.

Нобаробар, на баробар

Операторҳои муқоисавӣ нисбатан содда ва эҳтимолан истифодашаванда барои санҷидани он, ки оё як арзиш ба арзиши дигар баробар аст. Агар аҳамият баробар бошад, санҷиш ҳақиқӣ бармегардад, ва агар арзишҳо баробар нестанд, санҷиш бардурӯғ бармегардад.

Барои озмоиши баробарии ду рақамӣ арзишҳо, мо оператори муқоисаро истифода мебарем ==. Барои озмоиши баробарии ду сатр арзишҳо, мо оператори муқоисаро истифода мебарем экв (EQual).

Ин аст мисоли ҳарду:

агар (5 == 5) {чоп "== барои арзишҳои ададӣ n"; }

if ('moe' eq 'moe') {print "eq (EQual) барои арзишҳои сатр n"; }

Озмоиши муқобил, на баробар, хеле шабеҳ аст. Дар хотир доред, ки ин санҷиш бармегардад рост агар аҳамиятҳои санҷидашуда бошанд нест ба якдигар баробаранд. Барои дидани агар ду рақамӣ арзишҳо ҳастанд нест ба ҳамдигар баробар шуда, мо оператори муқоисаро истифода мебарем !=. Барои дидани агар ду сатр арзишҳо ҳастанд нест ба ҳамдигар баробар шуда, мо оператори муқоисаро истифода мебарем не (Нобаробар).

if (5! = 6) {print "! = барои арзишҳои ададӣ n"; }

if ('moe' ne 'curly') {print "ne (Нобаробар) барои арзишҳои сатр n"; }

Калонтар, бузургтар ё баробар ба

Акнун биёед ба назарбузургтар аз операторони муқоисавӣ. Бо истифода аз ин оператори аввал, шумо метавонед бисанҷед, ки оё як арзиш аз арзиши дигар бузургтар аст. Барои дидани агар дурақамӣарзишҳо аз якдигар бузургтаранд, мо оператори муқоисаро истифода мебарем>. Барои дидани агар дусатрарзишҳо аз якдигар бузургтаранд, мо оператори муқоисаро истифода мебаремгт (Бузург).

if (5> 4) {print "> барои арзишҳои ададӣ n"; }

if ('B' gt 'A') {print "gt (Бузургтар) барои арзишҳои сатр n"; }

Шумо инчунин метавонед барои санҷедкалон ё баробар, ки хеле ба назар монанд. Дар хотир доред, ки ин санҷиш бармегардадрост агар арзишҳои санҷидашуда ба ҳамдигар баробар бошанд ё арзиши он дар чап аз арзиши дар тарафи рост буда бештар бошад.

Барои дидани агар дурақамӣарзишҳо аз якдигар зиёд ё ба ҳам баробаранд, мо оператори муқоисаро истифода мебарем>=. Барои дидани агар дусатр арзишҳо аз якдигар зиёд ё ба ҳам баробаранд, мо оператори муқоисаро истифода мебаремге (Бузургтар аз баробар-ба).

агар (5> = 5) {чоп "> = барои арзишҳои ададӣ n"; }

if ('B' ge 'A') {print "ge (Бузургтар аз-баробар) барои арзишҳои сатр n"; }

Камтар, камтар ё камтар

Як қатор операторҳои муқоисавӣ мавҷуданд, ки шумо метавонед барои муайян кардани ҷараёни мантиқии барномаҳои Perl-и худ истифода баред. Мо аллакай фарқи байни операторҳои муқоисаи рақамии Perl ва операторҳои муқоисаи Perl-ро муҳокима кардем, ки метавонад ба барномасозони нави Perl нофаҳмиҳо барорад. Мо инчунин фаҳмидем, ки оё ду арзиш ба ҳам баробар аст ё ба ҳам баробар нестанд ва мо фаҳмидем, ки оё ду арзиш аз ҳам бузургтар ё ба ҳам баробаранд.

Биёед бакамтар аз операторони муқоисавӣ. Бо истифода аз ин оператори аввал, шумо метавонед санҷед, ки оё як арзиш асткамтар аз арзиши дигар. Барои дидани агар дурақамӣ арзишҳо ҳастандкамтар аз ҳамдигар, мо оператори муқоисаро истифода мебарем<. Барои дидани агар дусатр арзишҳо ҳастандкамтар аз ҳамдигар, мо оператори муқоисаро истифода мебаремлт (Камтар аз).

if (4 <5) {print "<барои арзишҳои ададӣ n"; }

if ('A' lt 'B') {print "lt (Than Than) барои арзишҳои сатр n"; }

Шумо инчунин метавонед барои,камтар ё баробар, ки хеле ба назар монанд. Дар хотир доред, ки ин санҷиш бармегардадрост агар арзишҳои санҷидашуда ба ҳамдигар баробар бошанд ё арзиши он дар тарафи чап аз арзиши дар тарафи рост буда камтар аст. Барои дидани агар дурақамӣ арзишҳо ҳастандкамтар ё баробар ҳамдигар, мо оператори муқоисаро истифода мебарем<=. Барои дидани агар дусатр арзишҳо ҳастандкамтар ё баробар ҳамдигар, мо оператори муқоисаро истифода мебаремле (Камтар аз баробар-ба).

агар (5 <= 5) {чоп "<= барои арзишҳои ададӣ n"; }

if ('A' le 'B') {print "le (Less-than Equal-to) барои арзишҳои сатр n"; }

Маълумоти бештар дар бораи операторони муқоисавӣ

Вақте ки мо дар бораи арзишҳои сатрӣ ба ҳамдигар баробар гап мезанем, мо ба арзишҳои ASCII-и худ муроҷиат мекунем. Ҳамин тавр, ҳарфҳои калон аз ҷиҳати ҳарфҳои хурд аз ҷиҳати техникӣ камтаранд ва ҳарф дар алфавит ҳарчи бештар аст, арзиши ASCII баландтар аст.

Боварӣ ҳосил кунед, ки шумо ASCII-и худро санҷед, агар шумо дар асоси сатрҳо тасмимҳои мантиқӣ мегиред.