[Powered by Google Translate] Lexi ROSS: pob hawl, hi, bawb. Croeso i'r cyntaf CS50 supersection. Hwn fydd yr wythnos yn unig o supersections. Ar ôl hyn, byddwch yn mynd i adran rheolaidd gyda'ch neilltuo TF. Ond yr wythnos hon, rydym yn gwneud hynny mewn tipyn bach o wahanol fformat, er bod y fformat ei hun, sut y mae'n mynd i fynd am yr awr a hanner nesaf fwy neu lai, yn mynd i fod yn eithaf debyg i'r hyn y byddwch yn gweld am gweddill y semester. Felly, beth ydym yn mynd i'w wneud yw dechrau drwy fynd dros y yn rhan o adran eich set problem. Felly, os ydych chi wedi darllen dros y set p sy'n gobeithio gennych, byddwch yn gweld bod yna yn rhan o'r enw "A Adran Cwestiynau ", ac mae'r rhain i fod i gael mynd drosodd yn eich adran. Felly, rydych yn cael mantais drwy fod yma yn eich bod yn cael i mynd dros y cwestiynau mwy cysyniadol-seiliedig. Ac ar ôl i ni wneud hynny, rydym yn mynd i fynd dros y ddwy flynedd ddiwethaf cwestiynau adran, sy'n plymio yn fwy i godio cwestiynau fath. Felly, rydym yn mewn gwirionedd yn mynd i gael i chi guys yn cymryd ychydig munud ar gyfer pob cwestiwn, ceisiwch eu datrys ar eich pen eich hun, a yna rydym yn mynd i ddod at ei gilydd gan ddefnyddio'r CS50 newydd Mannau offeryn ac ewch dros yr atebion er mwyn i chi i gyd yn cael y cod cywir i adolygu. Felly, un neu ddau o gyhoeddiadau. Peidiwch ag anghofio bod yna oriau swyddfa bob nos yr wythnos yn Annenberg 8-11, felly yn cymryd mantais o'r rheiny. A hefyd, peidiwch â dechrau y p gosod yn rhy hwyr i mewn i'r wythnos. Dechrau heno neu nos yfory fan bellaf. Byddwch yn difaru os byddwch yn aros yn rhy hir i ddechrau ac yn rhedeg i mewn i faterion. Felly, yn cymryd ein cyngor ac yn sicr dechrau'n gynnar. Bydd hyn fod yn ffordd dda i ddechrau arni gyda cwestiynau hyn adran. Felly, rwy'n Lexi, gan y ffordd. Rwy'n TF. Ac mae hyn yn Dan, sydd hefyd yn TF. DAN BRADLEY: Hey, guys. Lexi ROSS: Ac mae'n mynd i gael dechrau gyda'r cwestiynau. DAN BRADLEY: pob hawl. Felly, rwy'n mynd i jyst gyflwyno compiler ychydig yn gwpl materion yr ydym ni'n mynd i siarad am a dim ond yn mynd drwy rhyw fath o syniadau cysyniadol bod angen i ni mewn gwirionedd yn rhedeg cod, naill ai mewn offer neu gyda'n math o ffug offer, Rhedeg CS50 a Mannau. Felly, gadewch i 'jyst weld os oes unrhyw un yn y gynulleidfa yn cael unrhyw syniad am yr hyn rydym yn sôn am. Felly beth yw llyfrgell yng nghyd-destun cod? Dylai unrhyw un gennych unrhyw syniad? Iawn. Sweet. GYNULLEIDFA: Fel stoc o swyddogaethau y mae rhywun arall raglennu eisoes y gallwn adeiladu i fyny? DAN BRADLEY: Yn union. Felly llyfrgell yn stoc o swyddogaethau bod rhywun arall wedi rhaglennu eisoes nad oes raid i ni ail-weithredu ein hunain. Felly, rydym wedi pethau fel y safon I / O llyfrgell, y cs50.h llyfrgell, sy'n bethau y mae'r byd, Rhyngrwyd, mae'r staff wedi gwneud sy'n gwneud ein bywydau yn haws fel coders. Felly, sut ydych chi'n argraffu pethau i sgrin? Does gen i ddim syniad, mae'n printf i mi. Mae'n rhywbeth rhywun arall wedi gwneud eisoes nad yw anhygoel ac yn gweithio'n eithaf da. Iawn. Felly, i ddefnyddio llyfrgelloedd, ar y llaw arall, fodd bynnag, mae gennych i mewn gwirionedd wneud rhai pethau ychwanegol gyda'ch cod. Felly, rhaid i chi ddefnyddio pethau fel hyn # gynnwys. Beth mae hynny'n ei wneud? Beth yw rôl y chwarae pan fyddwch yn ei gael mewn rhaglen? GYNULLEIDFA: Mae'n gadael i chi ddefnyddio unrhyw swyddogaethau sy'n [Anghlywadwy] llyfrgell drwy dim ond defnyddio'r diffiniadau eisoes wedi [Anghlywadwy] llyfrgell. DAN BRADLEY: Iawn. Mae'n gadael i chi dynnu swyddogaethau llyfrgell i mewn i'ch cod, ond mae'n ei wneud mewn ffordd nad yw'n union yr un fath fel -Lcs50, y byddwn yn dod i mewn munud. 'I jyst yn gadael y casglwr yn gwybod bod hey, mae hyn yn swyddogaethau sy'n mynd i ddod i fyny yn eich cod. Byddwch yn ymwybodol, os nad ydynt yn cael eu disgrifio yn llawn yn y cod dyna o'ch blaen, mae rhywfaint o swyddogaeth llyfrgell sy'n mynd i gymryd gofal ohono. Felly, yn achos printf, y byddwn yn mynd dros ddwy gwaith heddiw, yw'r safon I / O llyfrgell. Felly, er nad wyf yn diffinio printf unrhyw le yn fy cod erioed, y safon I / O cymryd gofal ohono i mi, ac fe wnaf # gynnwys Bydd stdio.h, ac mae'n tynnu yn y swyddogaethau hyn fy mod yn nad ydynt wedi diffinio erioed. Felly beth yw'r gwahaniaeth, yna, rhwng y # gynnwys a-lcs50? Beth mae-lcs50 wneud pan fyddaf yn ei throsglwyddo i'r compiler, fel Clang? Dylai unrhyw un gennych unrhyw syniad? Iawn. Yeah? GYNULLEIDFA: Mae'n gadael i chi gael mynediad at y llyfrgell CS50? DAN BRADLEY: Mae'n gadael i chi gael mynediad at y llyfrgell CS50 yn ei fod yn dweud y compiler, Clang, bod hey, dyma lle chi mewn gwirionedd yn mynd i gael y swyddogaethau hyn. Felly, y # cynnwys yn dweud bod swyddogaethau hyn yn rhywle. Mae'r lcs50-yn dweud, ewch at y fan a'r lle yn eich cyfrifiadur - dyna y llyfrgell cs50 - a thynnu i fyny y cod gwirioneddol ar gyfer y swyddogaethau hyn. Ydy hynny'n gwneud synnwyr, pawb? Felly, y rhain i gyd yn bethau sydd i helpu eich compiler ynghyd â gwneud y cod yn rhedeg mewn gwirionedd. Cwestiwn Cyflym. A yw pobl yn gwybod beth yw casglwr yw? Da synnwyr? Mae'n bôn cymryd y cod ysgrifenedig sydd gennych, ei newid i deuaidd, trosi i mewn i god peiriant, fel y gall eich cyfrifiadur mewn gwirionedd yn ei ddeall. A heb oedi ymhellach, rydym yn mynd i fynd i mewn i'r mwy ymarferion codio go iawn y byddwch yn guys cael hwyl suddo eich dannedd i mewn, a bydd Lexi mynd dros hynny. Lexi ROSS: Iawn. Awesome. Felly, rydym yn mynd i fynd dros ddau gwestiwn yma. Felly, yr un cyntaf mewn gwirionedd, gallwch weld, mae'n ychydig bach i'r dde yma, ond yn y bôn mae'n gofyn i chi ysgrifennu rhaglen i gymryd rhywfaint o fewnbwn defnyddiwr. Dwi ddim yn siŵr pam mae yna sgwâr du yno. Mae'n dirgel. Dylai fod yn iawn, er. Felly, mae eisiau i chi gymryd mewnbwn defnyddwyr yn Celsius, trosi'r i Fahrenheit, ac yna dweud wrth y defnyddiwr yr hyn y mae'r tymheredd fyddai yn Fahrenheit. Felly gallwch weld sampl mewnbwn / allbwn dilyniant yma. Mae'r mewnbwn defnyddwyr - ar ôl Celsius, y beiddgar yn cyfeirio at mewnbwn defnyddwyr. Felly mae'r defnyddiwr mewnbynnau 100, ac mae'r allbynnau rhaglenni Fahrenheit, 212.0. Ac wahaniaeth pwysig yn y rhaglen hon yw ein bod mynd i dim ond un lle degol, felly byddwn yn gweld sut i wneud hynny hefyd. Ac felly beth arall i'w nodi yw ein bod yn defnyddio a.out oherwydd Clang, y compiler, yn awtomatig yn enwi ei deuaidd ffeiliau a.out oni bai eich bod yn nodi ei fod gyda baner penodol i roi iddo ei enw ei hun, ond ar hyn o bryd rydym yn jyst yn mynd i ddefnyddio'r diofyn, a.out. Felly, gadewch i ni mewn gwirionedd yn cymryd ychydig funudau ac yn ceisio ysgrifennu allan rhai cod ar gyfer hyn eich hunain. Felly mae'n 4:15. Felly, ar 4:20, rydym yn mynd i ddod yn ôl a - oh, ar y dde. Mannau. Cool. Mae hyn yn fath o fel hyn rydym yn galw cod sgerbwd yn y mae'n sgerbwd, ond rhaid i chi gwblhau yn y cig y rhaglen i mewn gwirionedd yn ei wneud yn rhedeg. Felly gallwch weld y # cynnwys cyfarwyddebau i fyny yno i gynnwys cs50 a stdio. Sylwais yn sylwadau y fformiwla gwirioneddol ar gyfer trosi Celsius i Fahrenheit, rhag ofn nad ydych yn cofio o uchel ysgol gwyddoniaeth neu whatnot. Ac yna mae hyn yn unig yw sgerbwd ar gyfer brif swyddogaeth ei hun. Felly, popeth yr ydych yn ysgrifennu yn mynd i fynd yma. Ac er i mewn gwirionedd yn cyrraedd y gofod hwn - fel y gall CS50 Mannau drwy ddefnyddio'r URL hwn, mae Dan yn mynd i ysgrifennu ar y bwrdd, a byddaf yn pennu hefyd. DAN BRADLEY: cs50.net/spaces-- Lexi ROSS: / qWLc - Mae'n ddrwg gen i, y. DAN BRADLEY: Y?. Lexi ROSS: Na, na, na, na. Mae hynny'n iawn. qYLcYWfg. Felly, ddylwn i weld pawb enwau fath o neidio i fyny yma. Awesome. Mae hyn yn edrych yn wych. Mae hyn yn golygu bod pobl yn ymuno â'r gofod. Felly os nad ydych wedi gotten cyfle i chwarae o gwmpas yn Mannau eto, mae hyn mewn gwirionedd yn yr hyn rydych yn mynd i gael ei ddefnyddio gyda'ch TFS yn adran mhob semester. Sut mae'n gweithio yn fath o bawb ysgrifennu eu hunain Gall cod, a does neb yn ei weld hyd nes y byddwch bwyso ar y Save botwm, yr wyf i'n pwyntio i'r dde yn awr. Felly dw i'n mynd i'r wasg Save, ac os ydych i gyd yn mynd i fy enw, y dylech fod yn gallu ei weld mewn Pobl yn y Space, sef Lexis Beryl Ross. Felly, sut mae'n mynd i edrych yn i chi glicio ar fy enw, a rydych chi'n mynd i weld Diwygiad 5, sy'n yw'r adolygiad diweddaraf. Copi yn unig Diwygiad 5 i eich lle drwy glicio arno. Mae pob hawl. Felly, gadewch i ni fynd trwy'r broblem hon gyda'n gilydd, ac rwy'n mewn gwirionedd yn mynd i ysgrifennu y cod yma ar y sgrin. Gallwch chwyddo mewn ychydig bach. Ac yna unwaith dwi'n ei wneud, gallwch gopïo fy adolygiad diweddaraf yn eich gofod, os ydych am weld yr ateb terfynol. Yn awr, Mannau sydd â'r gallu i mi i fynd i mewn a gweld unrhyw un y cod eich bod guys wedi ysgrifennu, ond dim ond oherwydd ei fod yn Nid yw mor adran fawr ac rydym yn mewn gwirionedd yn cael yr un math o alluoedd trafod fel llai adran hon, rydym yn jyst yn mynd i fynd drwy'r a Im 'jyst yn mynd i ysgrifennu'r cod. Ond yn sicr yn fy stopio gyda chwestiynau ar unrhyw adeg. Rydym yn mynd i fynd drwyddo fath o gam wrth gam i wneud sicrhau ein bod yn deall pob rhan o'r hyn sy'n mynd ymlaen yma. Gall pawb weld y testun yma? A oes unrhyw un eisiau mwy? Felly beth yw'r peth cyntaf rydym ni'n mynd i wneud yma? Wel yn y bôn, ers i ni am gael mewnbwn gan y defnyddwyr ac rydym am iddo fod yn fath o brofiad da ar gyfer y defnyddiwr, yr ydym mewn gwirionedd eisiau dweud wrthynt beth yr ydym yn chwilio amdano. Felly, gadewch i ni argraffu yn union yr hyn rydym am ffurfio y defnyddiwr. Felly, nid yn unig yn trafferthu codi eich llaw, dim ond ysgwyd 'i off. Beth yw gorchymyn i argraffu rhywbeth at y sgrîn? GYNULLEIDFA: printf. Lexi ROSS: Awesome. Iawn, felly printf. GYNULLEIDFA: Hey, Lexi? [Anghlywadwy]? Lexi ROSS: Cadarn. Felly printf, fel yr ydym wedi gweld yn aml mewn darlithoedd, yw'r gorchymyn i argraffu rhywbeth at y nant allbwn safonol. Felly, rydym am ofyn i'r defnyddiwr i roi mewnbwn a tymheredd yn Celsius. Ac yn awr, yr ydym mewn gwirionedd yn awyddus i gymryd y mewnbwn y maent yn rhoi ni ac yn ei storio mewn newidyn. Felly rydym wedi dysgu ychydig am fathau. A all rhywun gofio pa fath byddem yn ei ddymuno newidyn gyda lle degol ynddo? GYNULLEIDFA: Arnofio. Lexi ROSS: arnawf. Yeah, awesome. Mae'n arnofio. Felly. A sut ydym yn mynd i - awgrym fawr - yn cael y arnofio oddi wrth y defnyddiwr? GYNULLEIDFA: GetFloat. Lexi ROSS: Yeah. Cool. A gallai y defnyddiwr a allai fod yn cael ei olygu ac yn ceisio rhoi i ni rhif negatif, ond nid gadewch i ni boeni am hynny ar gyfer y broblem yn awr. Rydych yn mynd i boeni am hynny ychydig yn fwy ar eich gwaith cartref ar y broblem a osodwyd. Felly, gadewch i ni gymryd yn ganiataol eu rhoi i ni nifer dda, ac yn awr rydym mewn gwirionedd yn cael i drosi bod arnofio o Celsius i Fahrenheit. Felly, gadewch i ni edrych ar ein fformiwla i fyny yma, a gadewch i ni greu amrywiol newydd a galw yn Fahrenheit. Astudiais y sillafu. Mae'n fath o gwallgof, rwy'n gwybod. A gadewch i ni gyfrif ar y drefn o weithrediadau i fath o wneud ei waith yma, ond byddwn yn ei ddefnyddio cromfachau dim ond i fod yn gyfan gwbl verbose ac yn glir. Felly Celsius weithiau 9 wedi'i rannu â 5. Rydw i'n mynd i chwyddo allan ychydig bach fel y gall y ffitio ar un llinell, ond byddaf yn chwyddo i mewn eto ar gyfer y rhai nad ydynt yn gallu gweld, bellach yn y cefn. Mae'n ddrwg gennyf am hynny. Materion cyrchwr Strange. Plus 32. Iawn, oes unrhyw un gennych unrhyw gwestiynau am sut yr wyf yn eu rhoi ar y fformiwla, neu unrhyw faterion â hynny? Yeah. GYNULLEIDFA: A oes angen i ni roi'r printf cyn y fflôt celsius, arnofio Fahrenheit llinellau sgript? Oes ots ym mha drefn y maen nhw i mewn? Lexi ROSS: Felly, y cwestiwn oedd, mae angen i ni printf cyn i ni mewn gwirionedd yn gofyn am y fflôt? Yr ateb yw ein bod yn ei wneud. Y ffordd honno, bod y cyrchwr bod y defnyddiwr yn cael i roi eu Bydd arnofio yn digwydd ar ôl c printiedig mae, dde? Ac mae'n gwneud synnwyr os ydych yn meddwl am rhesymegol, fel eich bod yn gofyn i'r defnyddiwr cwestiwn, ac yna rydych chi'n derbyn ateb. Felly y bydd yn argraffu c, ac wedyn mae 'na cyrchwr, yna bydd y gall y defnyddiwr deipio yn y gwerth, gan y byddwn yn gweld yn nes ymlaen pan fyddwn yn demo. Ydw? GYNULLEIDFA: Pam rydym yn defnyddio fflôt ac nid dwbl? Lexi ROSS: Felly, dwbl, yn y bôn, fel y mae'r enw'n yn awgrymu, yn rhoi i ni ddwywaith y swm o yn fanwl gan fflôt. Ond fel arfer mewn C, yn y cwrs hwn, ar gyfer nifer o rhesymau hyn, rydym yn mynd i ddefnyddio fflotiau. Ac mae hyn yn wir yn yr holl manylder ei angen arnom yn unig ar gyfer math o addasiadau tymheredd sylfaenol. Yn nodweddiadol, dyblau yn fwy ddefnyddir yn yr iaith Java, fflotiau yn fwy cyffredin mewn C. Mae pob hawl, awesome. DAN BRADLEY: Un yn fwy. Lexi ROSS: Un yn fwy. Ydw? GYNULLEIDFA: Ble ydych chi'n rhoi'r Bar Gofod? Fel, [Anghlywadwy] y Bar Gofod [Anghlywadwy]? A yw'n bwysig? Lexi ROSS: O, na. Felly nid yw'n fater. Dylwn mewn gwirionedd wedi rhoi arall gofod yma. Ond beth mae fater yw eich bod yn gyson drwy gydol eich cod. Felly, os ydych yn penderfynu defnyddio un arddull o fylchu, gwnewch yn siwr i ei gadw drwy gydol eich cod cyfan, neu fe allech gael arddull pwyntiau. Felly cysondeb yn allweddol. DAN BRADLEY: Rwy'n credu ei fod yn siarad am y gofod. Lexi ROSS: O, rydych chi'n sôn am y gofod? Erbyn C gwirioneddol? GYNULLEIDFA: Yeah. Lexi ROSS: O, fel bod dim ond ar gyfer edrych, dde? Felly, y ffordd honno pan fyddwn yn rhedeg y cod, os nad oedd gennym y gofod yma, os oedd yn edrych fel hyn, byddai'n rhaid i'r defnyddiwr yn dechrau teipio yn y nifer a fyddai'n gwasgu i fyny i'r dde yn erbyn y colon ar ôl y C, a byddai'n edrych ychydig well os oedd lle. A allwch chi weld bod ychydig yn well ar ôl i ni mewn gwirionedd rhedeg y cod hwn, pan fyddwn yn cael ei orffen. Awesome. Yeah, un cwestiwn arall. GYNULLEIDFA: A oes rhaid i mi roi pwynt degol ar ôl un o'r [Anghlywadwy]? Lexi ROSS: Felly, nid ydych yn ei wneud, oherwydd y drefn gweithrediadau. Felly, oherwydd Fahrenheit eisoes yn arnofio, fel y mae Celsius, nid oes angen i chi yn benodol bwrw unrhyw un o'r rhain rhifau eraill fel arnofio, er bod eraill amgylchiadau, pan fyddwch yn delio â ints, efallai y cewch rhaid i chi roi pwynt yn eglur fwrw fel arnofio. Yeah? GYNULLEIDFA: Yr oeddwn yn meddwl tybed a materion cyfalafu yn gorchmynion hyn fel GetFloat? Lexi ROSS: Yeah, cwestiwn da. Felly, y cwestiwn oedd, yn fater cyfalafu yn gorchmynion fel GetFloat? Yr ateb yw oes, mae'n ei wneud. Felly GetFloat, fel Dan yn disgrifio yn gynharach, llyfrgell swyddogaeth yn y llyfrgell CS50, a cafodd ei ysgrifennu fel cyfalaf G, cyfalaf F. Felly, os nad ydych yn ei ysgrifennu gyda'r rhai llythrennau yno, nid yw'r casglwr yn mynd i ddeall yr hyn gweithredu rydych chi'n cyfeirio ato. Iawn. Yeah? GYNULLEIDFA: A yw'r ddadl dros bob amser yn ddi-rym prif? Lexi ROSS: Yeah, dyna gwestiwn arall wych. Felly y cod yr ydych yn copïo oddi wrth fy gofod camgymeriad wedi dadleuon rhai mwy. Felly, y cwestiwn oedd, yn y ddadl at y prif swyddogaeth bob amser yn ddi-rym, sydd o anghenraid yn golygu dim byd? Yr ateb yw na. Efallai y byddwch yn sylwi bod y cod rydych copïo oddi wrth fy cynharach adolygu oedd yr hyn a allai edrych fel dim byd sy'n gwneud gwir synnwyr ar hyn o bryd, mae rhai * torgoch, argv, argc. Peidiwch â phoeni am hynny am y tro, ond byddwch yn cael gwybod yn ddiweddarach ar maent yn gwneud gwahaniaeth. Ond os nad ydych yn defnyddio y math yna o functionality ychwanegol a byddwch yn dysgu am hynny yn ddiweddarach, ddi-rym yn hollol iawn. Mae pob hawl. Ac mae gennym un cam yn fwy, sef ein bod yn awyddus i mewn gwirionedd yn dangos y defnyddiwr beth yw'r tymheredd trosi yn. Felly, unwaith eto, rydym yn mynd i ddefnyddio printf, a gadewch i ni ddweud f, dim ond am mwyn cysondeb yn. Ac yn awr rydym yn mynd i wneud rhywbeth ychydig yn anodd. Felly, rydym yn mynd i ddefnyddio baner, neu fath arbennig o nodiant, i ddweud printf yn unig argraffu un lle degol. A oes unrhyw un yn digwydd i wybod beth sy'n mynd i edrych hoffi, cyn i mi deipio allan? Yeah? GYNULLEIDFA: f 0.2%? Lexi ROSS: Yeah, yeah. Felly, mewn gwirionedd, mae'n agos iawn. 0.01f am f 0.01%, ac yna mae'n rhaid i chi gofio i gynnwys y ddadl arall i printf, sef y newidyn ei hun, sydd yn n. Un cam olaf. A all rhywun gofio beth sydd yn ein prif swyddogaeth? Yeah, i fyny yno. GYNULLEIDFA: Return? Lexi ROSS: Yn union. Felly, gan fod hyn yn dychwelyd prif int, rydym am hefyd yn dychwelyd yn int. DAN BRADLEY: Canran angen i fod ar yr ochr arall. Lexi ROSS: Iawn. Mae'n ddrwg gennym, guys. Yr oedd hynny'n gamgymeriad. Felly y cant yn dod cyn 0.01. Felly, mae'n 0.01% f. Mae'r rhain yn fath o anodd i'w cofio. Mae llawer o bobl, fel fi, dim ond yn edrych i fyny pryd bynnag y byddwn yn eu defnyddio. Yeah, i fyny yno. GYNULLEIDFA: Pam ei fod yn 0.01 ac nid 0.2 neu 0.1? Lexi ROSS: Nid wyf yn gwybod, mewn gwirionedd. Ydych chi'n gwybod? DAN BRADLEY: Y rheswm ei fod yn 0.01 yn hytrach na 0.02, neu 0.2, neu 0.1, yn eithaf mympwyol i ffordd y mae'r rhaglennydd wreiddiol gynllunio. GYNULLEIDFA: Nid dyna yr wyf yn ei olygu. Nid wyf yn gofyn y rheswm. Reswm [Anghlywadwy] pam. Yr wyf wedi ei ysgrifennu fel 0.2, ac mae'n darparu dwy - DAN BRADLEY: Yeah. Felly roeddem yn unig eisiau un. GYNULLEIDFA: O, Iawn. Felly, gallech 0.01 hynny. DAN BRADLEY: Byddai 0.1 yn ôl pob tebyg hefyd yn gweithio. 0.01 gweithio cystal. Lexi ROSS: O, efallai y bydd 0 yn dangos sero, os mae'n llai nag un. DAN BRADLEY: Yeah, yr wyf yn meddwl bod yn iawn. Felly byddai'r 0.01 yn dangos sero os nad oes ganddo unrhyw beth fyddai'n mynd yno yn naturiol. Felly, os ydych yn, dyweder, roi 100 ar gyfer Celsius, byddai'n dod allan i 212 fel arfer yn Fahrenheit, fel 212 yn union. Os oes gennych y 0.01, bydd yn dangos 212.0, fel y hytrach na dim ond 212. Lexi ROSS: Mae hynny'n iawn. Felly ddarllen yn y bôn yn dweud printf, argraffu pwynt degol, ac argraffu 0 os oes angen. Os na, argraffwch y sefyllfa degol cyntaf. DAN BRADLEY: A byddwn yn archwilio rhai o hyn pan fyddwn ni'n mewn gwirionedd yn rhedeg y cod. Lexi ROSS: Yeah. GYNULLEIDFA: Felly, yr wyf yn rhoi 0.1. Mae'n dal i argraffu ei sero. DAN BRADLEY: Mae'n dal i argraffu ei sero? GYNULLEIDFA: Yeah. DAN BRADLEY: Hm, iawn. Lexi ROSS: Cool. Mae pob hawl. Mwy o gwestiynau am y cod hwn cyn i mi lunio a'i redeg? Oes unrhyw un yn gweld unrhyw bugs yma, yn gyntaf oll? Unrhyw un yn gweld rhywbeth a ddylai fod yma? Pe bai hyn yn eich set problem, beth fyddai yma nad yw mae ar hyn o bryd? Yeah, gwych. Felly, nid oeddwn yn cynnwys sylwadau gan fy mod yn eu darparu ar lafar, ond os wyf yn ysgrifennu hyn mewn set problem, byddwn bendant eisiau rhoi sylwadau i ddangos yr hyn yr wyf i'n wneud, yn ei hanfod, yn y rhaglen. A byddwch fath o gael blas ar ei gyfer, wrth i chi symud drwy y semester, y swm cywir o sylwadau. Nid ydych am fod yn rhy amleiriog a llinellau rhoi a llinellau o sylwadau ar gyfer pob un o'ch linellau o god, ond rydych Nid oes ychwaith am beidio â bod yn ddigon verbose a gadael y darllenydd i geisio chyfrif i maes beth y mae'r Heck eich cod yn ei wneud. Iawn, oer. Gadewch i ni geisio rhedeg y cod hwn. Iawn, dw i'n mynd i chwyddo allan ychydig. Cool. Felly, byddwch yn sylwi bod yna botwm Chwarae yma. Gadewch i ni cliciwch Chwarae. Felly, byddwch yn sylwi yma, yn union fel yn y fanyleb ar y broblem gosod, mae. / a.out. a.out yw enw'r gweithredadwy deuaidd, sy'n gair hir am ychydig o ffeil yn cynnwys cod deuaidd sy'n eich cyfrifiadur yn rhedeg mewn gwirionedd. Felly, wrth i ni ddisgwyl, mae gennym C yma. Felly ffoniwch allan yn rhif. GYNULLEIDFA: 23. Lexi ROSS: 23. DAN BRADLEY: Eich rhaglen yn cymryd gormod o amser i'w rhedeg. Dim ond yn rhedeg eto. Lexi ROSS: O, fy ddrwg. Iawn. Mannau yn picky weithiau. Mae eisiau i chi feddwl ar eich traed. Iawn, 23. Awesome. Ydy pawb yn credu hyn? Cool, oherwydd y mae'n gweithio. Iawn. Gadewch i ni geisio ychydig mwy. Gadewch i ni geisio achos ymyl yma. Yn gwyddoniaeth gyfrifiadurol, pan fyddwn yn sôn am achosion ymyl, rydym yn golygu achosion ar gyfer eich rhaglen i redeg sy'n fath o ar y iawn ymylon o fewnbynnau rhesymol neu y corneli prawf penodol o y rhesymeg yn eich rhaglen, ac mae hyn yn gwneud mwy o synnwyr pan fyddwn yn wneud mwy o raglenni cymhleth. Gadewch i ni geisio 0. Awesome. Rydym i gyd yn gwybod hyn. Cool. Unrhyw gwestiynau mwy o wybodaeth am hyn cyn i mi symud ar y rhaglen nesaf? Mae pob hawl, awesome. Felly nawr, rydyn ni'n mynd i - ydych chi eisiau dim ond yn defnyddio fy nghyfrifiadur? DAN BRADLEY: Yeah, mae hynny'n ddigon hawdd. Mae pob hawl, felly roedd mynd i fynd a siarad am wneud canrannau. Felly, rydym yn y bôn, yn yr ymarfer hwn bach nesaf, mynd i'r cymryd dau fewnbwn cyfanrif gan y defnyddiwr, yn gobeithio am nad ydynt yn negyddol rhifiadur a'r enwadur gadarnhaol, ac yn y bôn eu rhannu ac allbynnu beth sy'n dod allan fel canran. Felly, yr ydym am iddo ond yn derbyn nad ydynt yn negyddol rhifiaduron ac ond yn derbyn enwaduron cadarnhaol, ac yn dal i ofyn ar gyfer rhai newydd os nad yw wedi gotten yr hyn y mae ei eisiau. Mae pob hawl? Felly roi'r cynnig arni. Lexi ROSS: Oh yeah, ydych chi eisiau i wneud y - oh, efallai y dylai pobl copïo fy cod. DAN BRADLEY: Yeah. Lexi ROSS: [Anghlywadwy] Mannau. GYNULLEIDFA: Mae gennyf gwestiwn. Os wyf yn defnyddio Mannau ac yr wyf am arbed [Anghlywadwy] y Fahrenheit trosi, ydw i'n ei gadw ac yna gwneud newydd - Lexi ROSS: Gallai Rydym yn unig yn gwneud Gofod newydd, neu efallai dim ond eisiau ei chopïo a'i gludo i ffeil destun neu rhywbeth er mwyn i chi ei gael. DAN BRADLEY: 'n annhymerus' jyst newid fy enw. Lexi ROSS: Felly, Fi jyst achub yr adolygiad diweddaraf o tofahrenheit.c, felly os byddwch yn mynd i aaaa Lexis Beryl Ross, gallwch fynd i mewn ac yn yr un cod diweddaraf, ac yna dechrau ar yr un newydd, yr wyf yn meddwl Dan yn mynd i ddarparu rhai cod sgerbwd ar gyfer ogystal. Iawn. DAN BRADLEY: Mae'r diwygiad diweddaraf sydd gennyf ar fy, felly mae'n ar frig y tro hwn, yw Diwygiad 4, a bydd yn cael yr hyn y mae angen i chi ddechrau arni. Lexi ROSS: Bydd pob hawl, ac yr wyf yn yr un i mi hefyd. DAN BRADLEY: pob hawl. Rwy'n credu ein bod yn mynd i dim ond dechrau mynd dros hyn, os unrhyw un yn sydd â diddordeb. Lexi ROSS: Rydym ni i gyd ddiddordeb. DAN BRADLEY: Rydym yn mynd i ddechrau yn union drwy ddatgan rhai newidynnau. Felly mae gennym rhifiadur, ac er mwyn yn awr, rwy'n mynd i jyst dechrau gyda gwerth -1, ac yna byddaf yn sefydlu dolen do-gyfnod. Er - felly, pryd yr wyf am iddo dolen? Pryd ydw i'n eisiau iddo ddal i ofyn - ie? GYNULLEIDFA: Pan fydd llai na neu'n hafal i sero. DAN BRADLEY: Pam na all fod yn gyfartal i sero? GYNULLEIDFA: [Anghlywadwy]. DAN BRADLEY: Yeah. Felly ar gyfer y rhifiadur, dim ond tra bod y rhifiadur yn llai na sero. A yw hynny'n gwneud synnwyr i bobl? Rydym yn cadw dolennu tra bod y rhifiadur yn llai na sero, rydym yn dal i ofyn am fewnbwn newydd, a chadw mynnu eu bod yn mewnbwn pethau newydd. Felly, 'n annhymerus' jyst yn cael ychydig printf yma, heb fod yn negyddol NUM -. Ac yna rydym yn ei wneud yr un peth ag o'r blaen, ac eithrio rydym yn gwneud GetInt, dim ond oherwydd ein bod eisiau ei wneud fel canrannau o ints. Felly rhifiadur = GetInt. Iawn, yn awr ychydig o bethau. A oes angen hyn -1 yma? GYNULLEIDFA: [Anghlywadwy]. DAN BRADLEY: Rhif Pam ddim? GYNULLEIDFA: Oherwydd eich bod yn cael gwerth ar hap gan y defnyddiwr. DAN BRADLEY: Yn union. Ond ydw i eisiau i gael y datganiad yma? Ydw. Pam? GYNULLEIDFA: Mae'n rhaid i chi ddod o hyd i'r tu allan i'r ddolen. Fel arall, nid ydych chi'n mynd i gael y newidyn ar gyfer y gweddill y rhaglen. DAN BRADLEY: Yn union. Scope. Sweet. A yw hynny'n gwneud synnwyr i bawb? GYNULLEIDFA: Allwch chi ddweud bod amser un yn fwy? DAN BRADLEY: Iawn. Felly, pe bawn yn datgan y rhifiadur hwn y tu mewn i'r ddolen, os Cefais hwn yn lle rhifiadur rhifiadur yn int, ac yr wyf yn cael gwared o hyn yn gyfan gwbl, Byddai rhifiadur yn diflannu. Ni fyddai'n bodoli y tu allan i'r cylch, oherwydd mae popeth o fewn cwmpas y braces cyrliog. Gwneud synnwyr? Iawn. Felly, ar gyfer enwadur, rydym yn gwneud rhywbeth eithaf tebyg, int enwadur = - ac nid wyf oes angen y yn hafal - wneud, ac ar gyfer y tra yn yr achos hwn, beth ddylwn i ei eisiau? Pa gyflwr ydw i am i fod eto ddolen ar? GYNULLEIDFA: Llai na neu'n hafal i 0. DAN BRADLEY: Llai na neu'n hafal i 0. Enwadur <= 0. Peidiwch ag anghofio eich hanner colon, plant. Felly, rydym yn gwneud yr un peth ag o'r blaen, printf cadarnhaol enwadur, ac rydym yn cael int oddi yma. Dyna ni. GetInt. Iawn. Ac yna yn y diwedd, rydym am i argraffu rhai canran. Felly, i wneud hyn, dylai hyn y mae ein llinyn yn edrych? printf. Unrhyw syniadau eraill o'r hyn y gallaf ei wneud yma? Yeah? GYNULLEIDFA: Efallai 0.2% [Anghlywadwy]. DAN BRADLEY: Yep. Iawn. Byddaf yn dechrau gyda'r peth cyntaf,%% .02%, dyfyniadau, coma. Ac yr wyf i'n mynd i daflu llinell newydd yma, dim ond am fy mod fel llinellau newydd pan oeddwn i'n gwneud pethau. Pa fath o fynegiant mathemategol gennyf yma? GYNULLEIDFA: Cromfachau a arnofio. DAN BRADLEY: Da. Pam ydw i eisiau ei gael yn arnofio? GYNULLEIDFA: [Anghlywadwy]. DAN BRADLEY: Da, yn dda. Arnofio. GYNULLEIDFA: Rhifiadur. DAN BRADLEY: Rhifiadur? Iawn, felly yr wyf yn rhifiadur arnofio. GYNULLEIDFA: wedi ei rannu - DAN BRADLEY: wedi ei rannu â? GYNULLEIDFA: Enwadur. DAN BRADLEY: Ydw i'n wneud enwadur, neu ddylwn i ei wneud arnofio enwadur? GYNULLEIDFA: Dim ond enwadur. DAN BRADLEY: Iawn. GYNULLEIDFA: A gallwch luosi hynny erbyn 100. DAN BRADLEY: Ac yr wyf yn lluoswch hynny 100. GYNULLEIDFA: Ac yna cromfachau o gwmpas yr ymadrodd cyfan. DAN BRADLEY: Yep. Iawn. Edrych yn dda? Gadewch i ni roi cynnig arni. -50. Da, 50. 0, a 100, 50%. Mae'n gweithio allan yn union fel rydym eisiau. A yw'r cod hwn yn gwneud synnwyr i bobl? Rydw i'n mynd i achub fel y gallwch gael copi ohono. Yeah? GYNULLEIDFA: Pam na wnewch chi angen i chi roi [Anghlywadwy]? DAN BRADLEY: Ble? GYNULLEIDFA: Fel, pan fyddwch yn dweud enwadur yn dychwelyd [Anghlywadwy]. DAN BRADLEY: Pan wyf wedi bod yma? Pam y byddai gennyf int cyn iddo? GYNULLEIDFA: Oherwydd bod y llall wedi int ger ei fron. DAN BRADLEY: Wel, fel nad oedd mewn dolen, dde? Felly, yr wyf yn datgan y enwadur int uwchben y ddolen, ac nid wyf yn ei gael yn y ddolen oherwydd byddwn yn datgan ei fod yn griw o weithiau, ac na fyddai'n mewn gwirionedd yn cario drosodd i unrhyw le arall yn y rhaglen. Lexi ROSS: Yeah, y peth pwysig i'w gofio yw bod newidynnau ond angen i gael ei ddatgan unwaith. Felly dychmygwch mae fel cyflwyno amrywiol newydd i mewn i'r byd trwy ei alw yn int neu arnofio neu whatnot, a unwaith y bydd wedi datgan, y cyfan sydd angen ei wneud i newid y mae'n dim ond ei alw gan ei enw: enwadur, neu x, neu y. Dim ond angen i chi mewn gwirionedd yn ei alw'n int unwaith yn unig. DAN BRADLEY: Yeah. GYNULLEIDFA: Allwch chi egluro'r gwahaniaeth rhwng% d f% a ac os ydych chi erioed wedi datgan amrywiol fel degolyn? DAN BRADLEY:% d Felly a f% yn y fan hon? Lexi ROSS: Felly d gwirionedd yn cyfeirio at ddim ond digid, nid degol, sy'n fath o ddryslyd. Does dim math data gwirioneddol o'r enw degol, a phan fyddwch eisiau argraffu allan int, rydych yn cyfeirio ato fel d%, neu %-Beth bynnag-d. F ar gyfer arnofio, a byddech yn meddwl ei fod fyddai i, ond mewn gwirionedd mae'n d ar gyfer int. DAN BRADLEY: Yep? GYNULLEIDFA: Felly, yn y rhaglen arall, pam na wnaethom ni dim ond gwneud yr un peth pan rydych yn ei ddweud Fahrenheit? Pam na wnaethom ni roi, fel -? DAN BRADLEY: Yn y gwaelod yma? Gallech gael. Byddai wedi bod yn gwbl gyfreithlon. Rwy'n hoffi eu gwneud yn y modd hwn, mae pobl eraill yn hoffi wahanu ag ef allan i'r gwahanol linellau o god. Naill ffordd neu'r llall yn gweithio iawn. Beth sydd i fyny? GYNULLEIDFA: Allwch chi esbonio beth y%% [Anghlywadwy]? DAN BRADLEY: Iawn, felly mae'r cant, cant. Iawn, yr wyf yn mynd i fynd dros hyn. Mae'r y cant cyntaf yw cymeriad dianc, a 'i jyst dweud nad y peth y tu ôl i hyn mewn gwirionedd cod. Felly, mae hyn y cant yn gyntaf, i'r dde, 0.02 y% f, i gyd o 0.02% y rhai f yn golygu rhywbeth i printf fel swyddogaeth. %%, Fi jyst eisiau iddo mewn gwirionedd dim ond argraffu y cant arwydd. Felly, nid wyf ddim yn dweud unrhyw beth pwysig y tu ôl iddo. Im 'jyst yn dweud bod' na arwydd y cant y tu ôl iddo. Os gwelwch yn dda argraffu arwydd y cant. Felly y cant, yna y cant arall. GYNULLEIDFA: Allwch chi ddangos yr hyn y byddai'n edrych yn debyg os oes gennych arnofio yn seiliedig ar linell arall? DAN BRADLEY: O ie, yn sicr. Felly, rwy'n gofyn i ddangos beth fyddai edrych fel pe bawn wedi hyn, rhifiadur arnofio hyn i gyd math, ar linell arall. Y cant arnofio Felly = - a byddwn yn cael gwared o hyn a dim ond rhoi y cant. Ac mae'n gwneud yr un peth yn union, Fi jyst cael newidyn arall. GYNULLEIDFA: [Anghlywadwy]. DAN BRADLEY: Sgroliwch i lawr i beth? GYNULLEIDFA: Felly y gallaf weld [Anghlywadwy]. DAN BRADLEY: Ni Beth allwch chi ei weld? GYNULLEIDFA: Mae'n ddrwg gennyf, yr oeddwn [Anghlywadwy]. DAN BRADLEY: Yeah. GYNULLEIDFA: Felly, os ydym yn lle'r cymeriad dianc, cymerwn ein bod eisiau i gael arwydd doler yn lle hynny, dim ond ar gyfer enghraifft, arwydd doler y tu ôl y cant? DAN BRADLEY: Na. Mae'n dim ond doler, dim ond un arwydd doler, oherwydd bod doler Nid arwydd yn golygu unrhyw beth i printf. Y cwestiwn oedd, a oes angen i mi gael gymeriad dianc ar gyfer symbolau fel arwyddion ddoler? GYNULLEIDFA: math Felly, wrth cysylltiedig, a oes unrhyw achosion eraill y dylem wybod pryd rhywbeth fel y cant Gallai arwydd golygu rhywbeth [Anghlywadwy]? Lexi ROSS: Ydw. Nid o reidrwydd yr arwydd y cant, ond mae'r ôl-slaes, gweler sut yr ydym wedi diwedd adwaith yma? Lets 'ddeud yr ydym mewn gwirionedd yn awyddus i argraffu adlach, byddem wedi i ddianc hynny - ac mae hyn yn mynd i swnio ddryslyd - arall slaes. Felly, os oeddem am argraffu \ \, byddem yn yn rhaid i deipio hynny, neu am fwy o slaes, un arall dianc. Ac un arall, os ydym am i argraffu dyfyniad - felly yn y bôn, unrhyw beth y math hwnnw o yn dynodi rhywbeth arbennig o fewn llinyn, rydym eisiau i ddianc. Felly, gadewch i ni ddweud ein bod mewn gwirionedd yn awyddus i gael dyfynbris yma, byddem yn eisiau gwneud \ ". GYNULLEIDFA: Felly mae fel arfer yn slaes? DAN BRADLEY: Mae'n fel arfer yn slaes. Lexi ROSS: Yeah. Am ryw reswm yn y fan hon, mae'n arwydd y cant. GYNULLEIDFA: [Anghlywadwy]? DAN BRADLEY: Mae'r guy? Mae hyn yn unig i ddweud, y peth sy'n cael ei rannu yma yw mynd i gael ei drin fel fflôt er mwyn yr adran. Felly, yn yr achos o 50 wedi'i rannu â 100, os nad oedd gennyf y arnofio yno, byddai'n dim ond fod yn 0. Dyna'r cyfan a fyddai'n dod allan, gan fod 50 wedi'i rannu gan 100, os nad ydych yn cynnwys unrhyw ddegolion, yw 0. - a phopeth ar ôl y degol yn cael ei gwtogi yn unig i ffwrdd. GYNULLEIDFA: Um, pam nad ydym yn ei roi gerbron enwadur hefyd? DAN BRADLEY: Felly y rheswm nad ydym yn ei roi o flaen enwadur yw oherwydd pan fyddwch yn rhannu rhywbeth yn ôl cyfanrif, mae'n gweithio jyst ddirwya. Mae cael nifer fwy ar y gwaelod nid yw'n newid unrhyw beth. Gallwch rannu gan gyfanrifau jyst ddirwya. Mae'n nid yn unig yn wirioneddol bwysig. Fe allech chi, ni fyddai newid unrhyw beth. GYNULLEIDFA: Felly, os ydych eisiau dri lle degol, byddai byddwch yn rhoi y cant 0.03? DAN BRADLEY: Yep. Byddech yn rhoi% 0.03 os ydych chi eisiau dri lle degol. GYNULLEIDFA: A gwneud gorchmynion, beth yw'r gwahaniaeth rhwng hynny a dim ond gwneud tra ar y top? DAN BRADLEY: Felly do-tra yn erbyn dolen tra bod dau gorchmynion yn weddol debyg. Yr unig wahaniaeth yw eich bod yn rhedeg y cod unwaith, byddwch yn rhedeg y cod tu mewn i un y ddolen amser cyn gwneud unrhyw siec go iawn. Felly, mae hefyd yn rheswm y gallaf ei ddweud enwadur heb roi ei fod yn rhif. Felly, os wyf yn dweud enwadur int, ac yna ychydig (enwadur <= 0), byth y gallai hyd yn oed rhedeg y tu mewn cod. Bydd yn gwneud y gwiriad cyn - hynny yma. Felly, os wyf yn cael y ddolen tra yma, byddai'n rhaid i mi gael enwadur hafal, dyweder, -2 neu ryw nifer lai na neu'n hafal i 0 felly byddai'n mewn gwirionedd yn ceisio rhedeg y cod y tu mewn yn gyntaf. Felly, yn gyffredinol, yr ydych am ddefnyddio dolen do-tra yn hytrach na dolen tra pan fyddwch yn gofyn am fewnbwn y defnyddiwr oherwydd redeg y cod unwaith, yn gofyn am rywbeth y defnyddiwr fydd yn rhoi i chi yn gyffredinol eich ateb gorau, yn hytrach na i ddim ond ymddiried beth bynnag yr ydych ei roi i ddechrau. GYNULLEIDFA: A wneud yn cael ei ddilyn bob amser gan ychydig. DAN BRADLEY: A oes yn cael ei ddilyn gan rai darn o god eich bod yn eisiau i weithredu, ac yna er bod rhai cyflwr. Lexi ROSS: Meddyliwch am y peth fel un math o orchymyn torri i fyny yn ddwy ran. Mae'n do-tra, nid fel dyma ei wneud, ac yna rwy'n yn mynd i ychwanegu amser, mai dim ond do-gyfnod. GYNULLEIDFA: Yr wyf yn deall y rheswm pam eich bod yn defnyddio'r dau arwydd y cant, ond a allwch esbonio i mi pam mae'n rhaid i ni yn cael y [Anghlywadwy]? DAN BRADLEY: Iawn, felly mae'r un arwydd canran yn unig yw dweud printf, dyma gorchymyn yr wyf am i chi llenwi â rhai rhif. Felly, yr wyf am i chi ei lenwi gyda dau le degol a arnofio, a byddwch yn dod o hyd i'r fflôt ar ddiwedd y gorchymyn, mae'n ydyn cant. Ydy hynny'n gwneud synnwyr? GYNULLEIDFA: Yep. DAN BRADLEY: Iawn. GYNULLEIDFA: A oes rhywbeth am y ddolen do-tra bod os nad yw'r cyflwr yn cael ei gyflawni, os ydych yn cael rhif negatif ar gyfer eich rhifiadur, bydd yn jyst cadw Bydd gofyn ac yn parhau i ofyn y defnyddiwr? DAN BRADLEY: Yeah. Felly, os nad yw cyflwr tra yn cael ei gyflawni ar ddiwedd y y yn-tra, bydd yn rhedeg yn ôl i'r man cychwyn. Mae'n dim ond dolen. Felly, mae fel dolen tra nad yw'r cyflwr wedi bod yn cyflawni ar. 'I jyst yn rhedeg unwaith eto. Yeah. GYNULLEIDFA: Felly, os ydych chi'n gwneud hyn, gallwch chi, am eich amser, rhoi dau amod i mewn? DAN BRADLEY: Gallwch. Mae'n dibynnu beth rydych chi'n gofyn. Felly, gallwch roi dau amod mewn cylch tra os oes gennych beth i gyd o fewn rhyw fath o gweithredydd Boole, sy'n swnio hyll, ond yn y bôn y enwadur yn llai na neu'n cyfartal i sero, naill ai yn dychwelyd yn wir neu'n anwir, dde? Mae'n naill ai yn llai na neu'n hafal i sero neu beidio. Felly, gallwch chi ei wneud gweithredwyr Boolean eraill y bydd hynny'n dweud wrth mae hyn hefyd yn wir neu er bod hyn hefyd yn ffug. Felly mae'n pethau fel a rhifiadur yn fwy na sero, dde? Dyna gofyn, bydd hyn ond yn ddolen tra enwadur yn llai na sero a bod gennych rhifiadur cadarnhaol. GYNULLEIDFA: A ydych yn gwneud y ddau a Rhaglenni, dde? DAN BRADLEY: Two a Rhaglenni. Lexi ROSS: Byddwn yn ymdrin â hynny yn ddiweddarach. GYNULLEIDFA: Beth os nad yw rhywun yn rhoi mewn modd cadarnhaol enwadur? Os maent yn ei roi mewn rhifiadur negyddol, allwch chi hannog i, dyweder, roi mewn rhifiadur heb fod yn negyddol ac mae ganddynt orchymyn am hynny? DAN BRADLEY: Gallech. GYNULLEIDFA: Ar hyn o bryd 'i jyst yn dweud nad ydynt yn negyddol rhifiadur. Beth fyddai yn cael ei ddefnyddio ar gyfer hynny? DAN BRADLEY: Felly, byddech yn cael os yw cyflwr, felly os ydych chi'n rhifiadur yn llai na sero. Lexi ROSS: Byddech yn ôl pob tebyg dim ond eisiau i dorri i fyny i fwy camau, dde? Felly, y tro cyntaf maent yn ei roi yn y mewnbwn, byddem yn dweud yn rhoi ni rhifiadur neu whatnot. Ac yna os ydynt yn gwneud y peth anghywir, gallai hyn fod yn wir am ddolen tra, yn hytrach na do-gyfnod, gan fod gennym y tro cyntaf mae gennym y GetInt, ac yna tra bod y mewnbwn yn ddrwg, rydym yn dal i ofyn iddynt am fewnbwn pellach gyda math gwahanol o destun, nid fel 'na oedd yn gweithio neu roi i ni nad ydynt yn negyddol rhifiadur yn lle hynny, y math yna o beth. DAN BRADLEY: Yeah? GYNULLEIDFA: Sut ydych chi'n glir y pethau y [Anghlywadwy] y derfynell? Lexi ROSS: Bod yn glir. DAN BRADLEY: Yeah, ni allwch deipio i mewn iddo. Lexi ROSS: Mewn gwirionedd, nid yw hyn yn terfynell go iawn. Y cwestiwn oedd sut yr ydych yn glir bod pethau i lawr yno? Yr ateb yw nad yw'n derfynfa go iawn, ond gadewch i ni ddweud eich bod mewn terfynell go iawn. Glir. O, mae'n cath. DAN BRADLEY: [Anghlywadwy]? Mae'n bod un, dde? Lexi ROSS: Na, mae hynny'n fy holl stwff. DAN BRADLEY: [Anghlywadwy]. Lexi ROSS: Dyna ni. DAN BRADLEY: Yeah? GYNULLEIDFA: A yw'r gwaith clir os oes gennych - fel, dyweder i chi redeg rhaglen [Anghlywadwy] ac mae'n gofyn nad ydych am rywbeth, ac rydych yn dymuno gwneud hynny. Sut ydych chi'n - DAN BRADLEY: Rheoli + C? Lexi ROSS: Yeah. Felly, os ydych yn rhedeg rhaglen ac nad yw rhywbeth yn mynd y ffordd yr ydych am iddo ac nid oes ond eisiau gadael y cyfan rhaglen, Control + C. Hyd yn oed os ydych ar Mac na, Apple + C, Control + C. GYNULLEIDFA: A wnaethoch chi gael y fersiwn cywir yn y adolygu yn eich proffil? DAN BRADLEY: Rwy'n credu ei fod yn arbed, ynte? Yeah. Lexi ROSS: Mae hyn yn y gofod. Yeah. Rwy'n credu ei fod Adolygu 11. DAN BRADLEY: Yeah? GYNULLEIDFA: A yw C yn gwneud unrhyw ragdybiaethau am yr hyn y amrywiol yw os ydych yn diffinio amrywiol, ond nid ydynt yn neilltuo unrhyw beth ar unwaith? DAN BRADLEY: Felly bydd dim ond yn derbyn ints i mewn i'r fan a'r lle. Felly, os ydych yn ei ddatgan - GYNULLEIDFA: Os wyf yn jyst ddim yn int enwadur hanner colon, a yw'n cymryd yn ganiataol ei bod yn hafal i sero neu unrhyw nifer -? DAN BRADLEY: Na. Felly, os nad ydych yn aseinio, dyweder, int enwadur i unrhyw werth, Gallai fod yn unrhyw beth. Mae'n cof hen a oedd yn y lleoliad. Felly, gallai fod yn negyddol 2 biliwn, gallai fod yn gadarnhaol Roedd 2 biliwn, a gall fod yn unrhyw le yn y canol. Felly os ydych chi'n mewn gwirionedd yn rhedeg pethau, gwnewch yn siŵr eich bod yn rhoi gwerth ariannol ar y newidynnau. Mae hyn, nid oes ots oherwydd ein bod yn syth bennu gwerth, ond yn gyffredinol, yeah. Unrhyw gwestiynau eraill? Lexi ROSS: Gallwn hefyd jyst yn cymryd cwestiynau cyffredinol ar hyn o pwynt ar ddeunydd darlithoedd, deunydd set p, unrhyw beth rydych chi wedi bod yn meddwl am, mae hwn yn amser da i ofyn rhai. GYNULLEIDFA: Felly, yn y walkthroughs, Zamyla am y swyddogaeth rownd. A fyddech chi'n meddwl ymhelaethu ar sut i weithredu hynny? Lexi ROSS: Cadarn, sut i weithredu hynny? GYNULLEIDFA: Dywedodd ei bod yn grwn. Lexi ROSS: Oh yeah. Felly, dim ond felly rydym i gyd yn cael yr eirfa a'r un pethau, teclyn sydd yn gyffredinol yn golygu mewn gwirionedd yn ysgrifennu o'r dechrau. Ac felly nid wyf yn credu ei bod yn siarad am fath o ysgrifennu y swyddogaeth rownd. Mae hi fwy na thebyg yn golygu yn union sut i'w ddefnyddio. Gweithredu yn golygu fath o fel creu. Felly, yn gyffredinol, adeg pan ydym am ddefnyddio'r swyddogaeth rownd yw fy mod golygu, didoli, er enghraifft, os ydych chi am rownd. Allwch chi roi i mi cyd-destun ychydig yn fwy fel yr hyn y mae'r broblem oedd? GYNULLEIDFA: Er mwyn osgoi imprecisions o degolion drwy eu gwneud yn arnofio. Lexi ROSS: Yeah. Felly, y mater gyda fflotiau ein bod wedi fath o ato yw oherwydd y ffordd y maent yn cael eu storio yn y peiriant, nad ydynt yn 100% union yn y ffordd y byddech yn ei feddwl byddai eich cyfrifiannell eu storio. Mae'n anodd i mi i ddangos esiampl heb wybod beth y cyd-destun oedd o. Nid wyf yn gwybod, gallwch feddwl am rywbeth, Dan? DAN BRADLEY: Felly, os ydych chi'n gofyn am, dyweder, nifer y mwy na 10 a ydych yn ei ddefnyddio fflotiau, ac rydych yn ychwanegu un i arnofio bob amser, bydd weithiau aros nes eich bod i wedi gotten i 12 cyn bydd yn dweud hyn mewn gwirionedd yn nifer fwy na 10. Fflotiau rai materion difrifol yn unig rhwng y 32eg a lle 33eg degol bydd hynny'n mynd, felly y gallai 9.9999999, neu gallai fod yn 10.0000001, dde? Nid yw'n wir yn gwahaniaethu rhwng y ddau, felly os ydych chi'n aros am bethau yn fwy na neu'n hafal i 10, gallech Nid yw cyrraedd yno ar yr hyn eich barn chi y fersiwn 10fed. Efallai y byddwch yn cyrraedd yno yn y 11eg. Lexi ROSS: Yn y bôn, yeah. Pan fyddwch chi'n dolennu dros lawer iawn o arnofio, dyna pryd y imprecisions digwydd. GYNULLEIDFA: Credaf, felly yn y bôn, mae fel ar y p gosod, mae am i chi i orffen y gwerth arnofio, ac os ydych yn rhoi 4.24 am y swm o newid ei angen arnoch yn ôl, os ydych yn unig yn ei wneud gwaith 100, bydd yn mewn gwirionedd yn newid i mewn i 423 - DAN BRADLEY: Weithiau, yeah. GYNULLEIDFA: Felly yr wyf yn credu ei fod yn union fel, sut rydych chi'n defnyddio'r rownd swyddogaeth yn y cod gwirioneddol i'w wneud felly nad yw'n gwneud hynny? DAN BRADLEY: Felly, os ydych yn talgrynnu 424 drwy luosi ei gan 100 ac yn gwneud i mewn i cyfanrif, bydd weithiau ei gwneud yn 423 oherwydd y anfanyldeb. Ac felly pethau y gallwch chi ei wneud yw dim ond ychwanegu 0.0000003. GYNULLEIDFA: Ond yr wyf yn meddwl, mewn gwirionedd, maent am i ni ddefnyddio'r rownd. DAN BRADLEY: Mae'r swyddogaeth crwn? Mae'n debyg bod swyddogaeth mathemateg, rhywbeth yn y llyfrgell mathemateg. GYNULLEIDFA: # cynnwys mathemateg. DAN BRADLEY: # cynnwys , ac mae mae'n debyg rownd swyddogaeth. GYNULLEIDFA: Yn union fel rownd () -? Lexi ROSS: Yn y bôn, oherwydd eich bod am i talgrynnu i y cant agosaf. DAN BRADLEY: Gadewch i ni dynnu i fyny y tudalennau dyn. Felly arf defnyddiol, os nad ydych yn gwybod - fyddwch yn tynnu i fyny 'r terminal - yw os byddwch yn mynd i mathemateg dyn. Lexi ROSS: Cool. Felly gallwch weld, felly y mae dyn yn fyr am beidio â llaw, dyn, a mae'n caniatáu i chi chwilio am fwy o wybodaeth am unrhyw roddwyd swyddogaeth neu lyfrgell y gallech fod yn ymdrin â hwy. Felly yr wyf yn teipio yn unig mewn mathemateg dyn. Gadewch i mi chwyddo i mewn DAN BRADLEY: Gallwn geisio rownd dyn, hefyd. Lexi ROSS: Cadarn. DAN BRADLEY: A fydd hyn yn rhestru allan - Bydd mathemateg dyn restru popeth sydd yn y llyfrgell math, y byddwn yn cynnwys. Yeah, rydym hefyd wedi rownd. Lexi ROSS: Felly, Fi jyst yn gwneud rownd dyn. Gallwch weld yma yn y crynodeb, mae'n dweud # cynnwys , felly dyna fath o fel cs50.h, stdio.h. Ac mae'n edrych fel ei fod yn gorlwytho mewn gwirionedd, sy'n golygu mae'n cymryd gwahanol fathau o ddadleuon, fel y gallwch o amgylch dyblau neu fflotiau. DAN BRADLEY: Rownd yn erbyn roundf. Lexi ROSS: Roundf. Oedd Zamyla sôn am roundf yn erbyn rownd? GYNULLEIDFA: Yn y walkthrough, dim ond rownd (). DAN BRADLEY: Iawn, felly mae hi fwy na thebyg yn defnyddio'r dwbl, Yna, yn hytrach na arnofio. Iawn, felly byddech yn lluosi gyda 100 ac yna o gwmpas, ac byddech yn cael y rhif agosaf ato, dwi'n meddwl. Lexi ROSS: Felly y rownd swyddogaeth yn dychwelyd yr integryn gwerth agosaf at x talgrynnu hanner ffordd achosion i ffwrdd o 0, waeth beth yw cyfeiriad dalgrynnu ar hyn o bryd. Felly y bôn, byddech am i ddim ond o amgylch unwaith y byddwch chi yn gwerth cyfanrif, er mwyn i chi luosi gan 100 ac yna rownd. A yw hynny'n gwneud mwy o synnwyr? GYNULLEIDFA: Er mwyn defnyddio'r swyddogaeth honno mewn ffeil C, mae angen i chi rhoi arnofio crwn, fel os yw eich newidyn cael ei alw'n q, a ydych rhoi rownd (arnofio) q, ac yna cromfachau, neu gall 'ch jyst yn rhoi crwn, ac q yna mewn cromfachau? DAN BRADLEY: Felly, os ydych yn ceisio defnyddio'r swyddogaeth hon mewn gwirionedd, byddech yn cymryd bod q, yn cael ei q fflôt, neu sut y mae'n cael ei ddatgan? GYNULLEIDFA: Q yn arnofio. DAN BRADLEY: Felly, os q yn cael ei ddatgan fel fflôt, byddech dim ond yn cymryd crwn, ac yna ei rhoi q. Efallai y bydd rhaid i chi ddatgan fel dwbl yn yr achos hwn. Lexi ROSS: Yeah, oni bai eich bod am ei ddefnyddio roundf. GYNULLEIDFA: gallwn ddefnyddio roundf, ac yna q mewn dyfynodau? DAN BRADLEY: Nac oes, mewn dyfynodau, dim ond q. GYNULLEIDFA: Mae'n ddrwg gennyf, nid mewn dyfynbrisiau, yn y cromfachau. DAN BRADLEY: Yn y parentheses, yeah. Lexi ROSS: Mae'n ddrwg gennym a oedd yn ychydig yn ddryslyd. Unrhyw mwy o gwestiynau? DAN BRADLEY: Yeah? GYNULLEIDFA: rowndiau unig Felly rownd i gyfanrifau? Lexi ROSS: Ydw. DAN BRADLEY: Yeah, rowndiau unig rownd i gyfanrifau. GYNULLEIDFA: Felly, os ydych am gael rhywbeth union sydd eu hangen i fod yn [Anghlywadwy] luosi â 100 ac yna rannu gan 100 eto os ydych eisiau -? Lexi ROSS: Felly, os ydych yn awyddus i gael i mewn i ffurf degol? GYNULLEIDFA: Wel yr enghraifft, er enghraifft, [Anghlywadwy] chi gael 1.25, ac yna [Anghlywadwy] 1.24, os ydych yn awyddus i gadw hynny fel 1.25, byddech lluoswch hynny 100, o'i gwmpas, ac yna ei rannu gan 100 eto i gael 1.25? Lexi ROSS: Yeah. Felly, y cwestiwn yw, ers talgrynnu, fel y dudalen dyn dweud, rowndiau i'r gwerth agosaf annatod, mae hynny'n golygu y byddai rhywun am luosi â 100, wneud y talgrynnu, a rhannu â 100 unwaith eto i, dyweder, yn cael y cywir ddoleri a cents gwerth? A'r ateb yw -? DAN BRADLEY: Rhif Yr wyf yn golygu, os ydych ond yn cael gwerth float, os byddwch yn dechrau gyda gwerth fflôt o 1.25, dyna sut y mae'n mynd i fod yn dehongli. Felly, os ydych yn ei luosi â 100 ac yna ei rannu gan 100, mae'n dal yn mynd i gael eu dehongli fel 1.25, neu o bosibl 1.249 ... .. 999. Lexi ROSS: Rwy'n meddwl bod y cwestiwn oedd fel, byddech lluosi, yna defnyddiwch crwn, yna rhannwch, felly mae'n debyg - DAN BRADLEY: Yeah. Dwi dal ddim yn credu ei fod yn newid unrhyw beth, er. Rwy'n credu ei fod yn llonydd. Lexi ROSS: Gan fod cylch ei wneud - mae'n defnyddio gyfanrifau. Felly, os byddwch yn ceisio rownd 1.25, 'ch jyst yn cael 1. Felly, rwy'n credu, er mwyn cael fel y manylder ychwanegol, os dyna beth ydych yn sôn amdano. GYNULLEIDFA: Felly, yn yr hyn achosion ydych chi'n eu defnyddio crwn, yna? DAN BRADLEY: Felly, yn yr achos hwn, os ydych am, dyweder, y nifer o cents o $ 1.25, byddech yn lluosi gyda 100, crwn, yn cael 125, a'i adael â hynny, gan cents, yn hytrach na cheisio drosi yn ôl i ddoleri a cents. Lexi ROSS: Oh yeah, yeah, yn sicr. GYNULLEIDFA: Pam mae angen i chi o amgylch y [Anghlywadwy]? DAN BRADLEY: Felly, os ydych yn ei luosi â 100 ac yna ar unwaith ei drosi i cyfanrif, pa un yw'r ffurf ddefnyddiol, dyna pan fyddwch yn delio â hynny anfanyldeb, dde? Felly, gallai fod yn 124.999999, ac felly os ydych wedyn yn trosi i fod cyfanrif, 'i jyst yn disgyn oddi ar bopeth sy'n is na'r y degol. GYNULLEIDFA: Felly bydd yn rhoi i chi [Anghlywadwy]. DAN BRADLEY: Yn union, yn hytrach na 125, sy'n pam eich bod eisiau i orffen. GYNULLEIDFA: Mae'n ddrwg gennyf, allech chi ailadrodd yr hyn a ddywedasoch chi Dylai yn hytrach na'r hyn na ddylech ei wneud? DAN BRADLEY: Iawn. Felly, yr hyn y dylech ei wneud yw os byddwch yn dechrau gyda 1.25, lluosi iddo gan 100, ac yna o amgylch y rhif cyfan, bod 125 neu 124.9999, ac yn cael y i'r cyfanrif agosaf. GYNULLEIDFA: Felly, os ydych o gwmpas, sy'n rhoi ei i'r cyfanrif agosaf? DAN BRADLEY: Yeah. GYNULLEIDFA: A oes modd i gyfyngu, os byddwch yn gofyn am arnofio i'w mewnbynnu, a oes modd i gyfyngu ar faint o degol lleoedd y byddwch yn gallu rhoi mewnbwn fflôt i? Lexi ROSS: Ddim yn defnyddio gweithrediad y CS50 yn. Yr wyf yn golygu, gallwch chi gyfrif pa mor fawr y mewnbwn yn cael ei roi gan byddai'n rhaid i'r defnyddiwr, ond bod angen gweithredu newydd o GetFloat, ac felly nid oes angen i chi boeni am hynny. DAN BRADLEY: Felly, os ydynt, dyweder, mewnbwn 1.256, gallech dim ond defnyddio 1.25, neu gallech wneud 1.26. Naill ffordd neu'r llall, yr wyf yn credu bod y gweithredu'n dweud y gallwch - GYNULLEIDFA: Alli jyst wedi ei talgrynnu i - DAN BRADLEY: Beth bynnag y mae am, ie, cyn belled ag y byddwch yn ei wneud rhyw fath o dalgrynnu. Unrhyw beth arall? Nid yw'n rhaid i chi fod am talgrynnu. Lexi ROSS: Yeah? GYNULLEIDFA: Os ydym am i wirio i weld a yw'r arddull ein cod yn briodol neu arddull gorau y gall fod, yw bod y math o beth byddem yn ei godi yn adran, neu yn oriau swyddfa, neu yw bod y math o beth gallwn ei bostio'n breifat ar y peth, ar drafodaeth, ac yna gofyn am gyngor ar? Lexi ROSS: Felly, nid ydym yn ei wneud, yn ystod oriau swyddfa neu ar CS50 Trafod, ni fyddwn mewn gwirionedd yn set p graddio eich ymlaen llaw ar gyfer arddull, ond yr wyf yn meddwl yn ôl pob tebyg y mwyaf defnyddiol Byddai peth y gallech chi ei wneud fydd edrych ar enghreifftiau, ac rydych yn Dylai fod yn gallu dod o hyd bod mewn cod adran, a ddylai fod ar-lein dosbarthu, yn ogystal â'r sleidiau ddarlith, mae Dylai fod yn enghreifftiau o god. Ond os oes gennych gwestiynau unigol am rai mater arddull, yn bendant yn teimlo'n rhydd i ofyn hynny ar CS50 Trafod, ac oriau swyddfa, neu ar eich amser eich hun. Ond os ei fod yn fwy golwg cyffredinol ar fy cod, y peth gorau i'w math o defnyddio enghreifftiau a cheisio i gyd-fynd eich cod i hynny. Ac yr wyf yn credu bod yn ganllaw arddull ar - DAN BRADLEY: Mae y canllaw arddull. Mae'r canllaw arddull yn awesome. Mae'n dysgu i chi popeth rydych ei angen, ac mae'n cynnwys 'n bert lawer bob enghraifft hysbys i ddyn, neu o leiaf yn hysbys i mi. Unrhyw beth arall? Mae pob hawl. Cool, guys. Lexi ROSS: Cael diwrnod gwych. DAN BRADLEY: Diolch am ddod.