Негізгі айырмашылық – әйтпесе және ауыстырғыш
Бағдарламалауда шешім қабылдау құрылымдары бар. if else және коммутатор - олардың екеуі. Өрнек мәндерден, операторлардан, тұрақтылардан және т.б. тұрады. if else егер берілген өрнек ақиқат болса, операторлар блогын орындауға немесе берілген өрнек жалған болса, қосымша блокты орындауға мүмкіндік береді. Коммутатор айнымалының немесе өрнектің мәніне көп жақты тармақ арқылы бағдарламаның орындалуын басқару ағынын өзгертуге мүмкіндік беру үшін пайдаланылады. Егер бағдарламашы бір айнымалының мәнін тексергісі келсе, онда ол switch операторын пайдалана алады. Бұл мақала if else және switch арасындағы айырмашылықты талқылайды.if else және switch арасындағы негізгі айырмашылық if else бағдарламасында орындау блогы if операторындағы өрнекті бағалауға негізделеді, коммутатор кезінде орындалатын операторлар оған берілген жалғыз айнымалыға байланысты болады.
Басқа болса не болады?
Егер басқада екі блок болса. Олар if және else. if блогында бағаланатын өрнек бар. Егер бұл шын болса, if блогының ішіндегі операторлар орындалады. Егер шарт жалған болса, else блогына тиесілі операторлар орындалады. Бағдарламалау тілдері кез келген нөлдік емес және нөлдік емес мәндерді шын деп қабылдайды. Нөл және нөл жалған деп есептеледі. if және else кілт сөздер болып табылады. Сондықтан оларды идентификатор ретінде пайдалану мүмкін емес.
01-сурет: if else мәлімдемелерімен бағдарлама
Жоғарыдағы бағдарламаға сәйкес сан бүтін сандарды сақтай алатын айнымалы. Онда 5 мәні бар. if блогында өрнек тексеріледі. Санды нөлге бөлгеннен кейін қалдық 0 болса, бұл санның жұп екенін білдіреді. Егер қалдық 1 болса, онда сан тақ болады. 5 саны тақ. Сондықтан else блогы орындалады.
Ауыстыру дегеніміз не?
Егер бағдарламашы бір айнымалының мәнін тексергісі келсе, онда ол қосқышты пайдалана алады. Бұл бірнеше таңдауды таңдау мәлімдемесі. Коммутаторда көптеген регистрлік мәлімдемелер болуы мүмкін. Айнымалы коммутаторға берілгенде, ол әрбір case операторының мәнімен салыстырылады. Сәйкес мән табылса, сол нақты жағдайдың мәлімдемелері орындалады. Бұл мәлімдемелер үзіліс болғанша орындалады. Егер case операторларында үзіліс операторлары болмаса, онда орындау switch операторының соңына дейін орындалады. Әдепкі жағдай орындалады, егер жағдайлардың ешқайсысы ақиқат болмаса. Әдепкі үзіліс мәлімдемесін қажет етпейді.
02-сурет: қосқышы бар бағдарлама
Жоғарыдағы бағдарламаға сәйкес, num1 және num2 екі бүтін мәнді қамтиды. Оператор символ болып табылады. Ол коммутаторға беріледі. Ол барлық жағдай мәлімдемелерімен тексеріледі. Берілген оператор - бөлу. Сондықтан бөлу есептеліп, басып шығарылады. Содан кейін орындау үзіліс операторына байланысты коммутатордан шығады. Үзіліске жеткенде басқару элементі коммутатордан кейінгі келесі жолға өтеді. Жалпы, коммутатор операторы бірнеше жағдай мәлімдемелерінің бірін таңдау үшін жиі пернетақта пәрменін пайдаланады.
If else және switch арасында қандай ұқсастық бар?
If else және коммутатор екеуі де бағдарламалаудағы шешім қабылдау құрылымдары
If else және switch арасындағы айырмашылық неде?
егер басқасына қарсы болса |
|
if else - шарт ақиқат болса, операторлар блогын орындайтын және шарт жалған болса, қосымша блокты орындайтын басқару құрылымы. | Switch операторы айнымалы немесе өрнектің мәніне бағдарламаның орындалуын басқару ағынын көп жақты тармақ арқылы өзгертуге мүмкіндік беретін таңдауды басқару механизмінің түрі болып табылады. |
Орындау | |
Егер басқа болса, бағаланған өрнекке байланысты if немесе else блогы орындалады. | Ажыратқыш үзіліске жеткенше немесе ауыстырып-қосқыш аяқталғанша бірінен соң бірін орындайды. |
Бағалау | |
if операторы, бүтін сандар, таңбалар, жылжымалы нүкте сандары немесе логикалық типтерді бағалайды. | Switch операторы таңбалар мен бүтін сандарды бағалайды. |
Әдепкі орындалу | |
Егер if блогының шарты жалған болса, else блогының ішіндегі операторлар орындалады. | Ауыстыруда, егер жағдай мәлімдемелерінің ешқайсысы сәйкес келмесе, әдепкі операторлар орындалады. |
Тестілеу | |
If else теңдігі мен логикалық өрнектерді тексеріңіз. | Ауыстыру теңдікті тексереді. |
Қорытынды – егер басқасына қарсы болса
Бағдарламалауда шешім қабылдаудың екі құрылымы if else және switch болып табылады. if else операторы шартты оператор болса, шарттың ақиқат немесе жалған болуына байланысты мәлімдемелер жиынын іске қосады. Коммутаторды бір айнымалыны тексеру үшін пайдалануға болады.if else пен switch арасындағы айырмашылық if if операторындағы өрнекті бағалауға негізделген if else орындау блогы, ал switch операторы оған берілген жалғыз айнымалыға байланысты орындалатын операторларды таңдайды.