1 00:00:00,000 --> 00:00:02,360 >> DAVID J. Malan: Kama pengine kujua, joto ni kipimo kwa kutumia 2 00:00:02,360 --> 00:00:04,360 mizani tofauti katika mbalimbali sehemu ya dunia. 3 00:00:04,360 --> 00:00:09,370 Kwa mfano, digrii 212 Fahrenheit ni 100 digrii Celsius na digrii 32 4 00:00:09,370 --> 00:00:11,810 Fahrenheit ni 0 nyuzi. 5 00:00:11,810 --> 00:00:14,230 Je, si ni kuwa nzuri kama tulikuwa na kompyuta mpango huo alituruhusu 6 00:00:14,230 --> 00:00:16,950 kubadili kutoka, kusema, Fahrenheit kwa Celsius? 7 00:00:16,950 --> 00:00:18,510 >> Naam, tunaweza kuandika mpango huo. 8 00:00:18,510 --> 00:00:24,350 Hebu kwanza kuanza na ni pamoja na cs50.h, ili tuweze kutumia kazi kuitwa 9 00:00:24,350 --> 00:00:28,610 kupata kuelea, ambayo, kama kupata int, anapata idadi kutoka kwa mtumiaji, lakini hii a wakati 10 00:00:28,610 --> 00:00:31,440 yaliyo hatua ya simu - moja na ya uhakika decimal. 11 00:00:31,440 --> 00:00:34,840 >> Hebu pia ni pamoja na kiwango io.h hivyo kwamba tuna upatikanaji wa 12 00:00:34,840 --> 00:00:36,230 kazi kama magazeti f. 13 00:00:36,230 --> 00:00:40,000 Na hebu pia kutangaza kuu katika njia ya kawaida. 14 00:00:40,000 --> 00:00:42,675 >> Hebu ijayo haraka user kwa joto katika Fahrenheit. 15 00:00:42,675 --> 00:00:46,050 16 00:00:46,050 --> 00:00:49,220 Hebu sasa kweli kupata kwamba hali ya joto kutoka kwa mtumiaji, kwanza kwa 17 00:00:49,220 --> 00:00:52,910 kutangaza variable kuitwa f ya aina kuelea. 18 00:00:52,910 --> 00:00:56,750 kuelea, tena, maana variable kwamba maduka yaliyo hatua thamani, 19 00:00:56,750 --> 00:00:58,200 moja na hatua ya decimal. 20 00:00:58,200 --> 00:01:01,780 >> Hebu hawawajui kurudi thamani ya kupata kuelea. 21 00:01:01,780 --> 00:01:06,080 Na kisha hebu kufanya kidogo ya hesabu juu yake, kwanza kutangaza kuelea mwingine 22 00:01:06,080 --> 00:01:11,690 aitwaye C kwa Celsius na kuhifadhi katika C matokeo ya baadhi ya hesabu ya kawaida. 23 00:01:11,690 --> 00:01:19,060 5.0 kugawanywa kwa mara 9.0 F minus 32.0. 24 00:01:19,060 --> 00:01:23,440 >> Hebu sasa magazeti matokeo ya hesabu hii. 25 00:01:23,440 --> 00:01:24,730 asilimia f - 26 00:01:24,730 --> 00:01:27,890 akionyesha placeholder kwa yaliyo hatua thamani - 27 00:01:27,890 --> 00:01:31,680 comma C magazeti nje joto katika Celsius. 28 00:01:31,680 --> 00:01:33,000 Hebu kuokoa mwisho wangu. 29 00:01:33,000 --> 00:01:38,220 Kukusanya na F kwa C. kukimbia mpango na dot slash F C. 30 00:01:38,220 --> 00:01:39,940 >> Na hebu jaribu wale kawaida joto. 31 00:01:39,940 --> 00:01:45,820 Digrii 212 Fahrenheit katika ni nyuzi 100 Celsius. 32 00:01:45,820 --> 00:01:50,090 Nyuzi 32 katika Fahrenheit ni 0 digrii katika Celsius. 33 00:01:50,090 --> 00:01:54,240 >> Sasa lets kuboresha mpango huu kidogo kidogo na si uchapishaji kabisa kama wengi 0 ya 34 00:01:54,240 --> 00:01:55,820 baada ya kuwa mahali decimal. 35 00:01:55,820 --> 00:01:57,940 Kwa kufanya hivyo, mimi nina kwenda kwenda nyuma ya mstari wa 11. 36 00:01:57,940 --> 00:02:03,430 Na badala ya kutaja asilimia f, Mimi nina kwenda badala bayana, kusema, 37 00:02:03,430 --> 00:02:08,800 0.1 f, taarifa magazeti f kwamba mimi tu unataka magazeti yaliyo hatua thamani 38 00:02:08,800 --> 00:02:11,750 kwa thamani moja baada ya mahali decimal. 39 00:02:11,750 --> 00:02:13,630 >> Hebu resave mpango wangu. 40 00:02:13,630 --> 00:02:19,680 Recompile ni pamoja na kufanya F C. Kisha rerun ni pamoja na dot slash F C. Na 41 00:02:19,680 --> 00:02:24,910 hebu jaribu tena na, kusema, 212, ambayo inatoa mimi 100.0. 42 00:02:24,910 --> 00:02:28,360 >> Sasa ni thamani kubainisha kwamba mimi kitu kwa makusudi sana katika line 9. 43 00:02:28,360 --> 00:02:35,830 Taarifa jinsi niliandika 5 ni 5.0, 9 kama 9.0, na hata 32 kama 32.0. 44 00:02:35,830 --> 00:02:39,000 Naam, kwanza wawili wa maadili hayo walikuwa sana kwa makusudi amechaguliwa kuwa 45 00:02:39,000 --> 00:02:42,200 maadili yaliyo uhakika, si kwa sababu tu ya uthabiti na wengine 46 00:02:42,200 --> 00:02:42,940 ya mpango wangu - 47 00:02:42,940 --> 00:02:45,110 ambayo ni wazi inahusisha yaliyo hatua maadili - 48 00:02:45,110 --> 00:02:50,210 lakini kwa sababu zinageuka kuwa C, Kama kugawanya int na mwingine int, 49 00:02:50,210 --> 00:02:54,350 kusababisha jibu wewe ni kwenda kupata ni yenyewe int, hata kama njia 50 00:02:54,350 --> 00:02:57,450 kuwa na kutupa kila kitu baada ya uhakika decimal. 51 00:02:57,450 --> 00:03:04,990 >> Kwa maneno mengine, kama mimi kubadili hali hii 5.0 kwa 5 au hii 9.0-9 na kisha resave 52 00:03:04,990 --> 00:03:10,550 mpango wangu, recompile na kufanya F C, na kisha re-kuendesha kwa dot slash F 53 00:03:10,550 --> 00:03:15,310 kwa C na aina katika mchango wa kama 212, taarifa kwamba jibu mimi nina kwenda 54 00:03:15,310 --> 00:03:17,860 kupata wakati huu ni kweli sawa kabisa. 55 00:03:17,860 --> 00:03:23,570 0.0 ni si shahada sahihi katika Celsius kama 212 Fahrenheit. 56 00:03:23,570 --> 00:03:24,500 >> Naam, ni nini kinaendelea? 57 00:03:24,500 --> 00:03:29,410 Naam, katika line 9, kwa sababu 5 ni sasa integer na kwa sababu 9 ni sasa 58 00:03:29,410 --> 00:03:34,810 integer, matokeo hesabu lazima 0.5555 na kadhalika. 59 00:03:34,810 --> 00:03:39,120 Lakini kwa sababu matokeo, kwa mujibu wa Sheria C, ina kuwa int, kwamba 60 00:03:39,120 --> 00:03:44,020 0.5555 anapata kutupwa mbali, kuacha yetu na 0 tu. 61 00:03:44,020 --> 00:03:48,600 >> Hivyo katika mwisho, mimi kuishia kuzidisha kabisa ajali 0 mara f minus 62 00:03:48,600 --> 00:03:52,830 32.0, ambayo ni bila kujali daima kwenda nipe 0. 63 00:03:52,830 --> 00:03:56,930 Hivyo kukumbuka, wakati wowote kwa kutumia maadili yaliyo hatua katika ukaribu wa 64 00:03:56,930 --> 00:03:59,860 ints, huenda si lazima kupata jibu hivyo kutarajia. 65 00:03:59,860 --> 00:04:04,220 Na hivyo kuchukua huduma kwa kutumia, kama mimi katika maadili kesi ya kwanza, floating hatua 66 00:04:04,220 --> 00:04:06,530 katika ili kuepuka masuala yoyote hayo. 67 00:04:06,530 --> 00:04:08,267