Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ

Deklarata e përzgjedhjes if në C. Bazat e PHP-së

Loops janë një nga mjetet më të rëndësishme të programimit. Ato janë të dobishme në rastet kur ju duhet të bëni diçka një numër të caktuar herë.

Nëse ka një detyrë të tillë, për shembull, shfaqni rreshtin "përshëndetje të gjithëve" 1000 herë. Më pas, pa përdorur një lak, së pari do të duhet shumë kohë dhe së dyti, nuk do të duket shumë bukur. Kështu që ciklet që duhet të njihni në mënyrë perfekte sepse ato përdoren shumë, shumë shpesh.

Ekzistojnë katër unaza në programim, këto janë while, do-while, for dhe foreach... Secila prej tyre ka sintaksën e vet dhe secila përdoret në raste specifike.

Sythet më të përdorura janë for dhe foreach, pastaj while, dhe lak do-whileështë shumë e rrallë.

Dhe ne do të fillojmë me ciklin while.

Sintaksa për ciklin while është si më poshtë:


Së pari, ne deklarojmë një ndryshore i, e cila është një numërues, dhe brenda ciklit ne e rritim këtë numërues. Brenda kllapa shkruajmë kushtin për hyrje/dalje nga cikli.

Komentoni! Shkruani saktë gjendjen e daljes, përndryshe mund të rezultojë cikël pa fund dhe më pas skenari do të ngrijë... Një lak i tillë mund të ndodhë nëse, për shembull, shkruajmë true në kushtin e daljes.

Për shembull, le të shfaqim rreshtin "Përshëndetje të gjithëve!" 10 herë.

Var i = 0; ndërsa (i "); i ++;)

Ndryshorja i mund të fillojë nga 0 ose nga 1 ose nga çdo numër tjetër.

Kushti i daljes është në të njëjtën kohë kushti i hyrjes. Cikli funksionon si më poshtë: Së pari, kontrollon nëse ndryshorja i është më e vogël se 10, dhe nëse kushti është i vërtetë, atëherë futemi në ciklin, përndryshe, jo. V në këtë rast nëse ndryshorja i është e barabartë me 30, për shembull, atëherë cikli nuk do të ekzekutohet sepse 30 nuk është më pak se 10.

Hymë në lak, shfaqëm rreshtin "Përshëndetje të gjithëve", rritëm numëruesin dhe përsëri shkojmë te kushti, ku përsëri kontrollojmë nëse vlera e ndryshores i është më e vogël se 10, më pas futemi në cikli, në të kundërtën dalim. Dhe kjo ndodh deri në momentin kur kushti i hyrjes bëhet false, pra vlera e ndryshores i do të jetë 10. 10 nuk është më pak se 10, kështu që nuk hyjmë më në lak, por vazhdojmë.

Komentoni! Mos harroni të rritni numëruesin (i ++), përndryshe do të përfundoni përsëri në një lak të pafund.

Me ciklin while të rregulluar, tani le të kalojmë te cikli do-while.

Sintaksa për ciklin do-while është si më poshtë:


Dallimi midis ciklit while dhe ciklit do-while është se cikli do-while mund të ekzekutohet të paktën një herë, pavarësisht nga kushti, ndërsa cikli while, nëse kushti është false, nuk do të ekzekutohet fare.

Komentoni! Ashtu si me ciklin while, mos harroni të rritni numëruesin i.

Le të kalojmë në praktikë. Për shembull, le të numërojmë prodhimin e numrave nga 1 në 10.

Var i = 1; prodhimi var = 1; bëj (prodhimi * = i; i ++;) ndërsa (i

Rezultati do të jetë numri 3628800. Në hapin e parë, ne kemi hyrë menjëherë në ciklin, pavarësisht gjendjes së tij, ku është kryer operacioni prodhim * = i (kjo është e njëjtë me prodhimin = prodhim * 1). Më pas e shtojmë numëruesin. Pas rritjes, ai ka vlerën 2. Dhe në fund kontrollojmë kushtin, nëse vlera e numëruesit është më e vogël ose e barabartë me 10, atëherë kalojmë në përsëritjen tjetër të ciklit, përndryshe dalim nga cikli dhe lëvizim. në.

Për lak

Siç shkrova më lart, cikli for është mjaft i zakonshëm, kështu që duhet ta dini shumë mirë.

Për sintaksën e ciklit tjetër:


Për një kuptim më të mirë, le të zgjidhim një problem të thjeshtë. Le të themi se duhet të llogarisim shumën e numrave nga 1 në 1000 duke përdorur një cikli for.

Var shuma = 0; për (var i = 1; i

E ruajmë dokumentin, e hapim në një shfletues dhe shohim që rezultati është 500500.

Komentoni! Nëse ka vetëm një deklaratë në lak, atëherë mbajtëset kaçurrelë janë opsionale.

Për demonstrim do të shfaqim në ekran 5 herë, disa rreshta, për shembull "Përshëndetje!".

Për (var i = 1; i

Komentoni! Pas ekzekutimit të ciklit në ndryshoren i, vlera e fundit mbetet.

Tani le ta zgjidhim problemin pak më të vështirë, për shembull, duhet të shfaqim vargun "Përshëndetje" 100 herë. Dhe në mënyrë që e gjithë kjo të mos shfaqet në një rresht, atëherë pas çdo përsëritjeje të 10-të, do të shkojmë në linjë e re... Dhe në fund do të shfaqim vlerën e ndryshores i.

Për (var i = 1; i<= 100; i++){ document.write("привет!"); if(i % 10 == 0)  document.write("
");) dokument.shkruaj ("

Variabla i = "+ i +"

"); // i = 101

Loop Foreach zakonisht përdoret për të përsëritur mbi objekte dhe vargje. Prandaj, unë do të flas për të në artikullin që përshkruan punën me vargje.

Deklarata e thyerjesështë projektuar për të dalë me forcë nga laku.

Deklarata në vazhdim ju lejon të ndërprisni përsëritjen aktuale të lakut dhe të shkoni te tjetra.

Për një kuptim më të mirë, do të zgjidhim edhe një problem të thjeshtë. Le të themi se duam të llogarisim shumën e numrave tek nga 1 në 20. Dhe kur të arrijmë në përsëritjen e 15-të, do të dalim nga cikli.

Var shuma = 0; për (var i = 1; i<= 20; i++){ //Пропускаем текущею итерацию цикла if(i % 2 == 0) continue; summa += i; //Выходим совсем из цикла. if(i == 15) break; document.write(i + ". Итерация
");) dokument.shkruaj ("

përmbledhje= "+ përmbledhje +"

"); // përmbledhje = 64

Ne e ruajmë dokumentin, e hapim atë në një shfletues dhe shikojmë rezultatin.

Për praktikë, provoni të ndryshoni skriptin e shkruar në mënyrë që të llogarisë shumën e numrave çift.

Kjo përfundon këtë artikull. Tani ju e dini sintaksa e while, do-while, për sythe dhe si të punohet me to... Gjithashtu u takuan thyejnë dhe vazhdojnë deklaratat.

Në këtë artikull, unë do të flas për sythe for dhe while, operatorët thyej dhe vazhdojnë dhe gjithashtu për fjalën tjetër e cila, kur përdoret me një lak, mund të bëjë kodi i programit disi më e kuptueshme.

Ndërsa lak

Ndërsa është një nga nyjet më të gjithanshme në Python, dhe për këtë arsye është mjaft i ngadaltë. Ekzekuton trupin e lakut për sa kohë që kushti i lakut është i vërtetë.

>>> i = 5 >>> ndërsa i< 15 : ... print (i ) ... i = i + 2 ... 5 7 9 11 13

Për lak

Cikli for është tashmë pak më kompleks, pak më pak i gjithanshëm, por funksionon shumë më shpejt se cikli while. Ky cikli përsëritet mbi çdo objekt të përsëritur (siç është një varg ose një listë) dhe ekzekuton trupin e ciklit gjatë çdo kalimi.

>>> për i në "hello world": ... print (i * 2, fund = "") ... hheelllloo wwoorrlldd

Deklarata në vazhdim

Deklarata vazhdim fillon kalimin tjetër të ciklit, duke anashkaluar pjesën tjetër të trupit të lakut (për ose për një kohë)

>>> për i në "përshëndetje botë": ... nëse i == "o": ... vazhdo ... print (i * 2, fund = "") ... hheellll wwrrlldd

Deklarata e thyerjes

Deklarata e pushimit përfundon herët ciklin.

>>> për i në "përshëndetje botë": ... nëse i == "o": ... thyej ... print (i * 2, fund = "") ... hheellll

Fjala magjike tjetër

Fjalë tjetër aplikuar në për lak ose while, kontrollon nëse cikli u largua me një deklaratë pushimi, ose në një mënyrë "natyrore". Blloku i deklaratave brenda tjetrit do të ekzekutohet vetëm nëse cikli doli pa ndihmën e ndërprerjes.

>>> për i në "përshëndetje botë": ... nëse i == "a": ... thyej ... tjetër: ... print ( "Nuk ka shkronja a në varg") ... Nuk ka shkronjë a në varg

Disa burime thonë se deklarata zgjidhni nëse tjetër është operator i pavarur... Por nuk është, nëse tjetër është vetëm një shënim i deklaratës së përzgjedhjes if. Deklarata if else lejon programuesin të përcaktojë një veprim kur një kusht është i vërtetë dhe një veprim alternativ kur një kusht është false. Ndërsa nëse lejohet të përcaktojë një veprim në një kusht të vërtetë.

Sintaksa për shkrimin e deklaratës selekto nëse tjetër është:

Nëse (/ * gjendja e kontrolluar * /) (/ * trupi i operatorit përzgjedhës 1 * /;) tjetër (/ * trupi i operatorit përzgjedhës 2 * /;)

Ai lexon kështu: "Nëse kushti i kontrolluar është i vërtetë, atëherë zgjidhni trupin e deklaratës 1, përndryshe (d.m.th., kushti i kontrolluar është i rremë) zgjidhni trupin e deklaratës 2". Vini re se si shkruhet deklarata if else. Fjala tjetër është zhvendosur qëllimisht djathtas për ta bërë kodin e programit të kuptueshëm dhe të lehtë për t'u lexuar.

Le të shohim problemin nga tema e mëparshme duke përdorur if other. Më lejoni t'ju kujtoj gjendjen e problemit: "Ju janë dhënë dy numra, duhet t'i krahasoni".

// if_else.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #include "stdafx.h" #include duke përdorur hapësirën e emrave std; int kryesore (int argc, char * argv) (int a, b; cout<< "Vvedite pervoe chislo: "; cin >> a; cout<< "Vvedite vtoroe chislo: "; cin >> b; nëse (a> = b) // nëse a është më e madhe ose e barabartë me b, atëherë (cout<< a << " >= " << b << endl; } else // иначе { cout << a << " <= " << b << endl; } system("pause"); return 0; }

Në këtë kod, ne jemi të interesuarrreshtat 14-20... Këto rreshta lexohen kështu: nëse a (numri i parë) më i madh ose i barabartë b (numri i dytë), më pas ekzekutoni deklaratën e daljes nërreshti 16

Cout<< a << " >= " << b << endl;

përndryshe ekzekutoni deklaratën e daljes në rreshti 19

Cout<< a << " <= " << b << endl;

Në këtë ife, ne përdorim operacionet e relacionit> = dhe<= . Условие перехода не совсем правильно, так как условие будет ложно только в том случае, если первое число будет меньше второго, во всех остальных случаях условие истинно. Значит, rreshti 19 duhet të shkruhet kështu

cout<< a << " < " << b << endl; // в кавычках записать не меньше или равно, а просто меньше.

Dhe kështu funksionoi programi (shih Figurën 1).

Vvedite pervoe chislo: 15 Vvedite vtoroe chislo: -4 15> = -4 Shtypni çdo buton për të vazhduar. ... ...

Figura 1 - Operatori i zgjedhur nëse tjetër

Më lejoni t'ju tregoj një shembull tjetër të përdorimit të deklaratave të përzgjedhjes if else (të ashtuquajturat deklarata të mbivendosura if else për përzgjedhje të shumëfishtë).

Detyrë:
Krijo një algoritëm që gjen vlerën e y, nëse y = x, për x<0; у=0, при 0<=х<30; у=х 2 , при х>=30;

// inif_else.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #include "stdafx.h" #include duke përdorur hapësirën e emrave std; int kryesore (int argc, char * argv) (int x, y; cout<< "Vvedite x: "; cin >> x; nëse (x< 0) { y = x; // выполняется, если х меньше нуля } else { if ((x >= 0) && (x< 30)) { y = 0; // выполняется, если х больше либо равно нуля и меньше 30 } else { if (x >= 30) (y = x * x; // ekzekutohet nëse x është më i madh ose i barabartë me 30))) cout<< "y=" << y << endl; system("pause"); return 0; }

Në këtë problem, tre raste janë të mundshme:
Rasti 1: x< 0 ;
Rasti i dytë: x shtrihet në rangun nga 0 (duke përfshirë 0) deri në 30;
Rasti i tretë: x është më i madh ose i barabartë me 30.

Vini re risinë !! V 17 rresht shënimi si ky: nëse ((x> = 0) && (x< 30)) , kam përdorur simbolet && - kjo. Operacioni Boolean DHE&& nevojitet për të kombinuar disa kushte të thjeshta në një përbërje. Në rastin tonë, është e nevojshme të kontrolloni vërtetësinë e dy kushteve: e para - x> = 0, e dyta - x< 30 . Все проверяемое условие будет истинно, если истинны два простых условия. В математике правильной записью считается такая запись: 0 <= x < 30 , а в С++ правильной записью считается вот такая запись: (x >= 0) && (x< 30) или такая 0 <= x && x < 30 . Кстати круглые скобочки () && () не обязательны, так как условия простые, но для уверенности, я прописываю, всегда, данные скобочки и вам советую.

Analiza e një rasti të veçantë:

Le të themi se përdoruesi ka futur numrin 31. Duke filluar nga rreshti 12, kontrollohen kushtet. Ai lexon kështu: "Nëse x (31 në rastin tonë)< 0, то выполнить оператор в rreshti 14". Por meqenëse 31> 0 kushti është i rremë, shkojmë te fjala tjetër (ndryshe) rreshti 15... Tjetra, ne kontrollojmë nëse numri 31 është në intervalin e specifikuar. Lexohet kështu: nëse x> = 0 dhe x<30më pas ekzekutoni deklaratën në rreshtin 19 ... Por meqenëse numri 31 nuk përfshihet në intervalin e specifikuar, kushti është i rremë. Hollësisht rreshti 17: programi së pari do të kontrollojë kushtin e parë të thjeshtë x> = 0 - është e vërtetë, dhe nëse e para është e vërtetë, atëherë programi do të vazhdojë të kontrollojë kushtin e dytë të thjeshtë x< 30 – оно ложно. Следовательно всё составное условие ложно, ведь в составном условии у нас используется логическая операция && , а это значит, что все составное условие истинно только в том случае, когда истинны оба простых условия. Переходим к else (иначе), здесь у нас последний if , (rreshti 22). Është kryer kontrollimi i x> = 30. Lexohet kështu: Nëse x> = 30, atëherë ekzekutoni operatorin në linjën 24 ... Më në fund, kushti është i vërtetë, kështu që deklarata në rreshti 24... DHE rreshti 28 printon vlerën që rezulton. Epo, të gjithë e shqyrtuan programin në detajet më të vogla. Rezultati i programit, nëse përdoruesi ka futur numrin 31 (shih Figurën 2)

Mësimi diskuton operatorin e kushtëzuar në Pascal ( nëse). Shpjegon se si të përdoren kushte të shumta në një konstrukt ( DHE dhe OSE). Janë konsideruar shembuj të punës me operatorin

Ju kujtojmë se kjo faqe nuk pretendon të jetë një prezantim i plotë i informacionit mbi temën. Qëllimi i portalit është të ofrojë një mundësi për të përvetësuar materialin mbi bazën e shembujve të zgjidhur të gatshëm në temën "Gjuha e programimit Pascal" me detyra praktike për të konsoliduar materialin. Detyrat Pascal të paraqitura në sajt renditen në mënyrë sekuenciale ndërsa kompleksiteti i tyre rritet. Faqja e faqes mund të përdoret nga mësuesit dhe mësuesit si një ndihmë vizuale.

Para shqyrtimit të kësaj teme, kryesisht janë përdorur algoritme lineare në Pascal, të cilat janë tipike për detyra shumë të thjeshta kur veprimet (operatorët) kryhen në mënyrë sekuenciale, njëri pas tjetrit. Algoritmet më komplekse përfshijnë përdorimin e një konstrukti degëzimi.

Një bllok diagram i një operatori të kushtëzuar:

Operatori i kushtëzuar Pascal ka sintaksën e mëposhtme:

Versioni i shkurtuar:

nëse kushti atëherë deklaratë;

Versioni i plotë:

nëse kushti, atëherë deklarata tjetër;

Operatori i kushtëzuar në Pascal - nëse - shërben për të organizuar ecurinë e detyrës në atë mënyrë që sekuenca e ekzekutimit të deklaratave të ndryshojë në varësi të çdo kushti logjik. Një kusht logjik mund të marrë një nga dy vlerat: ose e vërtetë (e vërtetë) ose e rreme (false), përkatësisht, mund të jetë ose e vërtetë ose e rreme.

Operator i përbërë

Nëse në një gjendje të vërtetë është e nevojshme të ekzekutohen disa operatorë, atëherë sipas rregullave të gjuhës Pascal, ato duhet të mbyllen në një bllok, duke filluar me fjalën e shërbimit fillon dhe duke përfunduar me fjalën e shërbimit fund. Një bllok i tillë zakonisht quhet kllapat e operatorit, dhe ky konstruksion - operator i përbërë:

Kllapat e operatorit dhe operatori i përbërë në Pascal:

nëse shprehja boolean atëherë filloni deklaratën1; operatori2; fundi tjetër fillojë deklarata1; operatori2; fundi;

Përkthimi nga operatori anglez i termave do ta bëjë më të lehtë kuptimin e përdorimit të tij:

NËSE PASTAJ TJETER
NËSE PASTAJ PER Ndryshe


Në një gjendje (në një shprehje logjike), përdoren operatorë relacionalë.
Konsideroni një listë të operatorëve të marrëdhënieve Pascal:

  • më shumë>
  • më pak
  • më i madh ose i barabartë në Pascal> =
  • më pak se ose e barabartë në Pascal
  • krahasimi në Pascal =
  • jo e barabartë në Pascal

Shembull: gjeni më të madhin nga dy numrat

opsioni 1 Opsioni 2


Kuptoni punën në detaje Mund të përdorni operatorin e kushtëzuar në Pascal duke parë video tutorial:

Shembull: njehsoni vlerën e ndryshores y përgjatë njërës prej dy degëve

Trego zgjidhjen:

var x, y: real; filloni të shkruani ("futni x"); lexo (x); nëse x> 0 atëherë y: = ln (x) tjetër y: = exp (x); Writln ("y =", y: 6: 2) (numri i përgjithshëm do të zërë 6 pozicione dhe do të ketë 2 shifra dhjetore në të) fund.

Vini re se si shfaqet y në këtë shembull. Kur nxirrni variabla të tipit në pascal, mund të përdorni të ashtuquajturat dalje e formatuar, ose shënim me dy dy pika:
y: 6: 2
- numri pas pikës së parë (6) tregon se sa karaktere do të marrë numri kur të shfaqet në ekran
- shifra pas dy pikave të dyta (2) tregon se sa shifra pas presjes dhjetore të numrit real do të shfaqen

Kështu, përdorimi i një shënimi të tillë në paskal praktikisht lejon rrumbullakimin në të qindtat, të mijëtat, etj.

Problemi 0. Llogaritni vlerën e ndryshores y përgjatë njërës prej dy degëve:

Objektivi 1. Dy numra futen në kompjuter. Nëse e para është më e madhe se e dyta, atëherë llogaritni shumën e tyre, përndryshe - produktin. Kompjuteri më pas duhet të printojë rezultatin dhe tekstin PROBLEM SOLVED

Objektivi 2. Dragoi rrit tre koka çdo vit, por pasi të mbushë 100 vjeç, vetëm dy. Sa koka dhe sy ka një dragua N vjet?

Operacionet Boolean në Pascal (në terma Boolean)

Kur është e nevojshme të përdoret një kusht i dyfishtë në Pascal, atëherë nevojiten operacione boolean.

  • Operacioni logjik DHE (Dhe), vënë në mes të dy kushteve, thotë se të dyja këto kushte duhet të plotësohen menjëherë (duhet të jenë të vërteta). Kuptimi logjik i operacionit është "lidhja".
  • Midis dy kushteve, shenja OSE (OR) thotë se mjafton nëse të paktën njëri prej tyre plotësohet (një nga dy kushtet është i vërtetë). Kuptimi logjik i operacionit është "ndarje".
  • Në Pascal XOR - një shenjë e një operacioni logjik, që ka kuptimin e "ndarjes së rreptë" dhe tregon se është e nevojshme që një nga dy kushtet të plotësohet (e vërtetë), dhe tjetra të mos përmbushet (e rreme).
  • Operacioni logjik JO para një shprehjeje ose ndryshoreje logjike ka kuptimin "negacion" ose "inversion" dhe tregon se nëse ndryshorja ose shprehja e dhënë është e vërtetë, atëherë mohimi i tyre është i rremë dhe anasjelltas.

E rëndësishme: Secila prej kushteve të thjeshta duhet të vendoset në kllapa.

Shembull: Shqyrtoni shembuj të veprimeve logjike në shprehjet logjike në Pascal

1 2 3 4 5 6 7 8 var n: numër i plotë; fillimi n: = 6; nëse (n> 5) dhe (n<10 ) then writeln ("истина" ) ; if (n>7) ose (n<10 ) then writeln ("истина" ) ; if (n>7) xor (n<10 ) then writeln ("истина" ) ; if not (n>7) pastaj shkruani ("e verteta"); fund.

var n: numër i plotë; fillimi n: = 6; nëse (n> 5) dhe (n<10) then writeln("истина"); if (n>7) ose (n<10) then writeln("истина"); if (n>7) xor (n<10) then writeln("истина"); if not(n>7) pastaj shkruani ("e verteta"); fund.

Shembull: Kompania rekruton punonjës nga 25 deri në 40 vjet përfshirëse. Vendosni moshën e personit dhe përcaktoni nëse ai është i përshtatshëm për kompaninë e caktuar (japni përgjigjen "i përshtatshëm" ose "jo i përshtatshëm").
Veçori:është e nevojshme të kontrollohet nëse dy kushte janë përmbushur njëkohësisht.

Shembull: Jepet një numër i plotë A. Kontrollo vërtetësinë e pohimit: "Numri A është tek."

Artikujt kryesorë të lidhur