1 00:00:00,000 --> 00:00:00,330 2 00:00:00,330 --> 00:00:02,700 >> Spreker 1: Gestel ek wil skryf 'n program wat druk uit 'n float, 3 00:00:02,700 --> 00:00:05,700 spesifiek die gevolg verdeel 1 10. 4 00:00:05,700 --> 00:00:08,830 Wel, sou my eerste instink om te skryf hierdie program is soos volg. 5 00:00:08,830 --> 00:00:18,160 Float f gelyk aan 1 gedeel deur 10, en dan druk f persent 0,1 f, en daardeur 6 00:00:18,160 --> 00:00:22,270 wat beteken dat ek wil uit te druk 'n float tot een desimale plek, 7 00:00:22,270 --> 00:00:26,490 backslash n komma f. 8 00:00:26,490 --> 00:00:28,270 Kom ons nou hierdie program saam te stel. 9 00:00:28,270 --> 00:00:32,980 Maak float 0 dot streep float 0. 10 00:00:32,980 --> 00:00:34,140 >> Wel, dit is nie heeltemal reg nie. 11 00:00:34,140 --> 00:00:40,210 Ek is redelik seker dat 1 gedeel deur 10, of 1/10 is nie 0,0 nie, maar 0,1, en nog 12 00:00:40,210 --> 00:00:42,820 hier Ek sien op die skerm 0.0. 13 00:00:42,820 --> 00:00:43,860 Wat gaan aan? 14 00:00:43,860 --> 00:00:47,790 Wel, dit blyk dat in c, indien jy deel 'n int deur 'n int, 15 00:00:47,790 --> 00:00:49,090 jy terug 'n int. 16 00:00:49,090 --> 00:00:54,810 En so selfs al 1 gedeel deur 10 is inderdaad 0.10, kan 0,1 nie pas in 'n int, 17 00:00:54,810 --> 00:00:58,930 En ja, wat c is dit kapt, of gooi alles weg na die 18 00:00:58,930 --> 00:01:01,770 desimale plek, en daardeur te verlaat ons met net 0. 19 00:01:01,770 --> 00:01:04,989 >> Maar dan, natuurlik, met die druk f ons spesifiseer dat ons wil graag om te druk f te 20 00:01:04,989 --> 00:01:09,260 een desimale plek, en sodat 0 vertoon word as 0,0. 21 00:01:09,260 --> 00:01:11,540 Wel, duidelik is dit 'n probleem wat moet 'n oplossing. 22 00:01:11,540 --> 00:01:14,025