Computers, Software
Turbo Pascal. Thaum ... do - voj nrog ib tug precondition
Turbo Pascal, tab sis yog tsis yog lub ntiaj teb no nyiam daim ntawv thov rau programming, tab sis lub creators, ua lawv thawj kauj ruam nyob rau hauv kev sau ntawv ntawm cov software, pib lawv acquaintance nrog qhov nruab nrab. Nws muab ib lub tswv yim ntawm lub ramifications, tswv, kev siv, thiab cov txheej txheem, raws li zoo li ntau lwm yam. Piv txwv li, nyob rau hauv txoj kev tshawb no programmer lub ntsej muag mus nyob rau hauv Turbo Pascal: Thaum, rau thiab Repeat.
Lub tswvyim ntawm lub voj voog thiab nws cov variants
Ib tug mus los yog ib tug repetitive kev txiav txim. Nyob rau hauv no ib puag ncig, siv:
- nrog parameter (Rau ... los ... ua);
- nrog rau cov precondition (Thaum ... do);
- ib tug postcondition (Rov ... kom txog rau thaum).
Tus thawj hom yog siv thaum nws yog lub npe hu li cas ntau cov kauj ruam nyob rau hauv kev daws qhov teeb meem. Txawm li cas los, muaj ib tug xov tooj ntawm kev pab raws qib, qhov muaj yog tsis muaj cov lus qhia txog yuav ua li cas muaj ntau zaus yuav tau rov qab los yog hais tias kev txiav txim. Nyob rau hauv cov ntaub ntawv no, Pascal Thaum voj voog yuav indispensable, xws li, nyob rau hauv tus, thiab Rov.
Tus qauv ntawm lub voj voog
Yuav ua li cas yog lub essence ntawm cov ua hauj lwm nyob rau hauv lub Pascal Thaum, Rau thiab Rov mus? Nyob rau hauv xws Siv faib ib header thiab ib lub cev. Tus thawj feem ntawm cov kev cai tswjhwm ntau yam uas yuav "ua hauj lwm" yog teev tseg los ntawm tus mob rau hauv lub validity lub sij hawm uas lub cev yuav tsum sau. Nyob rau hauv lub thib ob yog ib feem ntawm cov tshuaj kab zauv yuav tsum tau siv nyob rau hauv cov ntaub ntawv ntawm tus mob, xws li. E. Muaj tseeb tiag cov, es tsis txhob cuav Lub.
Thaum iteration yog ua nyob rau hauv kab kawg ntawm code, ces nws rov mus rau lub header, qhov twg mob yog mus soj ntsuam. Yog hais tias qhov tseeb ua hauj lwm yog hais dua, thiab nyob rau hauv cov kev tshwm sim ntawm tej txhaum cai ntawm cov kev pab cuam "Exit" los ntawm lub voj voog thiab ua ntxiv ua hauj lwm.
Raws li looks Thaum voj. Pascal ABC thiab xws li kev pab cuam yuav tsum sau ntawv xws code:
- Thaum mob ua;
- pib;
- Lub voj lub cev;
- End.
Nyob rau hauv cov kev tshwm sim hais tias lub voj yuav tau ua 1 neeg teb xov tooj (1 txiav txim), ces lub "nkhaus» pib ... kawg yuav tsum rho.
Flowchart voj voog
Lub Turbo Pascal Thaum lub nram qab no nta:
- hauv cov qauv yuav ua tau yooj yim mus siv tej yam kev mob;
- tom qab lo lus ua yuav tsum tsis txhob yuav ib tug tsis nco qab (nws yog ib tug kab laum nyob hauv Turbo Pascal thiab Pascal ABC);
- nce mus nce los, qhov los yog qhia tias ua hauj lwm pab thaum ib tug teb cuav tso zis lawv subroutines yuav tsum tau muaj kuab hom, piv txwv li. e. Boolean.
Nws yog raws li nram no thaiv daim duab ntawm ntau yam kev voj voog. Nws qhia tau hais tias ib theem zuj zus ntawm kev siv ua.
Lub algorithm ntawm lub voj voog
.. Nyob rau hauv lub nyuaj programming kev kawm, m thiab h nyob rau hauv Pascal ABC, Thaum voj ua hauj lwm nyob rau hauv cov nram no hauv paus ntsiab lus:
- .. Muab iteration, piv txwv li, repetition, yuav muab qhov chaw raws li muaj ntau zaus raws li ntev raws li tus mob no yeej muaj tseeb (muaj tseeb);
- sai li sai tau raws li tus mob yog tsis txaus siab thiab muab cuav teb (los yog lwm yam "cuav"), qhov tooj tawm ntawm lub voj;
- sai li sai tau raws li nws tshwm sim, cov kev pab cuam "mus" nyob rau hauv lub tsim tshwm tom qab voj voog.
Qhov no yog ib tug tseem ceeb sib txawv los ntawm Thaum Rov, t. E. A pre-cycle los ntawm lub postconditions.
Nws yog ib qho tseem ceeb rau muaj xws li nyob rau hauv lub voj finite hloov nyob rau hauv ib tug muab nce mus nce los header Thaum. Nyob rau hauv txhua rooj plaub, yuav tsum tau tuaj ib qhov teeb meem uas muab rau cuav. Txwv tsis pub muaj yuav tsum yog ib tug voj, thiab ces yuav tau siv sij hawm ntxiv ntsuas tawm los ntawm lub compiler. Tej uas tsis yog xam tau tias yog tsis paub thiab inexcusable.
Yuav ua li cas mus tawm qhov kev pab cuam thaum caij luv thij?
Feem ntau cov teeb meem no tshwm sim thaum lub xov tooj muab Thaum Pascal voj nyob rau hauv daim ntawv sau qhov kev pab cuam cov cai. Qhov no txhais li cas? Iteration yog pheej rov qab ua ib qho infinite tooj ntawm lub sij hawm, vim hais tias cov kev mob yog ib txwm muaj tseeb. Piv txwv li, qhov no code fragment:
- Thaum 2> 1 ua;
- Sau (1).
Nyob rau hauv cov ntaub ntawv no, mus cuam tshuam cov tua ntawm cov neeg ua hauj lwm, cia li nias CTRL + F2.
Muaj 2 txoj kev los tswj tus cwj pwm ntawm xws li ib tug kev pab cuam. Piv txwv li, yog tias ib tug sau Mus code uas kis tau tswj kom pib ntawm lub cyclic qauv (txij no mus lub voj tawm mob yog saib xyuas, piv txwv li. E tua ntawm cov tam sim no iteration yog tu ncua). Ces tswj yog kis nyob rau hauv ib tug Thaum voj nyob rau hauv lub yav dhau los xeem.
So neeg teb xov tooj yuav cuam tshuam qhov tiav ntawm tag nrho cov kev voj voog thiab hloov tswj mus rau lub tom ntej no iteration. Ntawm no, cov qhov tso zis ntawm qhov kev siv yuav tsis tau tshuaj. Cov duab qhia tau hais tias cov piv txwv ntawm kev siv cov tswv.
Lub rooj sib tham txoj kev sib tw
Xav txog Thaum nyob rau hauv lub lag luam kev voj voog. Pascal xav kom daws tau qhov teeb meem varied. Cia peb xav txog ib tug yooj yim rau to taub lub lag luam. Solved paub tab nyob rau hauv Pascal ABC kev pab cuam. Tab sis yuav tsum tau nthuav tawm thiab cov duab ntawm classical Turbo Pascal ib puag ncig rau kev sib piv.
Ua hauj lwm 1: muab cov nuj nqi Y = 5-X ^ 2/2. Tsim ib lub rooj ntawm qhov tseem ceeb nyob rau hauv increments sh = 0,5 tshaj lub luv [-5, 5].
Lub algorithm yog:
- teem ib lub nce mus nce los X rau ib tug thawj zaug nqi sib npaug zos rau 5 (piv txwv li lub pib ntawm cov kis ..);
- xam ib Y nqi, thaum lub sij hawm nce mus nce los x tsis txog rau thaum xaus ntawm hais tias luv;
- tso saib rau qhov tseem ceeb ntawm cov nuj nqi thiab lub abscissa (X);
- X nce los ntawm ib tug predetermined kauj ruam.
Ntawm no yog cov cai nyob rau hauv Pascal ABC kev pab cuam.
Yuav ua li cas puas cov cai nyob rau Turbo Pascal kev pab cuam. Cov duab hauv qab no qhia txog qhov no.
Ua hauj lwm 2: muab ib tug array A muaj tag nrho cov zoo thiab cov zauv negative. Nws muaj 10 yam khoom. Qhov yuav tsum tau tsim ib tug matrix nyob rau hauv uas lub zoo ntsiab ntawm array A yog tso tawm kom pom muaj ib tug txawm index. Muab lub sum ntawm cov squares nyob rau hauv lub xov tooj ntawm cov tshiab matrix.
Lub algorithm yog:
- Koj yuav tsum sau ib niaj hnub hais tias yuav "ua hauj lwm" rau lub ntsiab ntawm lub array A muaj ib tug txawm index. Nyob rau hauv lub voj nce mus nce los tus nqi coj mus rau lub parity ntawm lub Performance index yuav incremented los ntawm ob tug.
- Yog hais tias lub xov tooj yog ib tug txawm index los ntawm lub matrix A raws nkaus Ii tus mob x> 0, lub txee array yog incremented los ntawm 1. Tam sim no tus nqi ntawm lub txee nce mus nce los yuav lub Performance index ntawm lub daim ntawv xov tooj nyob rau hauv lub array B.
- Chiv, nce mus nce los summa, yog lub luag hauj lwm rau kev nrhiav lub sum ntawm cov plaub fab ntawm zoo zauv, yog teem rau 0. Ces, lub lag luam yuav tsum tau nqa tawm: mus rau lub yav dhau los sum yog ntxiv tus tshiab tus nqi ntawm ib tug square.
- Tsis txhob ntshai, yog hais tias tsis tag nrho cov zoo cov xov tooj tawm ntawm ib lub array mus rau lwm lub. Koj yuav tsum tau ceev faj. Muaj ntau novice programmers sau dua tshiab cov kev cai nyob rau hauv ib tug ntshai. Nws yog tsim nyog los ua tib zoo xyuas tus mob: zoo tus xov tooj uas nyob rau ntawm txawm "hauv zos", piv txwv li, nrog rau cov indices uas yog cov zauv ntawm 2 ...
Phau ntawv tracing yog tsim nyog nyob rau hauv thiaj li yuav xyuas kom meej tias lub xam ntawm loyalty. Tej zaum, siv tus qauv no yuav qhia tau tias tsis uas tsis txais cov qhov muag nyob rau hauv ib txwm tshuaj ntsuam xyuas ntawm daim ntawv sau code.
Yog hais tias peb nqa tawm los ntawm txhais tes suav, nws yog ua tau los xyuas kom meej tias qhov kev pab ua hauj lwm kom zoo. Qhov no, nyob rau hauv lem, hais tias cov kev cai tiam algorithm yog muaj tseeb, ib theem zuj zus ntawm kev ua yuav ua rau ib zajlus kom xaus.
Similar articles
Trending Now