1 00:00:00,000 --> 00:00:00,330 2 00:00:00,330 --> 00:00:02,700 >> SPEAKER 1: Oletetaan Haluaisin kirjoittaa ohjelma, joka tulostaa float, 3 00:00:02,700 --> 00:00:05,700 erityisesti tulosta jakamalla 1 10. 4 00:00:05,700 --> 00:00:08,830 No, minun ensimmäinen vaistot olisi Kirjoitan tätä ohjelmaa seuraavasti. 5 00:00:08,830 --> 00:00:18,160 Float f vastaa 1 jaettuna 10, ja sitten tulostaa f prosenttia 0,1 f, jolloin 6 00:00:18,160 --> 00:00:22,270 merkitsee, että haluaisin tulostaa float yhden desimaalin tarkkuudella, 7 00:00:22,270 --> 00:00:26,490 kenoviiva n pilkku f. 8 00:00:26,490 --> 00:00:28,270 Katsotaanpa nyt kokoamaan tätä ohjelmaa. 9 00:00:28,270 --> 00:00:32,980 Tee float 0 dot slash kellua 0. 10 00:00:32,980 --> 00:00:34,140 >> No, se ei ole aivan oikeassa. 11 00:00:34,140 --> 00:00:40,210 Olen aivan varma, että 1 jaettuna 10 tai 1/10 ei ole 0,0, mutta 0,1, ja vielä 12 00:00:40,210 --> 00:00:42,820 tässä näen ruudulla 0,0. 13 00:00:42,820 --> 00:00:43,860 Mitä on tekeillä? 14 00:00:43,860 --> 00:00:47,790 No, käy ilmi, että C, jos jaat int by int, 15 00:00:47,790 --> 00:00:49,090 saat takaisin int. 16 00:00:49,090 --> 00:00:54,810 Ja niin vaikka 1 jaettuna 10 on todellakin 0,10, 0,1 ei mahdu int, 17 00:00:54,810 --> 00:00:58,930 ja niin mitä c ei se katkaisee tai heittää pois kaiken jälkeen 18 00:00:58,930 --> 00:01:01,770 desimaalin tarkkuudella, mikä jättää meille vain 0. 19 00:01:01,770 --> 00:01:04,989 >> Mutta sitten tietysti painatuksella f, me täsmentää, että haluaisimme tulostaa F 20 00:01:04,989 --> 00:01:09,260 yhden desimaalin tarkkuudella, ja niin, että 0 näkyy 0,0. 21 00:01:09,260 --> 00:01:11,540 No, selvästi tämä on ongelma joka tarvitsee ratkaisun. 22 00:01:11,540 --> 00:01:14,025