1 00:00:00,000 --> 00:00:00,330 2 00:00:00,330 --> 00:00:02,700 >> SPEAKER 1: Să presupunem că aș vrea să scrie un program care afiseaza un float, 3 00:00:02,700 --> 00:00:05,700 în mod specific rezultat împărțirii 1 de 10. 4 00:00:05,700 --> 00:00:08,830 Ei bine, primele mele instincte ar fi să Trimite acest program, după cum urmează. 5 00:00:08,830 --> 00:00:18,160 Float f este egal cu 1 împărțit la 10, si apoi imprima f de procente .1 f, astfel 6 00:00:18,160 --> 00:00:22,270 ceea ce înseamnă că aș vrea să imprimați un flotor cu o zecimală, 7 00:00:22,270 --> 00:00:26,490 backslash n virgulă f. 8 00:00:26,490 --> 00:00:28,270 Hai acum compila acest program. 9 00:00:28,270 --> 00:00:32,980 Face float 0 puncte slash float 0. 10 00:00:32,980 --> 00:00:34,140 >> Ei bine, asta nu-i destul de bine. 11 00:00:34,140 --> 00:00:40,210 Sunt destul de sigur că 1 împărțit la 10, sau 1/10 nu este 0.0, dar 0.1, și totuși 12 00:00:40,210 --> 00:00:42,820 aici văd pe ecran 0.0. 13 00:00:42,820 --> 00:00:43,860 Ce se întâmplă? 14 00:00:43,860 --> 00:00:47,790 Ei bine, se pare că în c, în cazul în care împărțiți o int de un int, 15 00:00:47,790 --> 00:00:49,090 te înapoi un int. 16 00:00:49,090 --> 00:00:54,810 Și astfel, chiar dacă 1 împărțit la 10 este într-adevăr, 0,10, 0,1, nu se poate potrivi într-un int, 17 00:00:54,810 --> 00:00:58,930 și așa mai departe ceea ce c nu este o trunchiază, sau aruncă totul după 18 00:00:58,930 --> 00:01:01,770 zecimală, lăsând astfel ne cu doar 0. 19 00:01:01,770 --> 00:01:04,989 >> Dar apoi, desigur, cu imprimare F, ne-am specifică faptul că am dori pentru a imprima f la 20 00:01:04,989 --> 00:01:09,260 o zecimală, și astfel încât 0 este afișat ca 0.0. 21 00:01:09,260 --> 00:01:11,540 Ei bine, în mod evident aceasta este o problemă care are nevoie de o soluție. 22 00:01:11,540 --> 00:01:14,025