ZAMYLA CHAN: Hongera juu ya kumaliza yako kwanza michache ya mipango C. Najua kwamba kuliingia yako ya kwanza katika C syntax inaweza kuwa ngumu. Lakini mimi kuwahakikishia, mwishoni mwa Bila shaka, utakuwa na uwezo wa kuangalia kwanza ya wanandoa wa kazi na kukamilisha yao katika dakika. Sasa kwa kuwa wewe ni kupata zaidi ya ukoo na syntax, hebu kupata na Kaisari. Katika Kaisari, mtumiaji itawasilisha integer muhimu kama mstari amri hoja, kisha kuingia wazi ujumbe wa maandishi katika haraka. mpango kisha encipher maandishi na magazeti yao ciphertext ujumbe. enciphering kwa Kaisari ni rahisi sana. Kuhama kila herufi, katika zao Nakala wazi, na muhimu. Kama matokeo, pia ni pretty salama. Lakini utekelezaji wa Kaisari itaanzisha sisi ASCIIMath na safu data miundo. Tutaweza kupata ngumu zaidi ciphers baadaye. Na muhimu Kaisari wa 2, barua katika Nakala wazi itakuwa kuwakilishwa na C barua katika nakala ya siri kwa sababu C ni barua mbili baada ya A. B itakuwa kuwakilishwa na D na C na E. Kuelekea mwisho wa alfabeti, W ni kuwakilishwa na Y, na X na Y Z. Lakini hana barua mbili baada ya hivyo, hivyo ciphers Wraps kuzunguka alfabeti. Y katika maandishi wazi ni hivyo kuwakilishwa na katika nakala ya siri, na Z na B. Ni anaweza kusaidia kuangalia Cypher Kaisari kama kuendelea alfabeti gurudumu. Kwa encipher Nakala zao, mtumiaji wataingia hoja mbili ndani ya mstari amri - . / Kaisari ikifuatiwa na muhimu. Kama siku zote, hatuwezi kuwaamini mtumiaji kabisa kuingia pembejeo kwamba kufanya maana kwa ajili ya mpango wetu. Hivyo tutaweza kuwa na kuhalalisha yao amri line pembejeo. Badala ya kutumia int kuu batili, sisi ni kutumia int kuu, int argc, kamba argv. integer argc kutofautiana inawakilisha idadi ya hoja kupita katika mstari amri. Na argv ni safu, au kufikiria kama orodha, ya hoja kupita in Hivyo kwa Kaisari, jinsi gani sisi kuhalalisha mtumiaji pembejeo? Vizuri, lazima tu kuingia mbili amri line hoja - . / Kaisari na ufunguo. Hivyo kama argc sio 2, hiyo ina maana kwamba aidha alisahau muhimu na wa haki aliingia /. Kaisari, au wao aliingia funguo nyingi. Kama hii ni kesi, basi itabidi unataka magazeti maelekezo na kuacha mpango. Wao itabidi haja ya kujaribu tena kutoka mstari amri. Lakini hata kama argc ni 2, utasikia haja ya kuangalia kama wao kukupa muhimu halali. Kwa Kaisari, unahitaji integer. Lakini argv ni safu ya masharti. Jinsi gani unaweza kupata kwamba muhimu? haraka kuangalia arrays - data miundo kwamba kushikilia nyingi maadili ya aina moja data. Entries ni sifuri-indexed, kwa maana kwamba kipengele kwanza ni sifuri index na kipengele cha mwisho ni saa ukubwa index bala 1, ambapo kawaida ni idadi ya vipengele katika safu. Kama mimi alitangaza mpya kamba safu mailbox ya urefu wa 3, kuibua, ni inaonekana kama hii. Tatu vyombo kwa masharti , Upande kwa upande. Wa kupata yoyote kipengele, unapoandika jina wa safu na kisha zinaonyesha index katika mabano mraba. Hapa, mimi nina kumshirikisha thamani ya kila kipengele, kama napenda kufanya na yoyote nyingine kamba kutofautiana. Hivyo kupata amri hoja mstari wetu, wote sisi kufanya ni kupata kipengele kulia wa safu argv. Kama mtumiaji aliingia. / Blastoff Timu ya Roketi katika terminal, argv 0 ingekuwa kuwa. / blastoff. argv itakuwa Team, na arg2 itakuwa roketi. Sasa kwamba tunaweza kupata ufunguo yetu, sisi bado haja ya kufanya uhakika kwamba ni sahihi. Tunahitaji kubadili kwenye integer. Lakini hatuwezi tu kutupwa kama tumefanya hapo awali. Kwa bahati, kwa Y kazi inachukua huduma ya hii kwa ajili yetu na hata anarudi 0 kama kamba hawezi kuwa waongofu katika integer. Ni juu yenu, ingawa, kuwaambia mtumiaji kwa nini wewe si basi mpango wa kuendelea. Kuhifadhi matokeo ya Y katika integer, na kuna una muhimu yako. sehemu ya pili ni rahisi. Kuchochea mtumiaji kwa ajili ya maandishi yao wazi, ambayo itakuwa ya data kamba aina. Kwa bahati kwa ajili yetu, kila mtumiaji inputted masharti ni halali. Sasa kwa kuwa tuna kila pembejeo muhimu kutoka kwa mtumiaji, ni wakati kwa sisi encipher ujumbe wao. dhana ya Kaisari ni rahisi kutosha kuelewa. Lakini jinsi gani kompyuta yako kujua ambayo barua kuja baada ya mmoja kwa mwingine? Hapa ni wapi meza ASCII anakuja in Tabia ya kila ina integer idadi yanayohusiana na hayo. Capital A ni 65. Capital B ni 66. Herufi za chini ni 97. B lowercase ni 98. Lakini wahusika si mdogo tu idadi kialfabeti. Kwa mfano, ishara @ ni ASCII ya simu 64. Kabla ya kushughulika na kamba nzima, hebu kujifanya sisi tu na kuhama tabia moja. Naam, sisi tu wanataka kuhama halisi barua katika maandishi wazi, si wahusika au namba. Hivyo kitu ya kwanza kwamba tutaweza wanataka kuangalia ni kama tabia ni katika alfabeti. isalpha kazi gani hii kwa yetu na anarudi Boolean - kweli kama wahusika ni barua, uongo kama vinginevyo. Wengine wawili kazi muhimu ni isupper na islower, pamoja na binafsi maelezo majina. Wao kurudi kweli kama tabia aliyopewa ni herufi kubwa au lowercase, mtiririko huo. Kwani wao ni booleans, wao ni muhimu kutumia kama masharti. Kama isalpha anarudi kweli, itabidi kuhama kwamba tabia na muhimu. Basi hebu wazi kwa ASCIIMath na kufanya baadhi ya math ASCII. matumizi ni sawa na matumizi ya kwa Kaisari na inachukua katika muhimu katika amri line. Kama mimi kukimbia ASCIIMath 5, inaonekana kuongeza 5, kunipa f barua, na kuonyesha thamani ASCII. Basi hebu tuangalie mpango. Unaweza usiamini, haki hapa, kwa nini barua ni integer, wakati ni wazi, vizuri, barua. Ni zinageuka kuwa wahusika na integers ni kubadilishana. Kwa kuweka mbili katika moja Nukuu alama, integer unaweza kuhifadhi Thamani ASCII ya mji mkuu A. Kuwa makini, ingawa. Unahitaji nguo moja. Bila kunukuu moja alama, mkusanyaji bila kuangalia kwa kutofautiana jina lake, na si tabia. Kisha mimi kuongeza barua na muhimu, hifadhi Jumla katika matokeo int vigezo. Hata ingawa matokeo yake ni ya aina ya data integer, kauli yangu printf anatumia % C placeholder kwa wahusika. Hivyo mpango Prints tabia kuhusishwa na matokeo integer. Na kwa kuwa sisi kuchapishwa integer fomu na pia kutumia% d, tunaona idadi kama vile. Hivyo sasa unaweza kuona kwamba sisi kutibu wahusika na integers, na kinyume chake. Hebu mtihani nje ASCIIMath chache zaidi ya mara 25 kwa kutumia kama muhimu. Sisi kupata z barua. Sasa sisi kujaribu 26. Tunataka kupata barua, lakini badala ya sisi kupata mabano kushoto. Hivyo ni wazi, kuongeza tu muhimu kwa barua si kufanya. Tunahitaji kufikiri formula wa kufuta kuzunguka alfabeti, kama yetu mfano katika mwanzo alivyofanya. formula kwa ajili ya Kaisari kuhama ni kama ifuatavyo. c sawa p pamoja na k modulo 26. Kumbuka kwamba modulo ni muhimu operesheni ya kwamba anatupa salio ya kugawa namba moja na nyingine. Hebu kuomba hii formula wazi Nakala mbili na muhimu ya 2. Thamani ASCII ya y ni 89, ambayo inatupa 91 modulo 26, ambayo ni sawa na 13 - dhahiri si thamani ASCII ya, ambayo ni ya 67. Ucheshi mimi sasa na kuondokana na ASCII maadili kwa ripoti ya herufi ambapo ni sifuri na Z ni 25, maana kwamba Y ni 24. 24 plus 2, modulo 6, inatupa 26, modulo 26, 0, ambayo ni herufi index ya. Hivyo formula hii inaonekana kuomba herufi index ya barua na si yake ASCII thamani. Lakini kuanza na maadili ASCII. Na magazeti tabia nakala ya siri, itabidi thamani yake ASCII pia. Ni juu yenu, basi, kufikiri jinsi ya kubadili na kurudi. Mara baada ya kufikiri formula haki kwa ajili ya tabia moja, kila haja ya kufanya ni kuomba formula huo kwa kila mbili katika maandishi wazi - tu kama barua kwamba ni herufi, bila shaka. Na kumbuka kwamba unahitaji kuhifadhi kesi, juu au ya chini, hiyo ambapo isUpper na kazi isLower zilizotajwa awali atakuja katika Handy. Unaweza kuwa na mbili formula - moja kwa herufi kubwa na moja kwa lowercase. Hivyo isUpper isLower itasaidia formula kuamua ambayo ili kuomba. Jinsi gani unaweza kutumia formula yako ya kila moja tabia katika kamba? Naam, ni kamba tu safu ya wahusika. Hivyo unaweza kupata kila tabia na kambi ya juu ya kila mhusika katika kamba katika kwa kitanzi. Kama kwa ajili ya hali ya yako kwa kitanzi, kazi strlen, kwa kamba urefu, atakuja katika Handy. Inachukua katika kamba kama pembejeo na anarudi urefu wa kamba hiyo. Kuhakikisha ni pamoja maktaba haki kutumia urefu wa kamba kazi. Na kuna una nakala ya siri yako. Jina langu ni Zamyla. Na [Akizungumza CODE].