1 00:00:00,000 --> 00:00:02,360 >> DAVID J. Malan: Nagu te ilmselt teate, temperatuure mõõdetakse 2 00:00:02,360 --> 00:00:04,360 eri tasandi eri maailma osades. 3 00:00:04,360 --> 00:00:09,370 Näiteks 212 kraadi Fahrenheiti on 100 kraadi ja 32 kraadi 4 00:00:09,370 --> 00:00:11,810 Fahrenheit on 0 kraadi Celsiuse järgi. 5 00:00:11,810 --> 00:00:14,230 Kas poleks tore, kui meil oli arvuti programm, mis võimaldas meil 6 00:00:14,230 --> 00:00:16,950 teisendada, ütleme, Fahrenheit Celsiuse? 7 00:00:16,950 --> 00:00:18,510 >> Noh, me saame kirjutada, et programm. 8 00:00:18,510 --> 00:00:24,350 Vaatame kõigepealt alustada hulka cs50.h, nii et saame kasutada funktsiooni nimetatakse 9 00:00:24,350 --> 00:00:28,610 saada float, mis, nagu get int, saab number alla, kuid seekord 10 00:00:28,610 --> 00:00:31,440 ujukomaarvuna - üks koos koma. 11 00:00:31,440 --> 00:00:34,840 >> Teeme ka standard io.h nii et meil on juurdepääs 12 00:00:34,840 --> 00:00:36,230 funktsioone nagu print f. 13 00:00:36,230 --> 00:00:40,000 Ja olgem ka tunnistada peamised tavalisel viisil. 14 00:00:40,000 --> 00:00:42,675 >> Teeme järgmise kiire kasutaja jaoks temperatuur Fahrenheiti järgi. 15 00:00:42,675 --> 00:00:46,050 16 00:00:46,050 --> 00:00:49,220 Olgem nüüd tegelikult saada, et temperatuur alates kasutaja kõigepealt 17 00:00:49,220 --> 00:00:52,910 kuulutatakse muutuja nimega f tüüpi float. 18 00:00:52,910 --> 00:00:56,750 Float, jälle, mis tähendab, muutuja, mis salvestab ujukoma väärtust 19 00:00:56,750 --> 00:00:58,200 üks koma. 20 00:00:58,200 --> 00:01:01,780 >> Olgem määrata selle tagastamise väärtus get float. 21 00:01:01,780 --> 00:01:06,080 Ja siis teeme natuke aritmeetiline on see esimene kuulutatakse teine ​​ujuk 22 00:01:06,080 --> 00:01:11,690 nimetatakse C Celsius ja kaupluse C tulemusena mõned ühised aritmeetika. 23 00:01:11,690 --> 00:01:19,060 5,0 jagatud 9,0 korda F miinus 32,0. 24 00:01:19,060 --> 00:01:23,440 >> Olgem nüüd printida tulemus Selle arvutuse. 25 00:01:23,440 --> 00:01:24,730 protsenti f - 26 00:01:24,730 --> 00:01:27,890 mis tähendab kohatäide Murdarv - 27 00:01:27,890 --> 00:01:31,680 koma C välja trükkida temperatuur Celsiuse järgi. 28 00:01:31,680 --> 00:01:33,000 Hoiame oma lõplik. 29 00:01:33,000 --> 00:01:38,220 Koostage koos F C. Run programmi dot kaldkriipsuga F C. 30 00:01:38,220 --> 00:01:39,940 >> Ja proovime neid ühiseid temperatuuridel. 31 00:01:39,940 --> 00:01:45,820 212 kraadi Fahrenheiti on 100 kraadi Celsiuse järgi. 32 00:01:45,820 --> 00:01:50,090 32 kraadi Fahrenheiti on 0 kraadi Celsiuse järgi. 33 00:01:50,090 --> 00:01:54,240 >> Nüüd võimaldab täpsustada seda programmi vähe natuke mitte trükkimiseks üsna paljud 0- 34 00:01:54,240 --> 00:01:55,820 pärast, et kümnendkohani. 35 00:01:55,820 --> 00:01:57,940 Et seda teha, ma lähen mine tagasi rida 11. 36 00:01:57,940 --> 00:02:03,430 Ja mitte lihtsalt täpsustada protsenti f, Ma lähen selle asemel määrata, ütleme, 37 00:02:03,430 --> 00:02:08,800 0,1 f, teavitades print f, et ma ainult soovite printida Murdarv 38 00:02:08,800 --> 00:02:11,750 üks väärtus pärast kümnendkohani. 39 00:02:11,750 --> 00:02:13,630 >> Olgem salvestage oma programmi. 40 00:02:13,630 --> 00:02:19,680 Kompileeri see make F C. Seejärel uuesti, siis koos dot kaldkriipsuga F C ja 41 00:02:19,680 --> 00:02:24,910 olgem proovimiseks, ütleme, 212, mis annab mulle 100,0. 42 00:02:24,910 --> 00:02:28,360 >> Nüüd on see väärib märkimist, et ma tegin midagi väga teadlikult line 9. 43 00:02:28,360 --> 00:02:35,830 Märka, kuidas ma kirjutasin 5 on 5,0, 9 kui 9,0, ja isegi 32 kui 32,0. 44 00:02:35,830 --> 00:02:39,000 Noh, neist kahe esimese väärtused väga teadlikult valitud olema 45 00:02:39,000 --> 00:02:42,200 ujukoma väärtuste, mitte ainult sellepärast, kooskõla ülejäänud 46 00:02:42,200 --> 00:02:42,940 Minu programmi - 47 00:02:42,940 --> 00:02:45,110 mis loomulikult eeldab ujuv punkt väärtused - 48 00:02:45,110 --> 00:02:50,210 kuid kuna selgub, et C, Kui jagada int teine ​​int, 49 00:02:50,210 --> 00:02:54,350 Saadud vastus sa lähed, et saada on ise int, isegi kui see tähendab, 50 00:02:54,350 --> 00:02:57,450 võttes visata kõik pärast koma. 51 00:02:57,450 --> 00:03:04,990 >> Teisisõnu, kui ma seda muuta 5,0 kuni 5 või käesoleva 9,0-9 ja seejärel salvestage 52 00:03:04,990 --> 00:03:10,550 minu programm, kompileeri koos make F C, ja siis uuesti käivitada koos dot kaldkriipsuga F 53 00:03:10,550 --> 00:03:15,310 C ja kirjuta sisend nagu 212, märgata, et vastus, mille ma lähen 54 00:03:15,310 --> 00:03:17,860 saada see aeg on tegelikult täiesti vale. 55 00:03:17,860 --> 00:03:23,570 0,0 ei ole õige kraad Celsius kui 212 Fahrenheiti järgi. 56 00:03:23,570 --> 00:03:24,500 >> Noh, mis toimub? 57 00:03:24,500 --> 00:03:29,410 Noh, vastavalt 9, sest 5 on nüüd täisarv ja kuna 9 on nüüd 58 00:03:29,410 --> 00:03:34,810 täisarv tulemus matemaatiliselt peaks olema 0,5555 ja nii edasi. 59 00:03:34,810 --> 00:03:39,120 Kuid kuna tulemus, vastavalt C eeskirju, peab olema int, et 60 00:03:39,120 --> 00:03:44,020 0,5555 saab ära visata, jättes meile vaid 0. 61 00:03:44,020 --> 00:03:48,600 >> Nii et lõpuks, ma lõpuks korrutades täiesti juhuslikult 0 korda f miinus 62 00:03:48,600 --> 00:03:52,830 32,0, mis on ükskõik mida alati läheb mulle 0. 63 00:03:52,830 --> 00:03:56,930 Nii et pidage meeles, igal ajal, kasutades ujukoma väärtuste lähedus 64 00:03:56,930 --> 00:03:59,860 ints, sa ei pruugi tingimata saada vastus, et sa oodata. 65 00:03:59,860 --> 00:04:04,220 Ja nii hoolitseda kasutada, kui ma tegin Esimesel juhul ujukoma väärtuste 66 00:04:04,220 --> 00:04:06,530 kogu, et vältida selliseid probleeme. 67 00:04:06,530 --> 00:04:08,267