HOPARLÖR 1: su haqqında danışmaq edək. Bu problem, biz demək istifadəçi xahiş Bizə nə qədər dəqiqə öz duş idi sonra biz ekvivalent hesablamaq su şüşə sayı Onların duş istifadə. Belə ki, bizim to-do-nin nə Bu problem üçün? Birincisi, biz istəyirəm olacaq təklif və sonra doğrulamak üçün istifadəçi bizə verir girdi. biz biz təmin sonra etibarlı istifadəçi daxil var, biz hesablamaq olacaq su şüşə ekvivalent sayı istifadəçi zamanı var idi ki, Onların duş, sonra biz istəyirik onları izah edəcəyik ki sayı çap. Belə ki, ilk həll edək vəzifəsi, isteyen və doğrulama istifadəçi girişi. Bunun üçün biz yazdıq bir zəng funksiyası CS50 Kitabxana yerləşir get_int. get_int ki, istifadəçi giriş təmin edir tam, heç bir müsbət nömrələri, belə ki, mənfi nömrələri, və ya sıfır bütün qəbul edilir. Lakin istifadəçi başqa bir şey giriş əgər, belə Hərfləri və ya rəqəmləri hər hansı bir birləşməsi və ya decimal nömrələri, sonra istifadəçi yeniden istenir və funksiyası bir şey qəbul etməyəcək istifadəçi onlara tam verənə qədər. Belə ki, necə biz get_int istifadə edirsiniz? Siz iş açmaq varsa və edək integer.c adlı bir fayl yaratmaq Aşağıdakı yazın. Hashtag cs50.h. daxildir Bu get_int çünki lazımdır bir CS50 kitabxana funksiyası var belə ki, biz daxil hashtag lazımdır qaydada öz bəyannamə funksiyadan istifadə etmək. Və sonra mənim əsas da Mən gedirəm fəaliyyət sadəcə funksiyası get_int zəng etmək üçün. Belə ki, bu run edək və bu işləri necə. Mən artıq tərtib, belə ki, edək etdik yalnız irəli getmək və bu proqram run, ./tam. Burada tez və Burada dəyəri harada giriş var. Mən yalnız bir tam qoymaq De 50, proqram excepts və fit ki, ki, var. Amma yenidən run və demək başqa mən giriş bir şey. Yəqin ki, salam dünya. Ki, bir tam deyil proqram yeniden mənə təklif edəcək. ilə yenidən cəhd edək bəlkə decimal bu dəfə. 0.5, daha bir tam belə proqram qəbul etməyəcək və bu yeniden üçün mənə lazımdır. Belə ki, başqa bir sıra verək. proqram qəbul fit və biz tamamlayın. Belə ki, indi biz bir funksiyası var ki, bizə və alınmasını təmin etməyə imkan verir istifadəçi giriş ki, tam, lakin necə biz həqiqətən takip tam istifadəçi tərəfindən inputted? Yaxşı, biz bunu edəcəyik bütün mağaza bir dəyişən bu dəyər n deyirlər. Mən bir tam n bəyan əgər, və mən get_int ki dəyəri müəyyən sonra n sonra saxlamaq olacaq nə inputted istifadəçi qiymətləndiririk. Bütün hüquqlar, belə ki, indi biz təmin etdik istifadəçi bizə bir tam verəcək və biz takip necə tam, lakin unutmayın, integers müsbət və mənfi, həm də var. Belə ki, həqiqətən mənada deyil Bu problemin kontekstində istifadəçi duş edir ki, mənfi 12 dəqiqə deyirlər. Beləliklə, biz istifadəçi əmin etmək lazımdır həqiqətən bizə müsbət tam verir. İndi biz yalnız bir yoxdur ki tək funksiyası, belə ki, biz olacaq özümüzə ki yaratmaq. Belə ki, biz daim istəyirəm istifadəçi təklif Onlar bizə müsbət tam vermək qədər. Mən davamlı sonra bir şey edirəm, əgər ki, bir loop, bir təkrar yaxın deyil. Biz istifadə inşa biri So c təkrar və loops həyata keçirilməsi bir müddət loop var. Belə ki, bir müddət loop kimi Burada göstərilən icra edəcək loop orqan kimi nə varsa, verilmiş şərt qiymətləndirdiyini kimi uzun doğru. Kimi tezliklə ki, şərti olaraq sonra saxta qiymətləndirir proqram davam edəcək nə loop bədən sonra gəlir. loops gedir isə belə CS50 həqiqətən faydalı ola bilər. Amma bu da halda, biz istəyirik ki, bilirik ən azı istifadəçi təklif etmək niyyətindədir bir dəfə və sonra yalnız loop lazım gələrsə. Belə ki, burada biz bir gəlir xüsusi tikinti və ki müddət çox oxşar loop bir do-isə loop çağırıb. Belə ki, bir do-isə loop icra loop orqanı ən azı bir dəfə və sonra görmək üçün yoxlayır , Bu icra olub bir müddət loop fərqli olaraq, hansı vəziyyətini yoxlamaq olacaq və sonra bədən icra. Belə ki, bir do-isə loop nə biz bilər Bunu bir tam üçün istifadəçi təklif edir, və sonra etibarsız və ya əgər yoxlamaq. etibarsız varsa, onda biz lazımdır istifadəçi xahiş prosesi təkrar sonra bizə bir tam vermək, və ki, tam etibarlıdır yalnız, biz davam edəcəyik nə sonra gəlir. İndi ki, görəcəksiniz tam n elan qədər fərqli nə biz əvvəlki misalda əvvəl idi və bu, çünki daxilində deyil. biz daxili tam n elan olsaydı do-isə loop bədən, sonra biz daxil ola bilməz bu qıvrım kənarda n ki, dəyəri loop orqanı ifadə aşırma. Amma biz əslində daxil olmaq istəyirsiniz sonra bizim proqram n dəyəri. OK, belə ki, indi haqqında danışmaq edək Bu şərt olmalıdır nə. Biz yalnız reprompt istəyirəm istifadəçi kimi uzun n etibarsız edir. Belə ki, özünüz üçün hesab edirəm ki, yalnış nə tam dəyəri kimi görünür və sonra Boolean yaratmaq ifadə ifadə etmək. Biz demək olar ki, bizim subtask ilə başa edirik isteyen və istifadəçi daxil doğrulama. Belə ki, bu bir az edək bit daha çox istifadəçi dostu və istifadəçi bir az vermək bit daha ətraflı məlumat nə biz onlara isteyen edirik. Belə ki, başına istifadəçi təklif edək spec, simli dəqiqə. Belə ki, printf ifadələri istifadə etmək Bu dəqiq uyğun əmin olun. Yaxşı. Belə ki, indi biz bir etibarlı istifadəçi var giriş, müsbət tam neçə dəqiqə dəyər Onlar duş keçirdi. Belə ki, nə növbəti hesablamaq üçün şüşə ekvivalent nömrəsi. biz burada nə ola bilər olacaq nə ilk sizə çox aydın ola, ki, OK. Biz nə istəyirik biz təcrübə başlamaq istəyirəm nümunələri aşkar ideyası və problem üçün düsturlar inkişaf. Beləliklə, biz spec başına bildirib edirik duş ki, bir dəqiqə haqqında bərabərdir su 12 şüşə. Beləliklə iki dəqiqə olardı 24 bərabər, və beş dəqiqə olardı 60 bərabər. Belə ki, indi hesab edirəm ki, əgər Siz var, onda edək Siz gəlmək olar görmek bir model və ya formula ilə biz demək əgər, ifadə etmək n su dəqiqə neçə şüşə ki, n baxımından ifadə edərdiniz? Yenə olsa da bu ilk sadə ola bilər, sonra almaq zaman daha mürəkkəb problemlər biz daxil olmaq istəyirəm olacaq müəyyən təcrübəsi nümunələri və inkişaf düsturlar bu şeyi anlamaq üçün. c siz etmək imkanı var standart hesab əməliyyatları, Bundan əlavə, toplama işlemi, çarpma və bölmə. Mən onu tərk edəcəyik İndi anlamaq üçün ifadə etmək necə şüşə ekvivalent sayı istifadəçi istehlak Onların duş zamanı. Bütün sağ, biz demək olar ki tamamlayın. Biz onların giriş üçün istifadəçi təhrik etdik, biz etibarlı giriş var ki, təmin etdik, və sonra biz necə fiqurlu sonra ekvivalent hesablamaq onlar istehlak şüşə sayı. Bunu son şey çıxdı deyil şüşə ekvivalent sayı və ümid təşviq onlara bir az su qorunması. dəyəri olacaq tipi bir printf bəyanat ola bilər. Mən sizə ki, mən demək istəyirdi Məsələn, üç ev heyvanları var, Mən printf bəyanat istifadə edə bilərsiniz bu kimi bir şey görünür. Yeni üç ev heyvanları var, və gözəl formatlama line. İndi biz istəmirik sadəcə ağır kodu şeylər. sayı Say My pets zamanla dəyişir. Sonra istifadə etmək üçün gedirəm Mənim printf şərhdə placeholders. Belə ki, burada mənim sayı tam deyil. Mən bir tutucu etmək gidiyorum % I istifadə edərək tam üçün. Mən simli yazmaq üçün gedirəm, və sonra simli sonra Mən sonra vergül və yazmaq Mən çap etmək istəyirəm dəyişən. ki, dəyəri çap olunacaq So ki tutucu,% i əvəzinə. Siz, placeholders istifadə edə bilərsiniz Yaxşı, bir% f üzüb gedirdi üçün. Siz də çox ola bilər simli placeholders. Məsələn, mən bir sıra varsa itlər və pişiklər bəzi sayı, Mən burada və sonra iki placeholders qoymaq müvafiq qaydada mənim iki dəyişənlər. Belə ki, indi biz çap üçün necə ki, dəyişənlərin saxlanılır dəyərlər, çox son şey ki, biz təmin etməkdir dəqiq formatında dəyər çap dəqiqləşdirilməsi göstərilən. Ki, biz təhrik etdik istifadəçi və onların daxil təsdiq. Biz sonra ekvivalent hesablanır etdik su şüşə sayı Onların duş əsnasında istehlak ki, və biz onlara ki, dəyəri outputted etdik. Və belə ki, biz su tamamladım. Mənim adım [? Zamila?] və bu CS50 edir.