1 00:00:00,000 --> 00:00:00,493 2 00:00:00,493 --> 00:00:09,860 >> [સંગીત વગાડવાનો] 3 00:00:09,860 --> 00:00:13,520 >> ZAMYLA ચાન: જો તમે તેના બદલે પ્રાપ્ત છો $ 10 મિલિયન હમણાં અથવા પ્રાપ્ત 4 00:00:13,520 --> 00:00:17,460 પેનિઝ મહિનાના દરેક દિવસે, જ્યાં દરેક અનુગામી દિવસ, તમે પ્રાપ્ત 5 00:00:17,460 --> 00:00:21,280 તમે પેનિઝ જથ્થો બે વાર પહેલા દિવસે પ્રાપ્ત? 6 00:00:21,280 --> 00:00:24,010 પેનિઝ, અમે જઈ રહ્યા છો સાબિત શા માટે તમારે 7 00:00:24,010 --> 00:00:27,000 ચોક્કસપણે પેનિઝ લે છે. 8 00:00:27,000 --> 00:00:29,130 - Pennies.c-તમારી નોકરી લખવા માટે છે 9 00:00:29,130 --> 00:00:33,330 પ્રથમ કેવી રીતે વપરાશકર્તા પૂછે કે કાર્યક્રમ ત્યાં ઘણા દિવસો મહિનામાં છે અને 10 00:00:33,330 --> 00:00:38,780 પછી વપરાશકર્તા કેટલા પેનિઝ પૂછે છે પ્રથમ દિવસે પ્રાપ્ત થશે. 11 00:00:38,780 --> 00:00:41,780 આ કાર્યક્રમ પછી ગણતરી જોઇએ વપરાશકર્તા છે કે જથ્થો 12 00:00:41,780 --> 00:00:46,530 આ ઓવરને અંતે સંચિત મહિનો અને તે દર્શાવે છે. 13 00:00:46,530 --> 00:00:49,670 >> અમે આ કાર્યક્રમ અપ ભંગ કરી શકો છો કાર્યો એક દંપતિ માં. 14 00:00:49,670 --> 00:00:52,830 અમે માટે પૂછવા માટે જરૂર પડશે બહુવિધ યુઝર ઇનપુટ્સ - 15 00:00:52,830 --> 00:00:55,510 દિવસો અને મહિનાઓ, અને પેનિઝ પ્રથમ દિવસે. 16 00:00:55,510 --> 00:00:59,390 અમે ટ્રેક રાખવા માટે કેટલી મની વપરાશકર્તા દરેક ધરાવે છે અને તેને સુધારવા 17 00:00:59,390 --> 00:01:03,060 દિવસ રકમ મેલોડિકા તેઓ પ્રાપ્ત કરે છે તે પેનિઝ. 18 00:01:03,060 --> 00:01:06,710 અને છેલ્લે, અમે છાપો તેમના ડોલર અંતિમ કુલ. 19 00:01:06,710 --> 00:01:08,570 >> પ્રથમ સામનો વપરાશકર્તા ઈનપુટ કરીએ. 20 00:01:08,570 --> 00:01:11,560 હું apples.c અપ ખોલવા માટે જઇ રહ્યો છું વહેવાર કે ટૂંકા કાર્યક્રમ 21 00:01:11,560 --> 00:01:13,840 ઇનપુટ્સ અને આઉટપુટ સાથે. 22 00:01:13,840 --> 00:01:17,310 અહીં ટોચ પર, હું કેટલાક સમાવેશ કર્યા છે - હું જરૂર કે ગ્રંથાલયોની 23 00:01:17,310 --> 00:01:20,450 CS50 લાઇબ્રેરી અને પ્રમાણભૂત I / O લાઇબ્રેરી. 24 00:01:20,450 --> 00:01:24,310 હું મદદથી પ્રોમ્પ્ટ છાપો માંથી printf કાર્ય 25 00:01:24,310 --> 00:01:25,660 ધોરણ I / O લાઇબ્રેરી. 26 00:01:25,660 --> 00:01:29,740 પરંતુ વપરાશકર્તાની પૂછવાની વાસ્તવિક આ સાથે આગામી લીટી બને 27 00:01:29,740 --> 00:01:33,650 જો CS50 પુસ્તકાલય GetInt કાર્ય. 28 00:01:33,650 --> 00:01:38,300 >> GetInt વપરાશકર્તા ઇનપુટ અને મેળવે છે ઇનપુટ પૂર્ણાંક છે કે જે ખાતરી કરે છે. 29 00:01:38,300 --> 00:01:45,160 તેથી હું પૂર્ણાંક માં વપરાશકર્તાની ઇનપુટ સ્ટોર હું માંથી 1 બાદબાકી કરો અને પછી 30 00:01:45,160 --> 00:01:47,610 હું તો નવી કિંમત છાપશે. 31 00:01:47,610 --> 00:01:53,050 મદદથી apples.c સંકલન પછી આદેશ "સફરજન બનાવવા," હું એક હોય 32 00:01:53,050 --> 00:01:55,770 એક્ઝિક્યુટેબલ ફાઇલ સફરજન. 33 00:01:55,770 --> 00:01:58,760 હું ઇનપુટ 1, કે જે પડશે ચાલી. 34 00:01:58,760 --> 00:02:02,600 આ કાર્યક્રમ મને કહે છે કે હું છોડી 0 સફરજન છે. 35 00:02:02,600 --> 00:02:05,480 અને તેથી ઈચ્છિત તરીકે કામ કર્યું હતું. 36 00:02:05,480 --> 00:02:09,740 >> તેથી માતાનો ફરીથી આ સ્કોર દો નકારાત્મક અને ઇનપુટ 1. 37 00:02:09,740 --> 00:02:13,950 હવે, સફરજન એક નકારાત્મક જથ્થો કર્યા ખરેખર અર્થમાં બનાવે છે, પરંતુ નથી 38 00:02:13,950 --> 00:02:18,370 નકારાત્મક કારણ કે કાર્યક્રમ, તેને સ્વીકારે 1, સારી રીતે, તે પૂર્ણાંક છે. 39 00:02:18,370 --> 00:02:22,740 અને હવે કાર્યક્રમ અથવા રાક્ષસ કાર્યક્રમ નકારાત્મક ખાય અંદર 40 00:02:22,740 --> 00:02:26,250 સફરજન, અને હવે મારી પાસે નકારાત્મક 2 સફરજન. 41 00:02:26,250 --> 00:02:28,610 હમ્મ, કે જેથી એક પાઠ છે - 42 00:02:28,610 --> 00:02:32,965 છતાં પણ આ GetInt કાર્ય અને સંબંધિત GetFlow જેવા કાર્યો, અથવા 43 00:02:32,965 --> 00:02:38,100 વિચાર અધિકાર માહિતી પ્રકાર GetString, તમે ઇનપુટ બનાવે છે તેની ખાતરી કરવા માટે છે 44 00:02:38,100 --> 00:02:41,430 તમારા કાર્યક્રમ માટે અર્થમાં. 45 00:02:41,430 --> 00:02:45,500 >> પેનિઝ, તે માત્ર એક પ્રોમ્પ્ટ કરશે નહીં પૂર્ણાંક માટે, તમે બનાવવા માટે જરૂર પડશે 46 00:02:45,500 --> 00:02:49,550 ખાતરી કરો કે વપરાશકર્તા ઇનપુટ્સ પૂર્ણાંક છે કે જે કે સંદર્ભ આપવામાં અર્થમાં બનાવે છે. 47 00:02:49,550 --> 00:02:55,690 મહિનો માત્ર 28 હોઈ શકે છે 29, 30, અથવા 31 ટ્રેડીંગ. 48 00:02:55,690 --> 00:02:59,160 અમે સતત માગ કરવા માંગો છો એક માન્ય પૂર્ણાંક. 49 00:02:59,160 --> 00:03:03,240 તેઓ ઇનપુટ અમારી એક પૂર્ણાંક બહાર તો સ્વીકૃત ભૂસકે, અમે તેમને પૂછવા પડશે 50 00:03:03,240 --> 00:03:07,190 ફરી અને ફરી, ત્યાં સુધી તમે અમને એક માન્ય પૂર્ણાંક આપે છે. 51 00:03:07,190 --> 00:03:10,070 >> આ "ત્યાં સુધી વારંવાર" યાદ સ્ક્રેચ માં બ્લૉક? 52 00:03:10,070 --> 00:03:13,070 તમે એક જ રચના કરી શકો છો સી માં "જ્યારે" લૂપ મદદથી 53 00:03:13,070 --> 00:03:14,830 અથવા "ગમે તે દરમિયાન," લૂપ. 54 00:03:14,830 --> 00:03:18,280 આ જ્યારે લૂપ માળખું એક શરત છે આ માટે મળવી જ જોઈએ કે 55 00:03:18,280 --> 00:03:20,160 ચલાવવા માટે લૂપ શરીર. 56 00:03:20,160 --> 00:03:23,080 >> આ થોડું સમાન જોવું જોઈએ શરત માત્ર જેવી છે, કારણ કે 57 00:03:23,080 --> 00:03:25,970 આ ખૂણા સાથે શરૂઆતથી બ્લોક્સ અને કૌંસ માં જાય છે 58 00:03:25,970 --> 00:03:27,950 આ જ્યારે "" લૂપ. 59 00:03:27,950 --> 00:03:30,600 કે જેથી શરત છે કે કેમ તે તપાસ કરશે આ પૂર્ણાંક અંદર છે 60 00:03:30,600 --> 00:03:32,680 યોગ્ય ભૂસકે. 61 00:03:32,680 --> 00:03:36,620 તમે પૂર્ણાંક મદદથી GetInt સંકેત આપી શકે છે અને પછી તમારા "જ્યારે" ચલાવો 62 00:03:36,620 --> 00:03:41,030 લૂપ, પુનરાવર્તન પ્રોમ્પ્ટ અને પ્રિન્ટીંગ સૂચનો માટે, જ્યારે ઇનપુટ 63 00:03:41,030 --> 00:03:43,470 માન્ય નથી. 64 00:03:43,470 --> 00:03:47,610 >> યોગ્ય વપરાશકર્તા ઈનપુટ ખાતરી કરવા માટે અન્ય માર્ગ , એક "ગમે તે દરમિયાન," લૂપ કરીને 65 00:03:47,610 --> 00:03:50,400 જે જ્યારે લૂપ ખૂબ સમાન છે. 66 00:03:50,400 --> 00:03:54,950 આ "do-જ્યારે" લૂપ કોડ ચલાવે છે શરીર રાશિઓ અને પછી ચકાસે અંદર 67 00:03:54,950 --> 00:03:57,150 આ પરિસ્થિતિ મળ્યા નથી અથવા છે કે કેમ. 68 00:03:57,150 --> 00:04:00,590 આ વપરાશકર્તા ઈનપુટ મેળવવા માટે ઉપયોગી છે તમે તમને જરૂર ખબર છે કે કારણ કે 69 00:04:00,590 --> 00:04:02,980 ઓછામાં ઓછા એક વખત તેમને પૂછવા. 70 00:04:02,980 --> 00:04:07,200 પરિસ્થિતિ નથી મળી છે, તો કાર્યક્રમ પછી વાક્ય ચલાવવા કરશે 71 00:04:07,200 --> 00:04:08,530 તમારા "ગમે તે દરમિયાન," લૂપ. 72 00:04:08,530 --> 00:04:13,230 આ પરિસ્થિતિ છતાં મળ્યા છે, તો લૂપ પુનરાવર્તન કરશે 73 00:04:13,230 --> 00:04:17,490 >> વપરાશકર્તા માન્ય માટે "ગમે તે દરમિયાન," લૂપ ઇનપુટ આ કંઈક આના જેવો દેખાશે. 74 00:04:17,490 --> 00:04:24,530 હું એક ચલ એ, GetInt જાહેર, અને એ માન્ય છે ત્યાં સુધી તો પછી પુનરાવર્તન કરો. 75 00:04:24,530 --> 00:04:28,040 અને આ પ્રક્રિયા છે, હું સમજાવી ઉપયોગ કરવામાં આવ્યો હતો આ પૂર્ણાંક ડેટા પ્રકાર છે, કે જે 76 00:04:28,040 --> 00:04:29,820 તમે મહિનાના દિવસ માટે ઉપયોગ કરશો. 77 00:04:29,820 --> 00:04:33,560 પરંતુ આપણે જાણીએ છીએ કે પેનિઝ સંખ્યા કરવા માટે, જેથી ઝડપથી ખૂંટો કરશે 78 00:04:33,560 --> 00:04:39,160 મોટા નંબરો સ્ટોર, ડેટા પ્રકાર વાપરે છે LongLong, પરંતુ તે જ યાદ 79 00:04:39,160 --> 00:04:42,590 માન્યતા સિદ્ધાંત લાગુ પડે છે. 80 00:04:42,590 --> 00:04:47,070 >> ભયાનક છે, તેથી એક વખત અમે બે માન્ય છે વપરાશકર્તા માંથી ઇનપુટ્સ - 81 00:04:47,070 --> 00:04:49,530 મહિનામાં ટ્રેડીંગ અને પેનિઝ પ્રથમ દિવસે - 82 00:04:49,530 --> 00:04:52,870 અમે આગામી પર ખસેડી શકો છો કાર્યક્રમ ભાગ છે. 83 00:04:52,870 --> 00:04:56,680 પ્રથમ દિવસે, વપરાશકર્તા સાથે શરૂ થાય છે તેઓ સ્પષ્ટ જોકે ઘણા પેનિઝ 84 00:04:56,680 --> 00:05:00,370 અને પેનિઝ જથ્થો કે તેઓ પછીના દિવસે પ્રાપ્ત બમણો થાય છે. 85 00:05:00,370 --> 00:05:03,130 તેથી તે ટ્રેક રાખવા માટે અર્થમાં બનાવે છે આ બે પ્રમાણમાં - 86 00:05:03,130 --> 00:05:08,890 વપરાશકર્તા છે અને કેવી રીતે કેટલા પૈસા ઘણા પેનિઝ તેઓ આપવામાં આવશે. 87 00:05:08,890 --> 00:05:13,760 >> હવે, 28 થી 31 દિવસ માટે કંઈક કરી પુનરાવર્તિત છે, તેથી ના "માટે" ઉપયોગ કરવા દેવા 88 00:05:13,760 --> 00:05:18,220 જો આ દિવસોમાં ફરી વળવું માટે લૂપ મહિનો, કુલ અને પેની અપડેટ 89 00:05:18,220 --> 00:05:21,010 દર વખતે રકમ. 90 00:05:21,010 --> 00:05:23,550 લૂપ વાક્યરચના છે "માટે" નીચેના - 91 00:05:23,550 --> 00:05:27,510 એક પ્રારંભિક, શરત, અને એક અપડેટ. 92 00:05:27,510 --> 00:05:29,590 તમારા "માટે" લૂપ પ્રારંભ થશે એક ચલ, ત્યારે તે 93 00:05:29,590 --> 00:05:31,380 પ્રથમ લૂપ પ્રવેશે છે. 94 00:05:31,380 --> 00:05:34,860 આ પરિસ્થિતિ મળ્યા છે, તો શરીર આ લૂપ ચલાવવા આવશે. 95 00:05:34,860 --> 00:05:36,860 પછીથી, સુધારા ચલાવવા આવશે. 96 00:05:36,860 --> 00:05:40,900 આ પરિસ્થિતિ હજુ પણ મળ્યા છે, તો લૂપ ચલાવવા અને સુધારવી, અને કરશે 97 00:05:40,900 --> 00:05:45,820 સુધી તમારા શરત તરીકે, પુનરાવર્તન સાચું મૂલ્યાંકન. 98 00:05:45,820 --> 00:05:51,080 >> અહીં એક વિભાજન કે "માટે" લૂપ છે 2 10 વખત એક કુલ દ્વારા પૂર્ણાંક પૃ. 99 00:05:51,080 --> 00:05:55,380 હું પૂર્ણાંક પૃષ્ઠ જાહેર કેવી રીતે નોંધ મારા "માટે" લૂપ બહાર, જેથી 100 00:05:55,380 --> 00:05:59,850 પૂર્ણાંક સુલભ હોઈ શકે છે આ "માટે" લૂપ બહાર. 101 00:05:59,850 --> 00:06:03,620 મહિનાના પસાર થઈ જાય પછી, તે સમય છે વપરાશકર્તા કહેવું કેટલું મની 102 00:06:03,620 --> 00:06:04,790 તેઓ મેળવેલ કર્યું છે. 103 00:06:04,790 --> 00:06:08,740 જો ઉલ્લેખનું દીઠ, તમે વપરાશકર્તા કહેવું જરૂર કેટલા ડોલર, બિન કેટલા 104 00:06:08,740 --> 00:06:10,780 પેનિઝ, તેઓ ધરાવે છે. 105 00:06:10,780 --> 00:06:14,620 પરંતુ અત્યાર સુધી, તમે ટ્રૅક રાખવામાં કર્યું કુલ અને LongLongs મદદથી પેનિઝ, 106 00:06:14,620 --> 00:06:16,640 સમગ્ર નંબરો જે હોય છે. 107 00:06:16,640 --> 00:06:20,560 >> $ 1 માટે 100 પેનિઝ, તેથી ત્યાં ન હોય તો પેનિઝ સંખ્યા છે 108 00:06:20,560 --> 00:06:24,860 100 બહુવિધ, તમે જરૂર પડશે દશાંશ સ્થળ પર આધારિત છે. 109 00:06:24,860 --> 00:06:28,060 આ બમણું તૈયાર કરેલી આબેલૂબ નકલ કરવાની પરવાનગી આપે છે તમે આ કરવા માટે. 110 00:06:28,060 --> 00:06:32,790 તેથી અમે કેવી રીતે રજૂ માંથી રૂપાંતરિત નથી ડોલરની પેનિઝ? 111 00:06:32,790 --> 00:06:35,330 >> માતાનો એક નજર કરીએ pi.c. 112 00:06:35,330 --> 00:06:41,690 આ કાર્યક્રમ એક LongLong big_pi અને લે 100,000 દ્વારા તે વિભાજન, અને છાપે છે 113 00:06:41,690 --> 00:06:44,270 પાંચ દશાંશ સ્થળોએ પરિણામ. 114 00:06:44,270 --> 00:06:48,560 અમે ચાર દશાંશ પ્રદર્શિત કરવા ઈચ્છતો હોય તો સ્થાનો, તો પછી આપણે આ બદલી શકો છો 115 00:06:48,560 --> 00:06:49,760 અહીં નંબર. 116 00:06:49,760 --> 00:06:58,370 તેથી માતાનો, સેવ પાઇ કમ્પાઇલ, અને દો પછી, પરિણામ જુઓ જે અમે 117 00:06:58,370 --> 00:07:02,240 3,1415 રહેવાની અપેક્ષા - 118 00:07:02,240 --> 00:07:04,540 પાઇ પ્રથમ પાંચ અંકો. 119 00:07:04,540 --> 00:07:06,300 >> તે છતાં નથી. 120 00:07:06,300 --> 00:07:07,390 અને શા માટે? 121 00:07:07,390 --> 00:07:11,920 વેલ, big_pi, એક LongLong છે કારણ કે સમગ્ર નંબર છે, કે જે છે, જે ન ચાલશે 122 00:07:11,920 --> 00:07:13,740 દશાંશ ટ્રેક રાખો. 123 00:07:13,740 --> 00:07:16,850 હું જરૂર ફેરફાર બનાવવા આ વિભાગ છે. 124 00:07:16,850 --> 00:07:23,300 હું પહેલાં અહીં ડબલ માટે પડેલા જરૂર ડબલ્સમાં ન રાખી શકો, કારણ કે ભાગાકાર 125 00:07:23,300 --> 00:07:25,260 દશાંશ સ્થળ ટ્રૅક. 126 00:07:25,260 --> 00:07:28,080 અને હું એક નવી લીટી ઉમેરો કરવા જઇ રહ્યો છું અહીં સારી ફોર્મેટિંગ માટે. 127 00:07:28,080 --> 00:07:33,090 128 00:07:33,090 --> 00:07:34,230 >> અને અહીં અમે તે છે - 129 00:07:34,230 --> 00:07:37,660 3,1416. 130 00:07:37,660 --> 00:07:43,520 તમે તેને 3.1416 છાપે છે કે નોટિસ શકે છે તેના બદલે 3,1415 ના અપેક્ષા. 131 00:07:43,520 --> 00:07:47,550 દરમિયાન, કારણ કે તે મંત્રણા કે વિભાગ પ્રક્રિયા તરીકે, માત્ર વિરોધ 132 00:07:47,550 --> 00:07:50,490 મૂલ્ય કપાય છે. 133 00:07:50,490 --> 00:07:53,710 હવે તમે છાપવાનો સમક્ષ રજુ કરવાનો પ્રયત્ન કરીશું સમાપ્ત જે યોગ્ય રીતે અંતિમ કુલ 134 00:07:53,710 --> 00:07:54,870 કાર્યક્રમ. 135 00:07:54,870 --> 00:07:55,930 >> અભિનંદન. 136 00:07:55,930 --> 00:07:57,340 મારું નામ Zamyla છે. 137 00:07:57,340 --> 00:07:58,720 અને આ પેનિઝ હતી. 138 00:07:58,720 --> 00:08:05,589 >> [સંગીત વગાડવાનો]