Indlela yokufundisa indlela yokoyisa ubunzima, kwaye kwangaxeshanye bhala imijikelo

Nangona into yokuba siza kuthetha ngesinye sezihloko ezisisiseko, eli nqaku libhalelwe iingcali ezinamava. Injongo kukubonisa ukuba zeziphi iingcamango eziphosakeleyo zabaqalayo kwiprogram. Kubaphuhlisi abaziqhelanisayo, ezi ngxaki kudala zasonjululwa, zalityalwa okanye aziqatshelwa kwaphela. Inqaku linokuza luncedo ukuba ngokukhawuleza ufuna ukunceda umntu ngesi sihloko. Eli nqaku lizoba ukuhambelana nezinto ezivela kwiincwadi ezahlukeneyo zokucwangcisa nguSchildt, Stroustrup, Okulov.

Isihloko malunga nemijikelo sakhethwa kuba abantu abaninzi ababandakanywanga kuso xa befunda inkqubo.

Obu buchule bulungiselelwe abafundi ababuthathaka. Njengomthetho, abantu abomeleleyo ababambeki kwesi sihloko kwaye akukho mfuneko yokuza neendlela ezikhethekileyo kubo. Injongo yesibini yenqaku kukushenxisa obu buchule busuka “kwimisebenzi yabo bonke abafundi, kodwa mnye kuphela utitshala” iklasi ukuya kwiklasi “yemisebenzi yabo bonke abafundi, bonke ootitshala”. Andibangi imvelaphi epheleleyo. Ukuba sele usebenzisa indlela efanayo ukufundisa esi sihloko, nceda ubhale ukuba inguqulelo yakho yahluke njani. Ukuba uthatha isigqibo sokuyisebenzisa, sixelele ukuba ihambe njani. Ukuba indlela efanayo ichazwe kwincwadi, nceda ubhale igama.


Ndisebenze kule ndlela iminyaka emi-4, ndifunda ngabanye nabafundi bamanqanaba ahlukeneyo oqeqesho. Bebonke kukho malunga namashumi amahlanu abafundi kunye namawaka amabini iiyure zeklasi. Ekuqaleni, abafundi babehlala bebambekile kwesi sihloko baze bahambe. Emva komfundi ngamnye, indlela yokusebenza kunye nemathiriyeli yahlengahlengiswa. Kulo nyaka uphelileyo, abafundi abasabambeki kwesi sihloko, ndiye ndagqiba ekubeni ndibelane ngeziphumo zam.

Kutheni iileta ezininzi kangaka? Imijikelo isisiseko!

Njengoko ndibhale ngasentla, kubaphuhlisi abaziqhelanisayo kunye nabafundi abomeleleyo, ukuntsonkotha kwengqikelelo yelophu kunokujongelwa phantsi. Umzekelo, unokunika intetho ende, ubone ukunqwala iintloko kunye namehlo akrelekrele. Kodwa xa uzama ukucombulula nayiphi na ingxaki, i-stupor kunye neengxaki ezingaqondakaliyo ziqala. Emva kwentetho, abafundi mhlawumbi babenokuqonda okuncinane. Le meko yenziwa mandundu yinto yokuba abafundi ngokwabo abakwazi ukuvakalisa ukuba yintoni kanye kanye ukukhohlisa kwabo.
Ngenye imini ndabona ukuba abafundi bayibona imizekelo yam njengemibhalo-ngqangi. Oko kukuthi, njengamaqhekeza ahlukeneyo ombhalo ofuna ukongeza unobumba "womlingo" kwaye uya kusebenza.
Ngamanye amaxesha ndiye ndaqaphela ukuba abafundi bacinga ukuba ukusombulula ingxaki ethile oyifunayo enye into uyilo endingakhange ndilugqume okwangoku. Nangona isisombululo sasifuna ukuguqulwa okuncinci komzekelo.

Ke ndiye ndeza nombono wokuba ugxininiso akufunekanga lube kwi-syntax yamagama, kodwa kumbono wokuhlaziya ikhowudi ephinda-phindayo usebenzisa iilophu. Emva kokuba abafundi beyifumene le ngcamango, nayiphi na i-syntax inokuphuculwa ngokuziqhelanisa okuncinci.

Ngubani kwaye kutheni ndifundisa?

Kuba zingekho iimviwo zokungena, iiklasi zinokubandakanya abafundi abomeleleyo nababuthathaka kakhulu. Unokufunda ngakumbi malunga nabafundi bam kwinqaku Umfanekiso wabafundi bekhosi yangokuhlwa
Ndizame ukuqinisekisa ukuba wonke umntu ofuna ukufunda inkqubo angayifunda.
Iiklasi zam zibanjwa ngabanye kwaye umfundi uhlawula imali yakhe nganye. Kubonakala ngathi abafundi baya kuzongeza iindleko kwaye bafune ubuncinci. Nangona kunjalo, abantu baya kwiiklasi zobuso ngobuso kunye nomfundisi-ntsapho ophilayo kungekhona ngolwazi ngokwalo, kodwa ngenxa yokuzithemba oko bakufundileyo, ukuvakalelwa kwenkqubela kunye nokuvunywa kwengcali (utitshala). Ukuba abafundi abaziva nkqubela phambili ekufundeni kwabo, baya kuhamba. Ngokubanzi, iiklasi zinokucwangciswa ukuze abafundi bazive beqhubela phambili ekwandiseni inani lezakhiwo eziqhelekileyo. Oko kukuthi, okokuqala sifunda ngelixa ngokweenkcukacha, emva koko sifunda, emva koko senze ngelixa, kwaye ngoku sinewaka kunye nekhosi yobusuku obunye ilungile, apho imijikelo yodwa ifundwa kwiinyanga ezimbini, kwaye ekupheleni - umfundi obhale. ilayibrari eqhelekileyo phantsi komyalelo. Nangona kunjalo, ukuze ucombulule iingxaki ezisebenzayo, awudingi nje ulwazi lwezinto eziphathekayo, kodwa kunye nokuzimela kwisicelo sayo kunye nokukhangela ulwazi olutsha. Ke ngoko, kwizifundo zobuso ngobuso, ndicinga ukuba umgaqo ochanekileyo kukufundisa ubuncinci kwaye ukhuthaze ufundo oluzimeleyo lwee-nuances kunye nezihloko ezinxulumeneyo. Kwisihloko se-loops, ndithatha ixesha lokwakha ukuba lincinci. Unokuwuqonda umgaqo ophuma kuyo. Ukwazi umgaqo, unokuzilawula zombini kunye nokwenza-ngexesha wena.

Ukufezekisa ukuphumelela kwemathiriyeli ngabafundi ababuthathaka, ukuchaza i-syntax akwanelanga. Kuyimfuneko ukunika imisebenzi elula ngakumbi kodwa eyahluka-hlukeneyo kwaye uchaze imizekelo ngokweenkcukacha ngakumbi. Ekugqibeleni, isantya sophuhliso silinganiselwe ngokukwazi komfundi ukuguqula iintetho kunye nokukhangela iipatheni. Kubafundi abakrelekrele, uninzi lwezabelo luya kuba yindinisa. Xa ufunda nabo, akufuneki unyanzelise ukusombulula iingxaki eziyi-100%. Izinto zam eziphathekayo zinokujongwa apha github yam. Enyanisweni, indawo yokugcina ifana ne-grimoire ye-warlock - akukho mntu ngaphandle kwam uya kuqonda ukuba yintoni na, kwaye ukuba uyasilela itshekhi, ungaphambana.

Indlela yokusebenza ijolise ekusebenzeni

Ithiyori ichazwa kusetyenziswa umzekelo wokusombulula ingxaki. Kwisiseko seklasi yenkqubo apho kufundiswa amasebe kunye neelophu, akunakwenzeka ukuba unike intetho eluncedo ngesihloko esinye iyure yonke. Imizuzu eyi-15-20 yanele ukucacisa ingcamango. Obona bunzima buphambili buvela xa kusenziwa imisebenzi eyenziwayo.
Ootitshala abasaqalayo banokukrazula abaqhubi, amasebe, iilophu, kunye noluhlu kwisifundo esinye. Kodwa abafundi babo baya kujongana nengxaki yokufumana olu lwazi.
Emva kwakho konke, akufuneki uxelele nje umbandela, kodwa uqinisekise nokuba abaphulaphuli bayawuqonda.

Inyani yokuphumelela isihloko imiselwa yindlela umfundi ahlangabezana ngayo nomsebenzi ozimeleyo.
Ukuba umfundi wakwazi ukucombulula ingxaki ngesihloko ngaphandle koncedo lomfundisi-ntsapho, ke isihloko siye saqondwa kakuhle. Ukuqinisekisa ukuzivavanya, umsebenzi ngamnye uchazwe kwitheyibhile eneemeko zovavanyo. Imisebenzi inocwangco olucacileyo. Ukutsiba imisebenzi akukhuthazwa. Ukuba umsebenzi wangoku unzima kakhulu, ke ukuqhubela phambili ukuya kwelinye elilandelayo akunamsebenzi. Kunzima ngakumbi. Ukuze umfundi akwazi ukuwenza kakuhle umsebenzi wangoku ontsonkothileyo, ucaciswa iindlela ezininzi kusetyenziswa umzekelo wengxaki yokuqala. Ngokwenyani, umxholo wonke wesihloko wehla kwiindlela zokoyisa ubunzima. Imijikelo ingaphezulu leempembelelo zecala.

Umsebenzi wokuqala uhlala ungumzekelo. Owesibini wahluka kancinci kwaye wenziwa "ngokuzimela" ngokukhawuleza emva kokuqala phantsi kweliso likatitshala. Yonke imisebenzi elandelayo ijolise ekunikeleni ingqalelo kwizinto ezincinci ezahlukeneyo ezinokubangela ukungaqondi kakuhle.

Ingcaciso yomzekelo yincoko yababini apho umfundi kufuneka abuyisele umva wokusasaza kunye nokuqinisekiswa okunqamlezayo ukuze aqinisekise ukuba uyifumene kakuhle inxalenye yombandela.

Ndiya kuba banal kwaye ndithi umzekelo wokuqala kwisihloko kubaluleke kakhulu. Ukuba unezinto ezibonakalayo zomsebenzi ozimeleyo obanzi, ukushiywa komzekelo wokuqala kunokulungiswa. Ukuba akukho nto yimbi ngaphandle komzekelo, ngoko umfundi ngokuqinisekileyo akayi kukwazi ukusilawula isihloko.

Ngexesha okanye ngenxa?

Omnye wemiba ephikisanayo kukukhetha ukwakhiwa komzekelo: ngelixa okanye. Ngesinye isihlandlo, umphuhlisi ongumhlobo wam owayenamava okufundisa wachitha iyure endiqinisekisa ukuba i-loop yayiyeyona ilula ukuyiqonda. Iingxoxo zaziqhubeka “kuyo yonke into ekuyo icacile kwaye ibekwe endaweni yayo.” Nangona kunjalo, oyena nobangela wobunzima kubaqalayo bokwenyani ngumbono womjikelo ngokwawo, hayi ukubhala kwawo. Ukuba umntu akayiqondi le ngcamango, ngoko uya kuba nobunzima kunye ne-syntax. Ngokukhawuleza ukuba ingcamango ifunyenwe, iingxaki zoyilo lwekhowudi ziyanyamalala ngokwazo.

Kwiimathiriyeli zam, umxholo we-loops ulandela umxholo we-branching. Ukufana kwangaphandle ukuba kwaye ngelixa kusivumela ukuba sizobe umzekeliso othe ngqo: "xa imeko ekusentloko iyinyani, umzimba uyabulawa." Eyona nto ikhethekileyo yomjikelezo kukuba umzimba ubulawa amaxesha amaninzi.

Ingxoxo yam yesibini yeyokuba ngelixa ifuna ukufomatha okuncinci kune-. Ukufomatha okuncinci kuthetha iimpazamo ezimbalwa zobudenge ezinekoma nezibiyeli ezingekhoyo. Abaqalayo abakaphuhliseli ingqalelo ngokwaneleyo kunye nobuchule bokuphepha ngokuzenzekelayo iimpazamo zesintaksi.
Ingxoxo yesithathu ichazwa kwiincwadi ezininzi ezilungileyo njengengxoxo yokuqala.

Ukuba umfundi unokuguqula ngokulula amabinzana, ngoko unokuthetha malunga nokupasa. Emva koko umfundi uya kukhetha eyona nto ayithandayo. Ukuba iinguqu zibangela ubunzima, ke kungcono ukuba ungaphazamisi ingqalelo yakho. Vumela umfundi aqale asombulule yonke into usebenzisa ngelixa. Nje ukuba usibambe kakuhle isihloko seelophu, ungaphinda ubhale izisombululo ukuze uziqhelanise nokuguqula ngelixa usiya.
Iilophu zePostcondition sisilo esihle esinqabileyo. Andichithi xesha kuyo konke konke. Ukuba umfundi uye waziqonda kakuhle iingcamango zokuchonga iipatheni kunye nokuguqula amabinzana, unokuzifumana ngaphandle koncedo lwam.

Xa ubonisa umzekelo wokuqala kubafundi abomeleleyo, ndigxininisa ukuba kumzekelo wokuqala kubalulekile ukurekhoda kuphela isisombululo, kodwa kunye nekhonkco yonke yezenzo ezikhokelela kwisiphumo. Abafundi abanobuvila banokukutyeshela ukubhala kwaye bakope kuphela i-algorithm yokugqibela. Bafanele baqiniseke ukuba ngenye imini baya kufumana umsebenzi onzima. Ukuyicombulula, kuya kufuneka ulandele amanyathelo njengakulo mzekelo. Yiyo loo nto kubalulekile ukurekhoda zonke izigaba. Kwiingxaki ezilandelayo kuya kwenzeka ukushiya kuphela inguqu yokugqibela yesisombululo.

Umbono ophambili we-automation kukuba siphathisa ikhompyuter ukuba yenzele umntu umsebenzi wesiqhelo. Enye yeendlela ezisisiseko kukubhala iilophu. Isetyenziswa xa iintshukumo ezininzi ezifanayo eziphinda-phindayo zibhalwa kwiprogram elandelelanayo.

Okucacileyo kungcono kunokungafihli

Isenokubonakala iyinto elungileyo ukubonisa ibinzana elinye amaxesha amaninzi kumsebenzi wokuqala wokulungela. Umzekelo:

Hurray, iyasebenza!
Hurray, iyasebenza!
Hurray, iyasebenza!
Hurray, iyasebenza!
Hurray, iyasebenza!
Hurray, iyasebenza!
Hurray, iyasebenza!
Hurray, iyasebenza!

Olu khetho lubi kuba ixabiso lekhawuntari alibonakali kwimveliso. Le yingxaki yabaqalayo. Ungamjongeli phantsi. Ekuqaleni, lo msebenzi wawungowokuqala, kwaye umsebenzi wokufumana uthotho lwamanani ngokokulandelelana okunyukayo wawungowesibini. Kwakuyimfuneko ukwazisa amagama angaphezulu "umjikelo wamaxesha e-N" kunye "nomjikelo ukusuka ku-A ukuya ku-B", eyona nto iyinto enye. Ukuze ndingenzi amaziko angeyomfuneko, ndagqiba ekubeni ndibonise umzekelo kuphela kunye nesiphumo soluhlu lwamanani. Bambalwa abantu abakwaziyo ukufunda indlela yokubamba i-counter entloko kunye nomzekelo wokuziphatha kweprogram entloko ngaphandle kokulungiselela. Abanye abafundi baqala ukudibana nemodeli yengqondo kwisihloko semijikelo.
Emva kokuziqhelanisa, ndinika umsebenzi wokuphinda isicatshulwa esifanayo ukuba sisombululwe ngokuzimeleyo. Ukuba unika ikhawunta ebonakalayo kuqala kwaye emva koko engabonakaliyo, abafundi baya kuba neengxaki ezimbalwa. Ngamanye amaxesha ingcebiso "musa ukubhala ikhawuntara kwisikrini" yanele.

Bayichaza njani abanye?

Kwizinto ezininzi zokufunda kwi-Intanethi, i-syntax yomjikelo inikezelwa njengenxalenye "yentetho". Umzekelo, kwi-developer.mozilla.org (okwangoku), ezinye ezininzi zokwakha zichazwe kunye nelo xesha loop. Kule meko, kuphela i-designs ngokwayo inikezelwa ngendlela yeetemplates. Isiphumo sokusungulwa kwabo sichazwa ngamagama, kodwa akukho mzekeliso. Ngokombono wam, umboniso onjalo wesihloko uphindaphinda ukusetyenziswa kwezinto ezinjalo nge-zero. Umfundi unokuphinda ayibhale ikhowudi aze ayiqhube ngokwakhe, kodwa usafuna umgangatho wokuthelekisa. Unokuqonda njani ukuba umzekelo ubhalwe kwakhona ngokuchanekileyo ukuba akukho nto inokuthelekisa umphumo?
Xa itemplate kuphela inikwe, ngaphandle komzekelo, kuba nzima ngakumbi kumfundi. Indlela yokuqonda ukuba iinqununu zekhowudi zibekwe ngokuchanekileyo kwi-template? Ungazama ukubhala ngandlela ithile, kwaye emva koko ubaleke. Kodwa ukuba akukho mgangatho wokuthelekisa umphumo, ukuqaliswa akuyi kunceda.

Kwikhosi ye-C ++ kwi-Intuitive, i-loop syntax ingcwatywa kwiphepha lesithathu leNtetho yesi-4 ngesihloko esithi "abaqhubi". Xa kuchazwa i-syntax ye-loops, ugxininiso olukhethekileyo lubekwe kwigama elithi "opharetha". Eli gama lichazwa njengeseti yeenyaniso ezifana “nophawu; le yingxelo", "{} yingxelo edibeneyo", "umzimba welophu kufuneka ube yingxelo". Andiyithandi le ndlela kuba ibonakala ifihla ubudlelwane obubalulekileyo emva kwekota enye. Ukwahlulahlula ikhowudi yemvelaphi yenkqubo ngokwemiqathango kweli nqanaba ifuneka ngabaphuhlisi abaqulunqileyo ukuphumeza ukucaciswa kolwimi, kodwa hayi ngabafundi njengoqikelelo lokuqala. Abaqalayo ukungena kudweliso lwenkqubo abafane babe nenyameko ngokwaneleyo ukuba banike ingqwalasela ethe kratya kumagama. Ngumntu onqabileyo okhumbulayo nowaqondayo amagama amatsha okokuqala. Phantse akukho mntu unokulisebenzisa ngokuchanekileyo ibinzana asanda kulifunda. Ke ngoko, abafundi bafumana iimpazamo ezininzi ezinje “Ndibhale ngelixa(a<7);{, kodwa inkqubo ayisebenzi.”
Ngokombono wam, ekuqaleni kungcono ukunika i-syntax yokwakhiwa ngokukhawuleza kunye nama-parentheses. Inketho engenazibiyeli kufuneka icaciswe kuphela ukuba umfundi unombuzo othile: "kutheni kungekho zibiyeli kwaye ziyasebenza."

Kwincwadi ka-Okulov ka-2012 ethi "Izikhokelo zeNkqubo," intshayelelo ye-loops iqala ngepateni, emva koko inike iingcebiso zokusetyenziswa kwayo, kwaye ngoko nangoko iye kwicandelo lovavanyo lesifundo. Ndiyaqonda ukuba le ncwadi ibhalelwe elo gcuntswana labafundi abanobuchule abangafane beze kwiiklasi zam.

Kwiincwadi ezidumileyo, umphumo wamaqhekeza ekhowudi uhlala ubhalwa. Ngokomzekelo, iShildt's "Java 8. IsiKhokelo esipheleleyo" ngo-2015 edition. Okokuqala, itemplate inikwe, ngoko ke inkqubo yomzekelo kwaye ngokukhawuleza emva kwayo - umphumo wokuphunyezwa.

Ngokomzekelo, qwalasela i-loop yexeshana eyenza umva
ukubala ukwehla ukusuka kwi-10, kwaye kanye imigca eli-10 "yemilinganiselo" ibonisiwe:

//Продемонстрировать применение оператора цикла while
class While {
    public static void main(String args []) {
        int n = 10;
        while (n > 0) {
            System.out.println("такт " + n);
            n--;
        }
    }
}

Nje ukuba iqhutywe, le nkqubo ivelisa "imijikelo" elishumi ngolu hlobo lulandelayo:
такт 10
такт 9
такт 8
такт 7
такт 6
такт 5
такт 4
такт 3
такт 2
такт 1

Indlela yokuchaza itemplate, iprogram yomzekelo kunye nesiphumo seprogram isetyenziswe kwakhona kwincwadi ethi "Javascript for Kids" nakwikhosi yejs kwi-w3schools.com. Ifomati yephepha lewebhu ide ivumele lo mzekelo ukuba usebenzisane.

Incwadi ka-Stroustrup ka-2016 yemigaqo kunye nokuziqhelanisa nokuSebenzisa i-C++ yaya phambili. Isinyathelo sokuqala kukuchaza ukuba yintoni umphumo omele ufunyanwe, kwaye emva koko umbhalo weprogram ubonisiwe. Ngaphezu koko, abathathi nje inkqubo engacwangciswanga njengomzekelo, kodwa banike uhambo kwimbali. Oku kunceda ukutsalela ingqalelo kuyo: “Khangela, esi asiyosicatshulwa nje esingenamsebenzi. Uyabona into ebalulekileyo. "

Njengomzekelo wokuphindaphinda, qwalasela inkqubo yokuqala eyenziwa kumatshini weprogram egciniweyo (EDSAC). Yabhalwa nguDavid Wheeler kwiLebhu yeKhompyutha yeYunivesithi yaseCambridge, eNgilani ngoMeyi 6, 1949. Le nkqubo ibala kwaye iprinte uluhlu olulula lwezikwere.
0 0
1 1
2 4
3 9
4 16
...
98 9604
99 9801

Apha, umgca ngamnye uqulathe inani elilandelwa ngunobumba wesithuba ('t') kunye nesikwere selo nani. Inguqulelo yeC++ yale nkqubo ijongeka ngolu hlobo:

//Вычисляем и распечатываем таблицу квадратов чисел 0-99
int main()
{
    int i = 0; // Начинаем с нуля
    while(i < 100){
        cout << i << 't' << square(i) << 'n';
        ++i;
    }
}

Okubangela umdla kukuba, ipateni yesintaksi ayichazwanga kule ncwadi. Stroustrup kwincwadi yokufundisa (uguqulelo) igxininisa ukuba iyabuhlonipha ubukrelekrele babafundi bayo. Mhlawumbi ukukwazi ukuchonga ipateni kwimizekelo emininzi kuthathwa njengokubonakaliswa kobu bulumko.

Njengoko ndizichaza

Indlela kaStroustrup: ichaza umphumo, emva koko usombulula ingxaki, kwaye emva koko uhlalutyo oluzimeleyo ngumfundi - lubonakala lucinga kakhulu. Ke ngoko, ndaye ndagqiba kwelokuba ndiwuthathe njengesiseko, kodwa ndiwuxelele usebenzisa umzekelo ongaphantsi kwembali - umsebenzi wokufumana "itheyibhile yeziqulatho". Yenza i-ankile eyaziwayo ukuze emva koko uthi "khumbula umsebenzi malunga netheyibhile yeziqulatho" kwaye ukuze abafundi bakhumbule ngokuchanekileyo oku. Kumzekelo wam, ndiye ndazama ukuthintela ezinye ezimbini zezona ziphazamisi ziqhelekileyo. Okulandelayo ndiza kubhala malunga nabo ngokubanzi.

Kulo msebenzi saziswa kubuchule bokusombulula iingxaki ezinzima. Isigqibo sokuqala kufuneka senziwe sakudala kwaye silula. Ewe, ngoko unokucinga malunga nendlela yokuphucula esi sisombululo.
Введение
Глава 1
Глава 2
Глава 3
Глава 4
Глава 5
Глава 6
Глава 7
Заключение

Ngokokuqwalasela kwam, indlela ye-"template-example-result" kwiindibaniso ezahlukeneyo isakhokelela ekubeni abafundi bawubone umjikelo njenge-hieroglyph. Oku kwazibonakalisa kwinto yokuba babengasiqondi isizathu sokuba kubekho imeko yokubhalwa apho, indlela yokukhetha phakathi kwe-i++ kunye no-i— kunye nezinye izinto ezibonakala zicacile. Ukunqanda ezi ngcamango ziphosakeleyo, indlela yokuthetha malunga nomjikelo kufuneka igxininise intsingiselo yokuphindaphinda izenzo ezifanayo kwaye kuphela emva kokuzimisela ngokusemthethweni usebenzisa isakhiwo. Ke ngoko, ngaphambi kokunika i-loop syntax, kufuneka usombulule ingxaki ngentloko. Isisombululo sangaphambili kwitheyibhile yengxaki yesiqulatho sijongeka ngolu hlobo:

Console.WriteLine("Введение");
Console.WriteLine("Глава 1");
Console.WriteLine("Глава 2");
Console.WriteLine("Глава 3");
Console.WriteLine("Глава 4");
Console.WriteLine("Глава 5");
Console.WriteLine("Глава 6");
Console.WriteLine("Глава 7");
Console.WriteLine("Заключение");

Inokuphuculwa njani?
Thatha indawo yezenzo ezibuhlungu ngomjikelo.
Zeziphi izenzo eziphindaphindwayo kumqolo ngaphandle kotshintsho?
Akukho namnye kwesi siqwenga. Nangona kunjalo, imiyalelo yokubonisa igama elithi "Isahluko" ngenani ifana kakhulu enye kwenye.
Ngoko ke, inqanaba elilandelayo kukufumana umahluko phakathi kwamaqhekeza. Kukulo msebenzi kuphela ukuba yonke into ibonakala, ngoko akukho miyalelo enye iya kuphinda iphindwe, kodwa iibhloko zekhowudi yemigca emi-5 okanye ngaphezulu. Kuya kufuneka ukhangele hayi kuluhlu lwemiyalelo kuphela, kodwa kulwakhiwo lwamasebe okanye loop.
Kumzekelo, umahluko phakathi kwemiyalelo kwinani emva kwegama elithi "Isahluko".
Nje ukuba umahluko ufunyenwe, kufuneka uqonde ipateni yotshintsho. Iqhekeza elahlukileyo linani? Ngaba ihlala isanda okanye iyancipha? Ingaba ixabiso lenani litshintsha njani phakathi kwamaqela amabini icala elinye?
Ngokomzekelo, inani emva kwegama elithi "Isahluko" landa ngokunyuka kwe-1. Umahluko ufunyenwe, iphethini ibonakaliswe. Ngoku ungabuyisela isiqwenga esahlukileyo ngokuguquguquka.
Kufuneka ubhengeze utshintsho olunjalo phambi kokuqala kwamaqhekeza aphindayo. Uguqulo olunjalo ludla ngokubizwa ngokuba ngu-I okanye u-j okanye enye into eneenkcukacha. Ixabiso layo lokuqala kufuneka lilingane nexabiso lokuqala eliboniswe kwisikrini. Kumzekelo, ixabiso lokuqala ngu-1.
Liliphi ixabiso lokuqala elifanele lithatyathwe ukubonisa uluhlu lwamanani “100, 101, 102, 103, 104, 105”?
Inani lokuqala kolu ngcelele li-100.
Emva komyalelo ngamnye wemveliso, kufuneka unyuse ixabiso lale nguqu ngo-1. Le yunithi linyathelo lokutshintsha.
Liliphi inyathelo eliya kuba kungcelele lwamanani “100, 102, 104, 106”?
Inyathelo lesi-2 kulo mqolo.
Emva kokutshintsha isiqwenga esahlukileyo ngokuguquguqukayo, ikhowudi iya kujongeka ngolu hlobo:

Console.WriteLine("Введение");
int i;
i = 0;
Console.WriteLine("Глава " + i);
i = i + 1;
Console.WriteLine("Глава " + i);
i = i + 1;
Console.WriteLine("Глава " + i);
i = i + 1;
Console.WriteLine("Глава " + i);
i = i + 1;
Console.WriteLine("Глава " + i);
i = i + 1;
Console.WriteLine("Глава " + i);
i = i + 1;
Console.WriteLine("Глава " + i);
i = i + 1;
Console.WriteLine("Заключение");

Emva kokusebenzisa i "ipateni yokuguquguquka" kwikhowudi, ufumana amaqela amaninzi ezenzo ezifanayo ezihamba ngokulandelelana. Ngoku izenzo eziphindaphindayo zinokutshintshwa ngomjikelo.

Ulandelelwano lokusombulula ingxaki apho kufuneka usebenzise iilophu lunala manyathelo alandelayo:

  1. Sombulula “intloko-on” ngemiyalelo emininzi eyahlukileyo
  2. Fumana ipateni
  3. Bonisa ipateni yoguqulo
  4. Yila njengomjikelo

Emva koko, amagama amatsha aqaliswa ukuze umfundi angazifumani kwimeko ethi "Ndiyayiqonda yonke into, kodwa andinakuyithetha":
— isibali sisoloko sisiguquguquka esifunekayo ukulandelela inani lamanyathelo kwiluphu. Ngokuqhelekileyo inani elipheleleyo elithelekiswa nomqobo.
- counter step - inkcazo yepateni yeenguqu zokubala.
- isithintelo - inani okanye ukuguquguquka apho i-counter ithelekiswa khona ukuze i-algorithm ibe yinto yokugqibela. Ixabiso lekhawuntari liyatshintsha ukuya kumda.
— loop body — iseti yemiyalelo eya kuphindwa. Xa besithi “umyalelo ubhalwe ngaphakathi kwiluphu,” bathetha umzimba.
- i-loop iteration - ukuphunyezwa kwexesha elinye lomzimba we-loop.
— imeko yelophu — isivakalisi esinengqiqo emisela ukuba olunye uphindaphindo luya kwenziwa. (Kunokubakho ukubhideka kunye nezakhiwo ze-branching apha)
Kufuneka ulungiselele into yokuba ekuqaleni abafundi baya kusebenzisa amagama kwezinye iinjongo. Oku kusebenza kwabo banamandla nababuthathaka. Ukuseka ulwimi oluqhelekileyo bubugcisa. Ngoku ndiza kubhala ngokufutshane: kufuneka ubeke umsebenzi "ugqamisa isiqwenga sekhowudi kunye <term>" kwaye usebenzise le migaqo ngokwakho ngokuchanekileyo kwincoko.
Emva kokuguqulwa nge-loop, iqhekeza lifunyenwe:

Console.WriteLine("Введение");
int i = 0;
while (i < 7) {
    Console.WriteLine("Глава " + i);
    i = i + 1;
}
Console.WriteLine("Заключение");

Eyona mbono iphosakeleyo

Enye ingcamango ephosakeleyo phakathi kwabafundi kukuba babeka izenzo ngaphakathi kwiluphu ekufuneka yenziwe kube kanye kuphela. Umzekelo ngolu hlobo:

;
int i = 0;
while (i < 7) {
    Console.WriteLine("Введение")
    Console.WriteLine("Глава " + i);
    i = i + 1;
    Console.WriteLine("Заключение");
}

Abafundi bangena kule ngxaki ngalo lonke ixesha, ekuqaleni nakwiingxaki ezinzima ngakumbi.
Ingcebiso ephambili kule meko:

Kufuneka uwuphinde kangaphi umyalelo: kanye okanye amaxesha amaninzi?

Imiyalelo yoshicilelo lwamagama "Intshayelelo" kunye "nesiphelo" kunye nokubhengeza kunye nokuqaliswa kwenguquko ayifani nezinye izenzo eziphindaphindayo. Zibulawa kube kanye kuphela, nto leyo ethetha ukuba kufuneka zibhalwe ngaphandle kwe-loop body.

Zontathu izigaba zesisombululo kufuneka zihlale kwikhowudi ukuze ubhekisele kuzo kamva xa kukho ubunzima. Kwanele ukuphawula iinketho ezimbini zokuqala ukuze zingaphazamisi.
Ingqalelo yomfundi kufuneka itsalelwe kwezi zibakala zilandelayo:
- Kwimeko ye-loop, i-counter kunye nomda zidla ngokuthelekiswa. I-counter inokutshintsha kumzimba welophu, kodwa umda awukwazi. Ukwaphula lo mgaqo, kufuneka wenze izizathu ezibambekayo.
— Imiyalelo yokubonisa amagama “Intshayelelo” kunye “nesiphelo” ibekwe ngaphandle komzimba welophu. Kufuneka sizenze ixesha eli-1. "Intshayelelo" - ngaphambi kokuphinda izenzo, "Isiphelo" - emva.
Kwinkqubo yokudibanisa esi sihloko, ukuqonda okulandelayo, kunye nokujongana nobunzima, kuyanceda nakubafundi abomeleleyo ukuba babuze lo mbuzo: "Kufuneka senziwe kangaphi esi senzo? Enye okanye ezininzi?

Ukuphuhliswa kwezakhono ezongezelelweyo

Kwinkqubo yokufunda imijikelo, abafundi bakwaphuhlisa isakhono sokuxilonga nokusombulula iingxaki. Ukwenza uxilongo, umfundi kufuneka abonise iziphumo ezifunwayo kwaye azithelekise kunye nesiphumo sangempela. Amanyathelo okulungisa axhomekeke kumahluko phakathi kwawo.
Kuba abafundi kweli nqanaba basenalo nofifi lwesiphumo "esinqwenelwayo", banokugxila kwidatha yovavanyo. Njengomthetho, akukho mntu ngeli nqanaba kodwa uyayiqonda into enokungahambi kakuhle kunye nendlela yokujongana nayo. Ngoko ke, ndibhala kwincwadana inkcazo yeengxaki eziqhelekileyo kunye neendlela ezininzi zokuzisombulula. Ukukhetha eyona ifanelekileyo ngumsebenzi womfundi ngokwakhe.
Irekhodi liyafuneka ukuze ubuze "ngaba oko bekulindeleke kwenzeke?", "Kweziphi iimeko eziye zenzeka ngoku?", "Ingaba isisombululo esisetyenzisiweyo sanceda?"

  1. Inani lezenzo li-1 ngaphantsi okanye ngaphezulu kunokulindelekileyo. Izisombululo:
    - nyusa ixabiso lokuqala lekhawunta nge-1.
    — buyisela umsebenzi wothelekiso olungqongqo (< okanye >) ngolunye olungangqongqo (<= okanye >=).
    — tshintsha ixabiso lomda ukuya ku-1.
  2. Izenzo kwi-loop zenziwa ngaphandle kokuyeka, ngokungenasiphelo. Izisombululo:
    — yongeza umyalelo wokutshintsha into yokubala ukuba ilahlekile.
    — lungisa umyalelo wokutshintsha ikhawunta ukuze ixabiso layo lisondele kumda.
    — susa umyalelo wokutshintsha isithintelo ukuba usemzimbeni welophu.
  3. Inani leentshukumo kwiluphu lingaphezulu kwe-1 ngaphantsi okanye ngaphezulu kunokulindelekileyo. Intshukumo kwiluphu ayizange yenziwe nakanye. Okokuqala kufuneka ufumanise awona maxabiso ezinto eziguquguqukayo kanye phambi kokuba iluphu iqale. Izisombululo:
    - tshintsha ixabiso lokuqala lesithintelo
    - tshintsha ixabiso lokuqala lekhawuntari

Ingxaki yesi-3 idla ngokubandakanya ukusebenzisa uguqulo olungalunganga okanye ukungacwangcisi kwakhona ikhawunta ukuya kwiqanda.

Emva kwale ngcaciso, umfundi usesenokuba neengcamango eziphosakeleyo ezahlukeneyo malunga nendlela iilophu ezisebenza ngayo.
Ukugxotha ezona zixhaphakileyo, ndikunika le misebenzi ilandelayo:

  1. Apho umda, ixabiso lokuqala lokubala, okanye inyathelo lokubala lingeniswa ngumsebenzisi.
  2. Apho ixabiso lekhawuntari kufuneka lisetyenziswe kwindlela ethile ye-arithmetic expression. Kucetyiswa ukuba kusetyenziswe i-counter kwi-radical expression okanye kwi-denominator ukwenzela ukuba umehluko ungabikho.
  3. Apho ixabiso lekhawuntari aliboniswanga kwiscreen ngelixa iluphu isebenza. Umzekelo, ukubonisa inani elifunekayo lamaqhekeza abhaliweyo afanayo okanye ukuzoba umzobo ngemizobo yofudo.
  4. Apho kufuneka wenze kuqala ezinye izenzo eziphindaphindiweyo, kwaye emva koko ezinye.
  5. Apho kufuneka wenze ezinye izenzo phambi nasemva kokuphinda

Kumsebenzi ngamnye kufuneka unikeze idatha yovavanyo kunye nesiphumo esilindelekileyo.

Ukuqonda ukuba ungahamba ngokukhawuleza kangakanani, kufuneka ufunde imigaqo yezi ngxaki kwaye ubuze: "zahluke njani kumzekelo?", "Yintoni ekufuneka iguqulwe kumzekelo wokuyicombulula?" Ukuba umfundi uphendula ngokunentsingiselo, ngoko mvumele asombulule ubuncinane ibe nye eklasini, aze omnye asombulule ekhaya ngokwakhe. Ukuba isisombululo siphumelele, ngoko sinokuqala ukucacisa iimeko ngaphakathi kweelophu.
Ukuba uneengxaki zokusombulula iingxaki ngokwakho, kufuneka usebenze kuyo yonke into eklasini. Ukuze ugweme ukusombulula ingxaki ukukhumbuza ukuzoba i-owl, ndincoma kuqala ukusombulula ingxaki ngendlela engekho jikelele. Oko kukuthi, ukuze isisombululo siphumelele uvavanyo lokuqala kwaye singasebenzisi ukwakhiwa kwe-loop. Ewe, emva koko sebenzisa iinguqu ukufezekisa ubuninzi besisombululo.

Iiluphu kunye namasebe

Ngokombono wam, kuluncedo ukunika isihloko "imijikelo ngaphakathi kwamasebe" ngokwahlukeneyo. Ukuze kamva ukwazi ukubona umahluko phakathi kokujonga imeko amaxesha amaninzi kwaye uyijonge kube kanye.
Imisebenzi yokudibanisa iya kuba malunga nokukhupha amanani ukusuka ku-A ukuya ku-B, afakwe ngumsebenzisi:
- isoloko inyuka ngomyalelo.
- ukunyuka okanye ukuhla ngokuxhomekeke kumaxabiso A kunye no B.

Isihloko esithi "isebe phakathi kweelophu" kufuneka siqhutyelwe phambili kuphela emva kokuba umfundi ewazi kakuhle amacebo: "ukutshintsha ipateni ngoguquko" kunye "nokutshintsha into ephindaphindwayo ngomjikelo."
Esona sizathu siphambili sokusebenzisa amasebe ngaphakathi kwi-loops kukungahambi kakuhle kwipateni. Embindini iphula ngokuxhomekeke kwidatha yokuqala.
Kulabo bafundi abakwazi ukukhangela isisombululo ngokudibanisa iindlela ezilula, kwanele ukuthi "isebe lingabhalwa ngaphakathi kwee-loops" kwaye unike ingxaki "umzekelo" ngokupheleleyo ukusombulula ngokuzimeleyo.
Umzekelo umsebenzi:

Umsebenzisi ufaka inani X. Veza amanani ukusuka ku-0 ukuya ku-9 kwikholamu kwaye ubeke uphawu oluchasene nenani elilingana no-X.

Ukuba u-0 ungenisiwe0+
1
2
3
4
5
6
7
8
9

Ukuba u-6 ungenisiwe0
1
2
3
4
5
6+
7
8
9

Ukuba u-9 ungenisiwe0
1
2
3
4
5
6
7
8
9+

Ukuba u-777 ungenisiwe0
1
2
3
4
5
6
7
8
9

Ukuba inkcazo emfutshane ayinakwanela ukubhala nge-loop, ngoko kufuneka ufezekise isisombululo sendalo yonke kwingxaki efanayo ngaphandle kwe-loop.
Uya kufumana enye yezimbini iinketho:
Enqwenelekayo

string temp;
temp = Console.ReadLine();
int x;
x = int.Parse(temp);
if (x==0) {
    Console.WriteLine(0 + "+");
} else {
    Console.WriteLine(0);
}
if (x==1) {
    Console.WriteLine(1 + "+");
} else {
    Console.WriteLine(1);
}
if (x==2) {
    Console.WriteLine(2 + "+");
} else {
    Console.WriteLine(2);
}
if (x==3) {
    Console.WriteLine(3 + "+");
} else {
    Console.WriteLine(3);
}
if (x==4) {
    Console.WriteLine(4 + "+");
} else {
    Console.WriteLine(4);
}
if (x==5) {
    Console.WriteLine(5 + "+");
} else {
    Console.WriteLine(5);
}
if (x==6) {
    Console.WriteLine(6 + "+");
} else {
    Console.WriteLine(6);
}
if (x==7) {
    Console.WriteLine(7 + "+");
} else {
    Console.WriteLine(7);
}
if (x==8) {
    Console.WriteLine(8 + "+");
} else {
    Console.WriteLine(8);
}
if (x==9) {
    Console.WriteLine(9 + "+");
} else {
    Console.WriteLine(9);
}

Inokwenzeka

string temp;
temp = Console.ReadLine();
int x;
x = int.Parse(temp);
if (x==0) {
    Console.WriteLine("0+n1n2n3n4n5n6n7n8n9");
}
if (x==1) {
    Console.WriteLine("0n1+n2n3n4n5n6n7n8n9");
}
if (x==2) {
    Console.WriteLine("0n1n2+n3n4n5n6n7n8n9");
}
if (x==3) {
    Console.WriteLine("0n1n2n3+n4n5n6n7n8n9");
}
if (x==4) {
    Console.WriteLine("0n1n2n3n4+n5n6n7n8n9");
}
if (x==5) {
    Console.WriteLine("0n1n2n3n4n5+n6n7n8n9");
}
if (x==6) {
    Console.WriteLine("0n1n2n3n4n5n6+n7n8n9");
}
if (x==7) {
    Console.WriteLine("0n1n2n3n4n5n6n7+n8n9");
}
if (x==8) {
    Console.WriteLine("0n1n2n3n4n5n6n7n8+n9");
}
if (x==9) {
    Console.WriteLine("0n1n2n3n4n5n6n7n8n9+");
}

Ndinika umsebenzi ofanayo kwangaphambili, ngelixa ndifunda isihloko se-branching.
Ukuba umfundi uza nenketho "enokwenzeka", ngoko kufuneka ubaxelele ukuba kukho izisombululo ezininzi kwingxaki efanayo. Nangona kunjalo, ziyahluka ekuxhathiseni kwazo utshintsho kwiimfuno. Buza umbuzo: "Zingaphi iindawo kwikhowudi ezinokufuna ukulungiswa ukuba ndinokongeza enye inombolo?" Kwinguqulelo "enokwenzeka", kuya kufuneka wongeze isebe elinye kwaye wongeze inombolo entsha kwezinye iindawo ezili-10. Kwi "enqwenelekayo" kwanele ukongeza isebe elinye kuphela.
Misela umsebenzi wokuvelisa kwakhona ukhetho "olunqwenelekayo", emva koko ufumane iphethini kwikhowudi, yenza ukutshintshwa okuguquguqukayo kwaye ubhale i-loop.
Ukuba unombono malunga nendlela yokusombulula le ngxaki ngaphandle kwe-loop ngenye indlela, nceda ubhale kumazwana.

Iiluphu ngaphakathi kweeLophu

Kwesi sihloko kufuneka unikele ingqalelo koku kulandelayo:
— izinto zokubala zelophu zangaphakathi nangaphandle kufuneka zibe ziinguqu ezahlukeneyo.
— i-counter ye-loop yangaphakathi kufuneka isetyenziswe kwakhona amaxesha amaninzi (oko kukuthi, kumzimba welophu yangaphandle).
— kwimisebenzi yemveliso yesicatshulwa, awunakuqala ukubhala unobumba omnye kwimigca emininzi, uze emva koko ubhale owesibini. Kufuneka uqale uprinte bonke oonobumba bomgca wokuqala, emva koko bonke oonobumba bowesibini, njalo njalo.

Kungcono ukuqalisa ukucacisa isihloko se-loops ngaphakathi kweelophu ngokuchaza ukubaluleka kokusetha kwakhona i-counter kwi-zero.
Umzekelo umsebenzi:

Umsebenzisi ufaka amanani amabini: R kunye no-T. Shicilela imigca emibini yoonobumba "#". Umgca wokuqala kufuneka ube nonobumba R. Umgca wesibini uqulethe iziqwenga ze-T. Ukuba nayiphi na inombolo inegative, bonisa umyalezo wemposiso.

R=5, T=11# # 1
############

R=20, T=3########################
###

R=-1, T=6Ixabiso elingu-R kufuneka lingabi-negative

R=6, T=-2T ixabiso kufuneka lingabi-negative

Ngokucacileyo, le ngxaki inezicombululo ubuncinane ezibini.
Enqwenelekayo

string temp;
int R;
int T;
temp = Console.ReadLine();
R = int.Parse(temp);
temp = Console.ReadLine();
T = int.Parse(temp);
int i = 0;
while (i < R)
{
    Console.Write("#");
    i = i + 1;
}
Console.WriteLine();
i = 0;
while (i < T)
{
    Console.Write("#");
    i = i + 1;
}

Inokwenzeka #1

string temp;
int R;
int T;
temp = Console.ReadLine();
R = int.Parse(temp);
temp = Console.ReadLine();
T = int.Parse(temp);
int i = 0;
while (i < R)
{
    Console.Write("#");
    i = i + 1;
}
Console.WriteLine();
int j = 0;
j = 0;
while (j < T)
{
    Console.Write("#");
    j = j + 1;
}

Umahluko kukuba kwisisombululo "esinokwenzeka", inguqu yesibini isetyenziselwe ukuvelisa umgca wesibini. Kuya kufuneka unyanzelise ekusebenziseni ukwahluka okufanayo kuzo zombini iilophu. Lo mda unokuthethelelwa yinyaniso yokuba isisombululo ngekhawunta enye kwimijikelo emibini iya kuba ngumzekeliso wegama elithi "counter reset". Ukuqonda eli gama kuyimfuneko xa usombulula ezi ngxaki zilandelayo. Njenge-compromise, ungazigcina zombini izisombululo kwingxaki.

Ingxaki eqhelekileyo ngokusebenzisa i-counter variable ye-loops ezimbini ibonakala ngolu hlobo:
R=5, T=11# # 1
######

Inani labalinganiswa kumgca wesibini alihambelani nexabiso le-T. Ukuba ufuna uncedo ngale ngxaki, ngoko kufuneka ukhangele kumanqaku malunga neengxaki eziqhelekileyo ngeelophu. Olu luphawu #3. Ifunyaniswa ukuba wongeza ixabiso le-counter value ngokukhawuleza phambi komjikelo wesibini. Ilungiswe ngokusetha kwakhona. Kodwa kungcono ukuba ungakuxeleli oku kwangoko. Umfundi kufuneka azame ukwenza ingqikelelo enye ubuncinane.

Kukho, ngokuqinisekileyo, esinye isisombululo. Kodwa andizange ndiyibone phakathi kwabafundi. Kwinqanaba lemijikelo yokufunda, ibali malunga nalo liya kuphazamisa ingqalelo. Ungabuyela kuyo kamva xa ufunda malunga nemisebenzi yomtya.
Inokwenzeka #2

string temp;
int R;
int T;
temp = Console.ReadLine();
R = int.Parse(temp);
temp = Console.ReadLine();
T = int.Parse(temp);
Console.WriteLine(new String('#', R));
Console.WriteLine(new String('#', T));

Umsebenzi olandelayo ofunekayo:

Bonisa amanani ukusuka ku-0 ukuya ku-9. Inani ngalinye kufuneka libe kumgca walo. Inani lamanani emgceni (W) lifakwe kwibhodi yezitshixo.

W=10
1
2
3
4
5
6
7
8
9

W=100000000000
1111111111
2222222222
3333333333
4444444444
5555555555
6666666666
7777777777
8888888888
9999999999

Ukuba umfundi uye wakwazi ubugcisa bokutshintsha into eguquguqukayo, uya kumelana ngokukhawuleza. Ingxaki enokwenzeka iya kuphinda ibesekusetezeni kwakhona okuguquguqukayo. Ukuba awukwazi ukujongana notshintsho, oko kuthetha ukuba ubungxamile kwaye ufuna ukusombulula iingxaki ezilula.

Enkosi ngosinaka kwakho. Thanda kwaye ubhalise kwitshaneli.

PS Ukuba ufumana iitypos okanye iimpazamo kwisicatshulwa, nceda undazise. Oku kunokwenziwa ngokukhetha inxalenye yombhalo kwaye ucinezele u-“⌘ + Enter” kwi-Mac, kunye no “Ctrl / Ngena” kwiibhodi zezitshixo zakudala, okanye ngemiyalezo yabucala. Ukuba ezi zikhetho azikho, bhala malunga neempazamo kwizimvo. Enkosi!

Ngabasebenzisi ababhalisiweyo kuphela abanokuthatha inxaxheba kuphando. Ngena, ndiyacela.

Uvoto lwabafundi ngaphandle kwekarma

  • 20,0%Ndifundisa ngobungcali, +12

  • 10,0%Ndifundisa ngobuchule, -11

  • 70,0%Andifundisi, +17

  • 0,0%andifundisi, -10

  • 0,0%Okunye0

Bali-10 abasebenzisi abavotileyo. Abasebenzisi abasi-5 abakhange.

umthombo: www.habr.com

Yongeza izimvo