ГЛАС 1: Хајде да причамо о води.
У овом проблему, тражимо од корисника рећи нас колико у минути њихова туш био
а онда израчунати еквивалент број флаша воде
да је њихова туш користи.
>> Па шта су наша То-До је за овај проблем?
Прво, ми ћемо желети да подстакне и потврда
улазни да нас корисник даје.
Када смо да нам помогне има важећи улаз корисника,
идемо за израчунавање Укупни број флаша воде
да је корисник имао током њихова туш, а онда смо
им рећи за штампање тај број.
>> Дакле, да решавање наш први задатак, што је навело и потврђивање
корисник улаз.
За ово смо написано Функција за вас зове
гет_инт налази у ЦС50 библиотеци.
гет_инт осигурава да улазе корисника цео број, тако да било какве позитивне бројеве,
негативни бројеви, или нула су сви прихватили.
Али ако корисник унесе нешто друго, тако да било која комбинација слова или бројева
или децималне бројеве, онда корисник ће бити затражено да понови
и функција неће прихватити ништа док им корисник даје цео.
>> Па како да користимо гет_инт?
Ако отворите свој радни простор и креирати фајл под називом интегер.ц хајдемо
откуцајте следеће.
Хасхтаг укључују цс50.х.
То је неопходно јер гет_инт је функција ЦС50 библиотека,
тако да морамо да хасхтаг укључити његова изјава како
да користи функцију.
А онда у мој главни функционишу Идем само
једноставно позове функцију гет_инт.
>> Дакле, хајде да то и видимо како то функционише.
Већ сам саставио, па хајде да само напред и покренули овај програм,
./интегер.
Овде имам брз и ево где улазна сам вредност.
Да сам ставио у само неким цео број, 50, Програм изузима и квит
и то је то.
>> Али реци опет ја га воде и Ја улаз нешто друго.
Можда, здраво свет.
То није цео број тако да Програм ће ме подстаћи да поновите.
Хајде да пробамо поново са можда децимални овај пут.
0.5, опет, не цео број тако програм неће прихватити
и то ће ми рећи да поновите.
Дакле, хајде да му дати други број.
Програм то прихвати, квит, и готови смо.
>> Тако да сада имамо функцију да нас и осигурава дозвољава
да корисник Улази за цео број, али како можемо
заправо води евиденцију о цео уноси корисник?
Па, све што ћемо урадити је продавница ова вредност у променљивој, кажу бр.
Дакле, ако сам прогласити природан број н, и ја поставити ту вредност на гет_инт,
тада је н ће онда складиштити год вреднују корисника уносите.
>> У реду, тако да сада смо осигурати да корисник ће нам дати цео број
и знамо како да се води евиденција на цео број, али запамтите,
броја су и позитивне и негативне.
Тако да заправо не смисла у контексту овог проблема
да корисник има туш од кажу негативних 12 минута.
Дакле, морамо бити сигурни да је корисник заправо нам даје позитиван цео број.
Сада немамо само један функција за то,
тако да ћемо имати да створи да себи.
>> Зато желимо да стално питати корисника
док они нам дају позитиван цео број.
Ако радим нешто стално онда То је слично петље, понављања.
Дакле, један од конструкција које користимо у ц за спровођење понављање и петље
је вхиле петља.
Дакле, док петља, као приказан овде, ће се извршити
оно што је у телу петље као док датим услов има вредност
труе.
Чим таквом стању вредност фалсе, онда
програм ће наставити да било шта долази након тела петље.
>> Дакле, док петље ће бити веома користан у ЦС50.
Али у овом конкретном случај, знамо да смо
ће питати корисника најмање једном и онда само петље ако је потребно.
Дакле, овде долазимо до Посебна конструкција и то је
врло сличан време петља зове ДО-вхиле петљу.
>> Дакле, до-вхиле петље извршава тело петље најмање једном
а онда проверава да да ли треба да изврши,
за разлику од вхиле петље, који ће проверити стање
а затим извршити тело.
Дакле, у ДО-вхиле петље шта бисмо могли урадите је питати корисника за цео број,
а затим проверите да ли је неважећи или не.
Ако је неважећи, онда ћемо поновите поступак тражећи корисника
да нам дају још једну цео број, а затим само када је цео број је важећа,
ми ћемо наставити да што долази после.
>> Сада ћете приметити да је декларација природан број н
је нешто другачије од онога што радио раније у претходном примеру
а то је због обима.
Ако смо прогласили број н у на телу До-вхиле петље,
онда не би могли да приступе да вредност н изван оних коврџавом
брацес указује на тело петље.
Али, ми у ствари не желе да приступе вредност н касније у нашем програму.
>> У реду, па хајде да причамо о шта ово стање би требало да буде.
Желимо да репромпт само корисник док је н неважећи.
Тако да у себи шта је неважећи цео вредност ће изгледати као
а затим направите Боолеан израз да изразе да.
>> Скоро смо завршили са нашим подзадатак од навело и потврђивање уноса корисника.
Дакле, нека ово мало мало више корисника пријатељски
и даје кориснику мало Мало више информација
од онога што их је навело на.
Дакле, да подстакне корисника, складу са спец са стринг минута.
Дакле, користећи принтф изјаве, да Проверите да ли одговара ово тачно.
>> У реду.
Тако да сада имамо валидну корисника улаз, позитиван цео број
вредност за колико минута су провели под тушем.
Дакле, шта је следеће је да се израчуна еквивалент број боца.
Шта ћемо да радимо овде могу бити веома очигледна на први поглед,
и то је у реду.
Оно што ми желимо да урадимо је да Желим да почне
идеја откривање образаца и развој формуле за проблем.
>> Тако нам је речено по спец да је један минут у туш
је еквивалентно са око 12 флаша воде.
Па онда два минута би бити еквивалент до 24,
и пет минута би буде еквивалентна 60.
Па сад, ако мислите Ви сте га, онда хајде да
види да ли може доћи до са шаром или формули
да изразим ако смо рекли, Н минута, колико флаша воде
да ли би се изразити у н?
>> Опет, иако је ово може бити једноставно у први,
касније када дођемо до сложеније проблеме
ћемо желети да уђу у пракса идентификовања
обрасци и формуле у развоју да схватим те ствари.
>> У ц имате приступ стандардне аритметичке операције,
сабирање, одузимање, множење и дељење.
Па ћу га оставити на Ви сада да схватим
како да експримирају Укупни број боца
да корисник потроши током туш кабином.
>> У реду, скоро смо урадили.
Ми смо затражено корисника за њихов допринос, ми смо обезбедили да је исправно улаз,
а онда смо схватили како за израчунавање еквивалент
број боца да конзумира.
Тако да је последња ствар коју треба урадити је да се излаз еквивалент број боца
и надамо се подстичу им да сачува воду.
>> Излаза вредност ће бити принтф.
Да сам хтео да ти кажем да сам имају три љубимце, на пример,
Ја могу да користе изјаву принтф да изгледа овако.
Имам три љубимце, а нови линија за лепу форматирање.
>> Сада не желимо да једноставно тешко код ствари.
Саи број мој кућни љубимци мења током времена.
Онда ћу искористити плацехолдерс у мом принтф изјави.
Па ево мој број је цео број.
Зато ћу да направим чувар места за цео број коришћењем% и.
Ја ћу написати стринг, а онда након стринга
Пишем зарез а затим и променљива да желим да одштампате.
Тако да вредност ће бити штампан уместо тога плејсхолдер,% и.
>> Можете користити симболе, као добро, за сплавова са% ф.
Такође можете имати вишеструке плацехолдерс у низу.
На пример, ако имам број паса и одредјени број мачака,
Ставио сам два плејсхолдери овде и онда моја два варијабле у одговарајућим редоследом.
>> Дакле, сада знамо како да одштампате меморисане вредности варијабли,
последња ствар на урадите је да би били сигурни да
принт вредност у тачном формату назначено у спецификацији.
Уз то, ми смо подстакла корисник и потврдио њихов допринос.
онда смо израчунали еквивалент број флаша воде
да троше током тушем, и ми смо имати излаз ту вредност на њих.
И тако, ми смо завршили воду.
>> Моје име је [? Замила,?] а ово је ЦС50.