www.wikidata.uk-ua.nina.az
Cya stattya ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno lyutij 2022 V informatici cikl for ce operator sho dozvolyaye vikonuvati kod bagatorazovo For loop flow diagramCikl for skladayetsya z dvoh chastin zagolovka sho viznachaye iteraciyu i tila yake vikonuyetsya odin raz za kozhnu iteraciyu Zagolovok chasto ogoloshuye yavnij lichilnik ciklu abo zminnu ciklu sho dozvolyaye tilu znati yaka iteraciya vikonuyetsya zaraz Cikli for zazvichaj vikoristovuyutsya koli pered vhodom u cikl vidoma kilkist iteracij sho musit buti vikonana Cikli for mozhna rozglyadati yak skorochennya cikliv while yaki zbilshuyut i pereviryayut zminnu ciklu Nazva cikl for pohodit vid anglijskogo slova for yake vikoristovuyetsya yak klyuchove slovo v bagatoh movah programuvannya dlya vvedennya ciklu for Termin v anglijskij movi zaprovadzheno v ALGOL 58 i buv populyarizovanij u vplivovomu piznishomu ALGOL 60 ce pryamij pereklad ranishogo nimeckogo fur vikoristanogo v Superplan 1949 1951 Hajnca Rutishauzera yakij takozh brav uchast u stvorenny ALGOLU 58 i ALGOLU 60 U FORTRAN i PL I klyuchove slovo DO vikoristovuyetsya dlya togo samogo i vono nazivayetsya ciklom do ce vidriznyayetsya vid ciklu do while Zmist 1 Riznovidi cikliv for 1 1 Tradicijni cikli for 1 2 Cikli for na osnovi iteratoriv 1 3 Vektorizovani cikli for 1 4 Skladeni cikli forRiznovidi cikliv for RedaguvatiOperator ciklu for dostupnij u bilshosti imperativnih mov programuvannya Yak pravilo cikli for podilyayutsya na kilka kategorij Tradicijni cikli for RedaguvatiCikl for takih mov yak ALGOL Simula BASIC Pascal Modula Oberon Ada MATLAB Ocaml F tosho vimagaye keruyuchoyi zminnoyi z pochatkovimi ta kincevimi znachennyami i viglyadaye priblizno tak for i first to last do statement abo prosto for i first last do statementZalezhno vid movi zamist znaka rivnosti mozhe vikoristovuvatisya yavnij znak prisvoyennya a v deyakih movah slovo int vimagayetsya navit u chislovomu vipadku Dodatkove znachennya kroku inkrement abo dekrement 1 takozh mozhe buti vklyucheno hocha tochnij sintaksis yakij vikoristovuyetsya dlya cogo desho vidriznyayetsya v riznih movah Deyaki movi vimagayut okremogo ogoloshennya keruyuchoyi zminnoyi deyaki ni Insha forma bula populyarizovana movoyu programuvannya C Dlya cogo potribni 3 chastini inicializaciya variant ciklu umova ta perehid do nastupnoyi iteraciyi Usi ci tri chastini ye neobov yazkovimi Cej tip cikliv iz krapkoyu z komoyu prijshov z movi programuvannya B i spochatku jogo vinajshov Stiven Dzhonson U chastini inicializaciyi ogoloshuyutsya vsi neobhidni zminni i zazvichaj yim priznachayutsya znachennya Yaksho ogolosheno kilka zminnih usi voni mayut buti odnogo tipu Chastina umovi pereviryaye pevnu umovu i vihodit z ciklu yaksho vona hibna navit yaksho cikl zhodnogo razu ne vikonavsya Perehid do nastupnoyi chastini iteraciyi vikonuyetsya rivno odin raz shorazu koli cikl zakinchuyetsya Potim cikl povtoryuyetsya yaksho umova maye znachennya istini Os priklad tradicijnogo ciklu for v stili C u Java Drukuye chisla vid 0 do 99 ne vklyuchayuchi 100 z probilom mizh nimi for int i 0 i lt 100 i System out print i System out print System out println Ci cikli takozh inodi nazivayut chislovimi ciklami for na vidminu vid cikliv foreach Cikli for na osnovi iteratoriv RedaguvatiCej tip ciklu for ye uzagalnennyam tipu chislovogo diapazonu dlya ciklu for oskilki vin dozvolyaye pererahovuvati nabori elementiv vidminni vid chislovih poslidovnostej Zazvichaj vin harakterizuyetsya vikoristannyam neyavnogo abo yavnogo iteratora v yakomu zminna ciklu prijmaye kozhne zi znachen u poslidovnosti abo inshomu zbori danih Tipovij priklad u Python for item in some iterable object do something do something else De some iterable object ce abo zbirka danih yaka pidtrimuye neyavnu iteraciyu napriklad spisok imen spivrobitnikiv sam iterator Deyaki movi mayut ce na dodatok do inshogo sintaksisu ciklu for Zokrema PHP maye cej tip ciklu pid nazvoyu foreach a takozh cikl for iz troma virazami pid nazvoyu for Vektorizovani cikli for RedaguvatiDeyaki movi proponuyut cikl for yakij diye tak nibi obroblyaye vsi iteraciyi paralelno napriklad klyuchove slovo for all u FORTRAN 95 yake maye interpretaciyu sho vsi virazi pravoyi chastini ocinyuyutsya pered vikonannyam bud yakih prisvoyen na vidminu vid yavnoyi iteracijnoyi formi Napriklad v operatori for u nastupnomu fragmenti psevdokodu pid chas obchislennya novogo znachennya dlya A i krim pershogo z i 2 posilannya na A i 1 otrimaye nove znachennya yake malo bulo rozmisheno tam na poperednomu kroci Odnak u versiyi dlya vsih kozhne obchislennya vidnositsya lishe do vihidnogo nezminnogo A for i 2 N 1 do A i A i 1 A i A i 1 3 next i for all i 2 N 1 do A i A i 1 A i A i 1 3 Riznicya mozhe buti znachnoyu Deyaki movi napriklad FORTRAN 95 PL I takozh proponuyut operatori prisvoyennya masivu yaki dozvolyayut opuskati bagato cikliv for Takim chinom psevdokod takij yak A 0 vstanovit usi elementi masivu A v nul nezalezhno vid jogo rozmiru chi rozmirnosti Cikl prikladu mozhna vidobraziti yakA 2 N 1 A 1 N 2 A 2 N 1 A 3 N 3 Ale v instrukciyi kompilyatora mozhe ne buti chitko opisano chi bude ce vidtvoreno u stili for ciklu chi ciklu for all chi shos inshe Skladeni cikli for RedaguvatiVvedenij v ALGOL 68 a dali v PL I cikl for dozvolyaye poyednuvati iteraciyu ciklu z testom napriklad for i 1 N while A i gt 0 do etc Tobto znachennya prisvoyuyetsya zminnij ciklu i ta lishe yaksho viraz while ye istinnim tilo ciklu bude vikonano Yaksho rezultat buv hibnim vikonannya ciklu for pripinyayetsya Vrahovuyuchi sho znachennya zminnoyi ciklu viznacheno pislya zavershennya ciklu todi navedenij vishe operator znajde pershij nepozitivnij element u masivi A a yaksho takogo nemaye jogo znachennya bude N 1 abo z vidpovidnimi variantami pershij nepustij simvol u ryadku tosho Otrimano z https uk wikipedia org w index php title For cikl amp oldid 38887088