Bună ziua și bun venit înapoi.
Vom vorbi încă puțin despre un flux de control, așa că să ne aruncăm în buclă repetând codul.
Mai întâi vom vorbi despre asta pentru bucla.
Ciclul pentru se va referi la repetarea codului.
Deci, dacă doar un cod de reamintire a memento-urilor este o modalitate de a permite să nu permiteți dublarea, puteți executa mai mult
de un singur cod de linie la un moment dat.
Deci, limbajul de programare C are anumite constructe concepute pentru limba pe care o puteți folosi atunci când doriți
să repetați codul.
Și acest lucru vă permite să rippee un bloc de declarații până când o anumită condiție este îndeplinită.
Deci este similar cu bucla pentru și că vei renunța la o expresie sau o condiție booleană.
Nu poți să alergi pentru totdeauna atunci când intri într-o buclă pentru totdeauna.
Asta înseamnă că este o buclă infinită și există doar anumite momente în care ați putea dori să faceți acest lucru.
De obicei, din nou pentru monitorizarea sau ascultarea de ceva.
Deci, numărul de repetări ale unei buclă poate fi controlat pur și simplu de un număr.
Există două tipuri de bucle pe care le puteți face o buclă de control contra sau cum ar fi o buclă
de control santinelă este ceea ce ei numesc o buclă de control contra înseamnă că bucla rulează de 10 ori de 20 de ori de 30
de ori o anumită cantitate de timp se repetă același bloc de declarație în interiorul bucla.
De multe ori puteți avea un alt tip de bucla în cazul în care nu este controlat contra.
Se poate executa de cinci ori poate rula 100 poate 120.
Totul depinde de o condiție de o variabilă sau de ceva.
Deci, de exemplu, puteți rula o buclă care spune că voi rula bucla mea de peste și peste
și până când utilizatorul intră quit.
Deci, până când variabila se schimbă pentru a renunța, nu se controlează controlul care nu depinde.
Din nou, se poate executa de zece ori.
Vreau să spun că suntem de 100 de ori.
Acestea sunt cele două tipuri diferite de bucle și așa voi oferi exemple de ambele.
Dar gândiți-vă la acest lucru la un nivel înalt atunci când vreau să repet codul.
Ei bine, s-ar putea să vreau să repet codul de cinci ori o anumită cantitate de
timp definitiv timp de timp sau am putea dori să cod bazat pe o anumită condiție introduse de un utilizator și care se numește Sentinel pentru o buclă.
Are cuvântul cheie folosit pentru a executa un anumit număr de ori, de obicei, acesta este folosit pentru controlul contra, dar
nu trebuie să fie.
Puteți să-l utilizați pentru buclă de control contra sau centinel pentru a controla că depinde de tine.
Dar o mulțime de exemple și o multitudine de practici contra controlează o anumită cantitate de ori dacă doriți
să afișați numerele de la 1 la 10, de exemplu, ați folosi bucla pentru care nu doriți
să scrieți 10 rânduri de cod cu aceeași declarație de imprimare afișează un alt număr.
E foarte ineficient.
Este foarte consumatoare de timp.
Ai folosi o buclă pentru a repeta codul.
Ce ai face este să faci așa ceva.
Iată o prezentare a ceea ce arată bucla pentru.
Sintaxa pe care o aveți pentru cuvânt cheie și apoi aveți aceste paranteze din nou
parantezele identifică lucruri diferite care se întâmplă pentru buclă for.
Apoi aveți un suport și aveți declarații în interiorul parantezelor, astfel încât din nou
parantezele să reprezinte corpul bucla la fel ca parantezele reprezentând în corpul unei instrucțiuni nevalide.
Dacă aveți o singură instrucțiune acolo, nu aveți nevoie de paranteze.
Dar bunele practici trebuie folosite mereu.
Prin urmare, în acest exemplu, veți vedea cele patru cuvinte cheie care ar trebui să fie primul lucru pe care îl identificați operațiunea.
Cât timp va funcționa este controlată și ce se va afișa între paranteze după cele
patru cuvinte-cheie cheie pe care le vom trece în detaliu.
Există în esență trei expresii diferite înăuntru și le puteți recunoaște deoarece sunt separate
de semnalul numit.
Deci semicolonul spune că aceasta este o declarație de expresie.
Deci, ce fac aceste trei lucruri.
Vom descrie acțiunea pe care doriți să o repetați în interiorul corpului bucla.
Asta se întâmplă de atâtea ori.
În acest exemplu corpul bucla este imprimat def Deci, dacă o condiție este evaluată adevărat, va continua să
imprime acel număr.
Și din nou pentru declarații simple, puteți omite ancorele.
Deci, să trecem prin asta în detaliu.
Modelul general pentru buclă for este că aveți acest tip de declarație.
Aveți 4 și apoi aveți o condiție de pornire.
Acesta este codul pseudo.
Aceasta nu este încercarea de a descrie buclele pentru aici.
Deci, condiția inițială este primul lucru.
Totul înainte de primul.
Așa cum la cel de-al doilea lucru este condiția de continuare cu un semicolon la sfârșit și
apoi ultimul lucru între paranteze este perturbarea acțiunii.
Și vreau să descriu fiecare dintre acestea.
Și apoi, după aceea, în interiorul corpului se află declarația de buclă.
Declarația este destul de ușoară, că este doar în interiorul corpului, care este
codul care va fi executat, repetat de fiecare dată.
E destul de simplu.
Și din nou, poți să spargeți brațele dacă aveți mai multe
afirmații sau una singură, dacă aveți sau omiteți brațele dacă aveți o singură afirmație, condiția inițială că primul
lucru din interiorul parantezelor înainte de primul semi-colon este de obicei, dar nu mereu.
De obicei, inițializează o variabilă numită variabilă de control a buclă.
Asta e variabila pe care o vei incepe sa privesti la fiecare iteratie, astfel incat variabilele de control ale
bucla sa raspunda de obicei de ceva timp nu intotdeauna din nou.
Vreau să subliniez că nu trebuie să fie decât o mulțime de ori că o buclă este un contor
și urmărește cât de des se repetă buclele.
Asta este ceea ce această stare de pornire în variabila de control al buclă este cunoscută.
De asemenea, puteți declara și inițializa mai multe variabile de același tip aici cu declarațiile separate
prin virgule, astfel încât să puteți avea mai multe inițializări aici variabile.
Acum, în funcție de ce C-compilator pe care îl folosiți, este posibil să nu puteți declara acele variabile în interiorul forței.
Dacă utilizați ceva sub compilatorul C nouăsprezece nouă, trebuie să declarați variabilele din afara
pădurii.
Și apoi le-ați inițializa.
Și acolo se află starea Started.
Dar vom trece prin câteva exemple.
Dar condiția de pornire este locul unde inițializați variabilele.
Este variabila de control a buclă și este numit pentru acest motiv, deoarece controlează cât de des
se execută buclă.
Atunci când îl inițializați, următorul lucru pe care vreau să-l vorbesc este că continuarea condiției continue condiționează partea
care este înainte de prima dată când am sunat în buclă.
Aceasta este o expresie logică.
Aceasta este condiția care urmează să fie evaluată la TRUE sau FALSE.
Acesta este momentul în care veți săriți în buclă sau veți ieși din bucla.
Acest lucru determină dacă buclele ar trebui să continue să fie executate atâta timp cât această condiție are o valoare
adevărată.
Buclele pot continua să execute toate instrucțiunile din corp vor fi executate.
Acest lucru va verifica de obicei valoarea variabilei de control al buclă.
Deci, ați inițializat variabila de control și ați început condiția și apoi vă uitați la condiția de continuare.
Puteți pune orice logică sau orice expresie aritmetică aici, atâta timp cât știți ce faceți.
Condiția de continuitate este testată la începutul buclei, mai degrabă decât la sfârșit.
Aceasta este menționată ca o buclă de pretest.
Veți observa diferența atunci când vorbim despre buclă în timp ce este o buclă post-test.
Dar ceea ce inseamna asta este ca declaratia de buclă poate fi executată o singură dată.
Acesta poate fi executat de zero ori.
Totul depinde de faptul dacă această condiție de continuare este evaluată la TRUE sau FALSE.
Dacă ai o valoare, e falsul pe care nu îl vei executa niciodată, corpul evaluează adevărul.
Executați acel corp cel puțin o dată perforarea acțiunii care se află la capătul liniei de forță după
cel de-al doilea semi-colon, care face de obicei o anumită modificare a variabilei de control a
buclă incrementală sau documentată dacă este un contor de buclă sau dacă este o o buclă de santinelă.
Poate solicita utilizatorului să introducă mai multe intrări.
De asemenea, puteți face mai multe modificări ale unei variabile.
Puteți modifica variabila de control al buclă și puteți modifica alte variabile
pe
care le aveți pentru a le separa prin virgule, dar pentru a rezuma tot ce am spus că avem acest tabel mic care descrie acest lucru.
Dar înainte de a vorbi despre asta, să aruncăm o privire la un mic exemplu.
Deci, iată un exemplu pe care îl avem pentru cuvântul cheie și atunci veți observa că avem întreaga valoare egală cu una este
egală cu două.
De aceea inițializăm variabilele și de fapt inițializăm două variabile separate
de virgulă.
În mod obișnuit într-o buclă pentru, de obicei, doar inițializați una pentru a pierde variabila de control.
Dar în acest caz inițializăm I și J.
Și apoi, după aceea, fac apel.
Când vom intra pentru a ieși din această ieșire drăguță, vom intra în această buclă dacă atâta
timp cât ea are mai puțin decât egală cu 5. Aceasta este expresia noastră booleană evaluată adevărată sau falsă.
Și apoi, după a doua parte, ca și cum vom modifica acea variabilă de control al buclă sau
orice alte variabile, suntem preocupați de asta, făcem o posibilă parte.
Acesta este un prefix de operator de incrementare.
Apoi atribuim lui J egal cu J plus două care va fi de obicei condiția dvs. X modificând
acea variabilă de control a buclă.
Și apoi corpul bucla are doar o simplă declarație, așa că
nu avem nevoie de paranteze pe care tocmai le tipăim valorile de-I ori ori.
Deci OPER produs de acest cod va fi valorile la 1832 și 50 pe o singură linie.
Prima iterație a buclăi va fi egală cu cea pe care J o să o egaleze cu 2.
Și așa va spune că eu ori J care este o dată în curând o va afișa.
Va verifica pentru a vă face ochii nu mai puțini ochi acum mai mari de cinci ochi.
Este unul astfel încât să se întoarcă și să execute a doua oară.
Acum va spune Eisenhower și vom modifica acel verb care se află în ultima noastră afirmație.
Deci, în a doua iterație a buclă i va fi egal cu 2 și J va fi egal cu două
plus două care este de patru.
Deci, acum vom multiplica de 2 ori 4, care este de opt și vom juca doar și
apoi vom verifica e mai mare de cinci.
Nu sunt încă prea.
Așadar, modificăm până acum 3 pentru generația următoare și modificăm J pentru a fi egal cu ceea ce este.
Patru plus două, care este 6.
Și apoi pentru cea de-a treia iterație a buclei se multiplică de ori J.
Deci spunem de trei ori șase și jucăm doar 18 înainte să executăm a patra iterație pe care o verificăm pentru a vedea dacă el este mai
mare de 5 ani.
Nu este
pentru și atunci vom crește atunci când spunem că sunt cinci.
Nu este egal cu Faisel încă alergat va face 32 și apoi vom face 50.
Deci, aceasta este o declarație pe care o doriți și suntem pe aceasta și executați-o în browser-ul codului și jucați în jur
și schimbați lucrurile.
Dar ceea ce facem aici este că facem trei lucruri separate pe o singură linie de cod.
Inițializăm un cuvânt de control verbal sau orice alt cuvânt cu variabilă având expresia noastră booleană după
primul semi-ton al condiției noastre de ieșire și apoi modificăm variabila de control al buclă și orice
alte variabile pe care le dorim ca ultima parte a instrucțiunii for.
Așa că, pentru a rezuma ceea ce facem, am găsit acest caracter frumos, dintr-o carte,
și am vrut să vă arăt că acest lucru rezumă tot ce primul semi-colon inițializează variabila de control a buclă după
primul semi-colon.
Sau faceți o condiție R sau expresie booleană și apoi după a doua semi-colon modificăm acea variabilă de control
al buclă și acesta este exemplul tipic pe care îl vedeți.
Aceasta este o buclă de control contraceptivă care începe la 1 și merge până la 10.
Deci, aceasta vă va cere de zece ori.
Cheia fiind acolo mai mică decât egală cu 10.
Deci, veți vedea operatori relaționali ca și condițiile noastre, așa cum am văzut operatorii relaționali
ca și condițiile din declarația noastră.
Cheia aici este că doriți să modificați acea variabilă de control al buclă.
Sau nu vei ieși niciodată.
Deci, numărul plus plus este foarte important.
Și în ceea ce privește incrementarea pre sau post dacă plus plus este înaintea variabilei
sau după variabila nu trebuie să vă faceți griji despre aceasta, deoarece ea va deveni
doar incrementată sau decrementată după iterația bucla.
Deci, nu contează dacă faci plus Moscova sau vacă plus plus și, de asemenea, din nou, în funcție de versiunea de a vedea că
sunteți difuzate pentru compilatorul dumneavoastră s-ar putea să fie în măsură să declare numărul de variabilă în bucla pentru
sau pentru a fi nevoie să spuneți că numărul este egal cu 1 sau int count în afara for loop-ului și apoi
inițializați-l în primul.
Deci Michael C. nouăsprezece nouă au adăugat inițializarea și declarația în aceeași parte a bucla pentru.
Dar acest lucru este de fapt pentru lucrări bucla.
Acum, să mergem într-un mic exemplu, vreau să vă arăt flexibilitatea pentru buclă.
Iată un exemplu în care vom merge în esență doar niște numere întregi și în acest exemplu vom
cere utilizatorului răspunsul la o serie de leziuni pe care doresc să le stochez
într-o variabilă numită Count.
Acum vom avea o buclă care să treacă prin toate acestea, în funcție de numărul pe
care au intrat-o repetat de atâtea ori.
Deci, aici spunem pentru că nu am semnat, nu trebuie să fie nesemnificat pentru că este egal cu 1 că suntem inițializați
variabila de control al buclă.
Și apoi spunem că dacă am mai puțin de parcă atunci vom ieși și apoi
vom modifica acel loquitur plus plus II.
Deci, acest lucru se va executa din nou la 1 2, dar numărul pe care utilizatorul la introdus 10 sau 20 și tot ce vom
face este că vom spune niște egali un plus 1.
Acum, bucla pentru este atât de puternică, deoarece bucla pentru vă permite să modificați multe variabile.
Nici măcar nu trebuie să punem acea sumă plus egală în corpul bucla pentru.
Putem face asta la sfârșitul ultimei declarații.
Deci, în plus față de incrementarea cu 1 putem spune că suma plus este egală plus plus Deci
am făcut totul într-o singură linie de cod.
Și asta vă arată flexibilitatea este totul pentru că putem modifica variabila în instrucțiunea pentru
ea însăși.
Nu trebuie să avem corpul pe acel fir.
Deci, să aruncăm o privire la acest exemplu în blocurile de
coduri pentru a vă arăta cum puteți să o manipulați și să vedeți ce este ieșirea.
Iată exemplul nostru pe care l-am avut în prelegere.
Vreau să ieșesc și să încerc să compilez asta.
Și când compilez acest lucru, veți observa că am o eroare care spune că nu pot să-mi declar
variabila în declarația mea.
Acest lucru se datorează faptului că rulez o versiune mai veche a compilatorului C care rulează C. A. T. nouă.
Probabil nu veți avea acest lucru decât să rezolvați.
Ați văzut vreodată acest tip de eroare tot ce trebuie să faceți este să-l ștergeți în afara exterioară a for bucla.
Așa că spui că nu ai semnat-o.
Apoi, în interiorul bucla pentru care îl inițializați așa.
Acum să încercăm să construim.
Pot să scap de câțiva dintre acești specificatori de formate.
Deci, când compilez cu succes și conduc acest program, veți vedea cât de mult funcționează buclă.
Îmi va cere să intru în numerele pe care vreau să le pun PS. dacă intru 5, o să ajung la o sumă
de 1 2 3 4 și 5 care este de 15.
Și ce am putea face pentru a depana acest lucru este că am
putea adăuga un consola la bucla pentru și am vrut să vedem de câte ori se execută putem adăuga o declarație de imprimare nu DNS
depanare, dar vedeți ce se întâmplă pe care am putea spune în bucla și acest lucru
ne va spune că bucla rulează de cinci ori, pentru că va alerga să numărăm.
Deci, ceea ce vreau să demonstrez este de câte ori acest lucru este în desfășurare, așa că acum, când construiesc în Iran, vreau să
văd ce se întâmplă pentru fiecare iterație.
Vreau să spun că spun o buclă interioară în buclă.
Nu am adăugat o linie de alimentare, așa că este greu de citit, dar bucla interioară este afișată de
opt ori și apoi rezumă fiecare dintre aceste numere și bucle laterale toate inginerii 36 una plus
două plus trei plus patru plus cinci plus șase vor spune pur și simplu puteți juca în jurul valorii de acest lucru, dar din nou vom initializa variabila
de control buclă.
Verificăm condiția X că vom merge la X odată ce am lovit ce a intrat utilizatorul dacă s-au introdus
8 vom rula de opt ori și apoi va trebui să ne modificăm dacă nu am fi modificat.
Am auzit că ai o buclă pentru totdeauna.
Și ce s-ar întâmpla când
ai fugit de program ar fi rulat pentru totdeauna.
Deci, veți vedea după ce ați introdus numărul pe care programul dvs. nu îl va accepta niciodată.
Deci, spuneți că am intrat 6 am lovit intra.
Uită-te la ce se întâmplă.
Doar prindeți bucla înăuntru.
Nu iese niciodată într-o buclă infinită.
Deci ultimul lucru este foarte important.
Întotdeauna doriți să modificați variabila de control a buclă.
Și din nou, variabila de reglare a buclei King determină ieșirea.
În acest
caz, am folosit atât bucla pentru.
Este foarte usor de folosit si iti permite sa faci trei lucruri diferite in interiorul circuitului de initializare
a circuitului de buclă, verifica controlul buclat al plantelor pentru conditia de iesire si apoi sa modifici acel control verbal verbal.
Acestea sunt trei lucruri pe care trebuie să le faceți într-o buclă și puteți face într-o singură declarație.
Acum permiteți-mi doar să vorbesc despre bucla infinită într-adevăr rapid.
Tocmai am demonstrat o buclă infinită.
Aici nu veți mai fi niciodată și nu aveți nicio obligație de a introduce parametri în instrucțiunea pentru buclă.
De fapt, puteți scrie o buclă infinită cu intenția pe care ați face-o, că ar fi
să puneți semi-colonii acolo, astfel încât să aveți o buclă pentru două semicoloni.
Dacă vedeți vreodată că asta înseamnă că aveți o scriere pe care o scrieți acum, aveți o buclă infinită.
De obicei, nu doriți să aveți bucle infinite, dar există vremuri deoarece condiția de a continua în bucla este
lipsită de buclă sau continuă pe termen nelimitat.
Acest lucru este util uneori dacă monitorizați datele.
Deci, dacă monitorizați datele, puteți avea ceva acolo.
În mod obișnuit, atunci când aveți o buclă de buzunar, aveți, de obicei, și un somn care va întrerupe executarea programului
pentru o secundă.
Deci, monitorizați ceva în cealaltă situație de utilizare în care ați putea avea o buclă infinită ca și
cum ați asculta o conexiune.
Deci, dacă sunteți în așteptare în dvs. sunteți de ascultare pentru conexiune sau dacă sunteți polling ceva pentru a vedea ceva ce
ar putea face asta.
Acum, unii oameni susțin că nu ar trebui niciodată să sondă și nu ar trebui să ascultați niciodată.
Dar acesta este un alt argument.
Acesta este singurul caz pentru unii pentru buclele care sunt bucle infinite infinite infinite cât mai mult
posibil prin modificarea acelei variabile de control a buclă.
Sper că acest lucru a fost de ajutor.
Aceasta este pentru zidul de buclă pentru a utiliza o buclă și pentru una dintre provocările noastre, astfel încât să devenim mai familiarizați.
Mulțumesc.