[Powered by Google Translate] [3 અઠવાડિયું] [ડેવિડ જે Malan - હાર્વર્ડ યુનિવર્સિટી] [આ CS50 છે. - CS50.TV] મને અમને જ્યાં અમે બોલ છોડી છેલ્લા સમય દિશામાં વાછરડો, જે થોડી સિન્ટેક્ષ વિશે કરતાં વધુ વિચારવું શરૂ કરવામાં આવી હતી અને minutiae તમામ વિશે થોડી ઓછી લાગે છે કરવાનો પ્રયાસ તે સમયે એક બીટ લે સેમિકોલન્સ દ્રષ્ટિએ આમ દૂર કરવા માટે acclimate અને કૌંસ અને સર્પાકાર કૌંસ, વસ્તુઓ લેવા માટે ઉચ્ચ પ્રત્યયાત્મક સ્તર થોડો શરૂ જેથી આ સમસ્યા હવે અમે આગામી ઘણાં અઠવાડિયા હલ શરૂ છે ઊંચુ સ્તર પ્રત્યયાત્મક સમસ્યાઓથી માં વધારે સમાવેશ જઈને અને syntactical માં ઓછા બીટ તરીકે તમે તમારા પગ વિચાર ભીની અને તમારા હાથ આ છેલ્લા થોડા અઠવાડિયા ના વાક્યરચના કેટલાક ગંદા. તેથી જણાવ્યું હતું કે ગયા અઠવાડિયે આપણે ઝાકઝમાળ આ ખ્યાલ રજૂ કર્યો હતો. અને ઇંગલિશ એક એરે શું તરીકે વર્ણવી શકાય? >> [અશ્રાવ્ય વિદ્યાર્થી જવાબ] માફ કરશો? સંગ્રહ? >> [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> ઠીક છે, સારુ. વસ્તુઓ સંગ્રહ. તેથી અમે સ્ક્રેચ માં એરે જોવા મળી હતી. જો તમે pset માટે 0 હિસ્સો સ્ક્રેચ યાદીઓ એક કે તમે વસ્તુઓ ખેંચી શકો છો ઉપયોગ થયું માં, પ્રકારની એક યાદી અને નારંગી રંગ કેળા જેમ, કે જે એરે શું છે જેવા પ્રકારની છે. અને પછી વધુ તકનિકી, એક વાસ્તવિક કમ્પ્યુટર સંદર્ભમાં, ઝાકઝમાળ માત્ર મેમરી એક સંલગ્ન ભાગ છે. બીજા શબ્દોમાં કહીએ તો, તમે બાઇટ હોય, તો પછી અન્ય બાઇટ, પછી અન્ય બાઇટ, પછી અન્ય બાઇટ, અને જો તમે એક ચિત્રમાં તે બાઇટ્સ દોરવા હતા, તેઓ પાછા પ્રયત્ન કરવા માટે પાછળ પાછળ પાછળ આવશે. કે અમે શું સંલગ્ન દ્વારા થાય છે. તેથી તે બાઇટ નંબર 1, પછી 2, પછી 3 છે. તે અહીં અર્થ એ નથી અહીં, અહીં અહીં. ઝાકઝમાળ 0 અથવા વધુ બાઇટ્સ એક સંલગ્ન ભાગ છે. તેથી તેઓ શું છે ઉપયોગી માટે? રિકોલ અમે કાર્યક્રમ માં સંગ્રહવા લોકોની ક્વિઝ ગ્રેડ contrived ઉદાહરણ આ પ્રકારની હતી કેટલાક કોર્સ માટે તમારા ક્વિઝ સરેરાશ ગણતરી યાદ છે અને તે અમે તે પ્રોગ્રામ લખવાની એક ચલ quiz1 જાહેર કરીને શરૂ કરી શકે છે. તો પછી અમે અન્ય quiz2 કહેવાય ચલ કરી શકે છે. પરંતુ પછી જો ત્યાં 3 હતા ક્વેસ્ચન આ વર્ગમાં, quiz4. અથવા જો ત્યાં એક સાપ્તાહિક ક્વિઝ હતું, તે quiz5 હોઇ શકે છે, quiz6 છો, quiz7. તેથી તમે હશે આ ચલો તમામ મુખ્ય અંદર જાહેર અથવા બીજે ક્યાંક તમારું કાર્યક્રમ માં, અને તે અભિગમ સાથે સમસ્યા, સરળ છતાં તેને માત્ર કૉપિ કરો અને પેસ્ટ કરો છે, છે તે માત્ર ખૂબ જ ઝડપથી અતિભારે બની જાય છે. ભગવાન મનાઈ ફરમાવવી તમે ખરેખર 30 અંગેની ક્વિઝ અથવા 50 ક્વેસ્ચન છે. જો તે હાઇ સ્કૂલ શૈલી દૈનિક પોપ ક્વિઝ જેવું છે, પછી તમે હમણાં ચલો જાહેર કરવામાં આવી રહી છે એક હાસ્યજનક રીતે લાંબી યાદી હોય છે, અને આ માત્ર ખૂબ જ ઝડપથી આઉટ ઓફ કંટ્રોલ નોંધાયો નહીં. તે બેડોળ છે, તે મુશ્કેલ જાળવવા, તે ખૂબ જ સરળ છે લખતી વખતની ભૂલો કરી જો તમે વિચાર નંબર 1 તમારા કાર્યક્રમ ક્યાંક mistyped. તેથી અમે એક એરે વિચારને બદલે રજૂઆત કરી હતી. યાદ અને કે જે આપણે આ જેવી થોડી આવું દ્વારા આ કાર્યક્રમ અમલમાં મૂકી. મને આજના સોર્સ 3 સોમવારે ડિરેક્ટરીમાં જાઓ અને એરે, જે અમે છેલ્લા સમય જોયો ખોલો. અને છતાં પણ ત્યાં નવા C યુક્તિઓ એક દંપતિ અહીં હતા, તેમની વચ્ચે સતત કલ્પના, યાદ છે કે અમે બહુવિધ ફ્લોટ્સ આ વાક્યરચના ઉપયોગ કરીને આવશ્યક જાહેર: ફ્લોટ, પછી ચલની નામ, તો પછી અમે ચોરસ કૌંસ ખરેખર ઉપયોગ પ્રથમ વખત, અને આપણે જે તે ચોરસ કૌંસ ની અંદર હતી અસરકારક નંબર મૂકવામાં આવ્યું હતું. પરંતુ નંબર મૂકવા બદલે હું આ કેપીટલ શબ્દ, ક્વેસ્ચન મૂકો. અને શું ક્વેસ્ચન જેવા કેપીટલ શબ્દ મૂકવા માટે પ્રેરણા હતી અને પછી વાક્ય હિસ્સો 17 યુક્તિ નો ઉપયોગ કરીને અહીં વાસ્તવમાં કે જે નંબર આપો છો? ત્યાં પ્રેરણા શું હતો? યાહ. [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] ચોક્કસ. >> જો અમે તે કિંમત 2 બદલવા માંગો છો, તો અમે તેને માત્ર એક જ સ્થળ 1 માં બદલી છે કારણ કે વિચારણા - હું પણ આ કાર્યક્રમ શું બરાબર કર્યું યાદ નથી, પરંતુ જો તમે તેને મલાઈહીન તમે ક્વેસ્ચન જુઓ, ક્વેસ્ચન. તમે જુઓ છો તે અંગેની ક્વિઝ નીચે અહીં વધુ ક્વેસ્ચન. તેથી જો આપણે આ સતત ન હતા, તીક્ષ્ણ આ ઉપયોગ વ્યાખ્યાયિત કરવા માટે, અમે 2 લખ્યો હશે, 2 પછી, 2 પછી, 2, તો પછી જે દંડ છે. તે જ સાચું હશે. પરંતુ તે પછીના વર્ષે ધારવું અમે CS50 માં 3 ક્વેસ્ચન છે. તેથી હું પર જાઓ અને કોડ અપડેટ હોય છે, હું તેને પુનઃકમ્પાઈલ હોય છે, પરંતુ સમસ્યા જો હું મૂર્ખ કંઈક છે, જેમ કે હું 2 ના 1 ઉલ્લેખ અવગણવું અને 3 માં પ્લગ ઇન ભૂલી ગયા હો, સમગ્ર કાર્યક્રમ ખૂબ જ સારી તોડી શકે છે. તેથી અમે માત્ર મુશ્કેલી માટે કહીએ છીએ. તેથી સતત કલ્પના માહિતી અમુક ભાગ બહાર ફેક્ટરિંગના વિશે બધા છે, પછી ભલે તે સ્ટ્રિંગ અથવા ચાર રચે છે અથવા ફ્લોટ અથવા જે છે, અને તે 1 સ્થળ જાહેર છે કે જેથી તમે વધુ ઝડપથી તેને ભવિષ્યમાં બદલી શકો છો. અને તે પણ છે, પ્રમાણિકપણે, એક બીટ વાંચવામાં સરળ છે કારણ કે જો તમે માત્ર આ હવે વિચારો, તે અંગેની ક્વિઝ છે, અથવા આપણે પણ તે NUMBER_OF_QUIZZES જેવી શકે કંઈક નામ બદલો અથવા વધુ સ્પષ્ટ કંઈક. આ કોડ થોડી વધારે તે શું કરી રહ્યો છે માટે સ્પષ્ટ બને છે, અને તમે થોડા ઓછા 2 નંબર શું અર્થ થાય શકે આશ્ચર્ય. સતત તેથી સંગ્રહ સાથે મૂળભૂત કરવાનું કંઈ હતી. એરે આ ચોરસ કૌંસ માર્ગ દ્વારા કરવામાં આવી હતી. , તેથી નોંધ્યું છે કે 23 વાક્ય આપણે વપરાશકર્તા પૂછે છે કે "તમારા ક્વિઝ સ્કોર્સ શું હતા?" તો પછી અમે ફક્ત આ લૂપ જે દેખીતી રીતે તેમની ગ્રેડ માટે વપરાશકર્તા પૂછે છે. કેવી રીતે? તે 0 થી માટે 2 iterates. અને હું 2 કહેવું કારણ કે તમામ કેપ્સ માં ક્વેસ્ચન હાલમાં 2. તેથી તે 0 થી અપ માટે 2 iterates અને પછી તેને છાપે બહાર # વસ્તુની કંઈક કિવઝઃ, અને પછી તેને GetFloat ઉપયોગ વપરાશકર્તા તરફથી એક મૂલ્ય છે. તેથી નોટિસ આ માત્ર છેલ્લા બુધવારે અન્ય વાક્યરચના નવા ભાગ છે. જો તમે તે એરે ચોક્કસ સ્થાન કંઈક સંગ્રહવા માંગો છો, તમે ફરીથી ચોરસ કૌંસ વાપરો. તેથી બંને જૂથના થોડી અહીં છે. પ્રથમ વાર તમે કુલ સ્કોર કૌંસ ઉપયોગ તમે તેને સ્પષ્ટ કરવા માટે મોટું તમે કેવી રીતે એરે પ્રયત્ન કરવા માંગો છો વાપરો. પરંતુ આ આગામી અહીં સંદર્ભ જ્યાં અમે ફરીથી આ ચોરસ કૌંસ કામ તેનો અર્થ છે કે અરે તમે કેટલાક કિંમત મૂકવા માંગો છો? અને અહીં તફાવત સંદર્ભમાં અનુમાન લગાવી લીદું શકાય છે. અહીં નોટિસ અમે દશાંશ માહિતી પ્રકાર હોય, તો પછી અમે એક ચલ ના નામ હોય છે, તો પછી અમે અંદર, અર્ધવિરામ એક નંબર સાથે અમારી ચોરસ કૌંસ છે. આ તે છે. જેથી ઘોષણા છે. તે જ છતાં અમે grade1 ફ્લોટ કંઈક કર્યું હતું; grade2 ફ્લોટ; પરંતુ ફરીથી, આ ખૂબ જ ઝડપથી રસ્તો ખૂબ જ નકલ, પેસ્ટ devolves, તેથી તેના બદલે અમે માત્ર તે જેમ કે સરળ, જેનો અર્થ છે કે હવેથી અમે ગ્રેડ છે કે 0 કૌંસ અંતે સંગ્રહ કરી શકાય છે, આપણે બીજું ગ્રેડ છે કે 1 કૌંસ અંતે સંગ્રહ કરી શકાય છે, પરંતુ હું goof જો અને, ઉદાહરણ માટે, મારા લૂપ અત્યાર સુધી જાય છે - દાખલા તરીકે, હું આ કરતાં ઓછી અથવા સમાન બનાવે છે, સ્મૃતિ કે જે પહેલાંના ભૂલ સ્ત્રોત હતો - જે અસરકારક રીતે આ લૂપ કેટલાક તૃતીય આકસ્મિક પુનરાવૃત્તિ પર તેનો અર્થ એ કે હું 2 કૌંસ વાપરો. અસરકારક રીતે, શું અહીં થાય શકે છે? માફ કરશો? [વિદ્યાર્થી] તે બદલાઈ રહ્યું છે. >> તેને બદલી શકાય રહ્યું છે? શું બદલી શકાય છે? આ શાબ્દિક કહેતા છે બદલો શું GetFloat પરત કિંમત સાથે 2 સ્થાન પર છે. પરંતુ સમસ્યા મોટી કેવી રીતે વાર્તામાં આ બિંદુએ એરે છે? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> આ એરે 2 કદ માત્ર હજુ એરે કારણ કે, કોઈપણ ચલ જેમ, પ્રથમ જાહેર કરવામાં આવી તે પહેલા આપણે તેનો ઉપયોગ, અને અમે આ સતત કે હું 2 ગ્રેડ કે હું મૂકી જાઉં છું હોય કારણ કે અહીં સ્પષ્ટ કરેલ છે. પરંતુ યાદ રાખો, કમ્પ્યૂટર વૈજ્ઞાનિકો 0 થી ગણતરી શરૂ કરો. જેથી એરે માં પ્રથમ સ્થાન 0 કૌંસ છે. આગામી સ્થાન 1 છે. આ વસ્તુ અત્યાર સુધીમાં સહેજ બાજુ પર ખૂબ દૂર છે. તેથી અન્ય શબ્દોમાં, જો હું ખરેખર આ એરે હતી - દો અને મને જોવા સાથે આ કેવી રીતે આપણા માટે અહીં સહકાર - જો હું ઝાકઝમાળ છે કે હું ફક્ત નીચે પ્રમાણે કર્યું છે દોરવામાં અને હું 2 તત્વો માટે જગ્યા ફાળવવામાં કર્યું છે, હું મેમરી આ જેવી આ દોરે જ્યાં આ મોટું સફેદ કેનવાસ છે. તે ફક્ત RAM હું મારું કમ્પ્યુટર હોય, RAM ની એક જહાજની નાની હોડી, RAM ની 2 શોના છે, ગમે, પરંતુ આ 2 બોક્સ હવે વ્યક્તિગત રીતે એક ફ્લોટ, 32 બિટ્સ પ્રતિનિધિત્વ કરે છે. તેથી જો હું 1.0 જેમ નંબર 1 અહીં મૂકો, તો પછી હું બીજા નંબર અહીં મૂકો 3.2 જેવી પરંતુ પછી હું 2 કૌંસ છે, કે જે કંઈક અહીં મૂકવા જેવું છે શું. અને તરીકે ચિત્ર સૂચવે છે, ત્યાં કંઇ ત્યાં છે. તે નધણિયાતી જમીન જેવા પ્રકારની છે કારણ કે હું ઓપરેટિંગ સિસ્ટમ પૂછ્યું છે મને આ તૃતીય ક્વિઝ આપે છે. જો હું કે તૃતીય ક્વિઝ માંગો છો કર્યું, હું અગમચેતી હતા જોઈએ માટે જાહેર કરીને તેના માટે ઓપરેટિંગ સિસ્ટમ માટે કહી 2 ન હોવી ક્વેસ્ચન પરંતુ તેના બદલે 3 જેટલી છે. તેથી અન્ય શબ્દોમાં કહીએ તો, ચિત્ર કે અમે અસરકારક રીતે હાથ પર હોય છે અને આ જેવા અહીં દેખાય છે. આ ફરીથી નધણિયાતી જમીન છે. અમે વધુ સારી કરવાનો પ્રયાસ કરશો કિંમતો અહીં લખી. પરંતુ ફરીથી, કારણ કે કમ્પ્યુટર વૈજ્ઞાનિકોનું 0 થી ગણતરી, જ્યારે અમે એરે આ સ્થાન વિશે વાત કરે છે કે જે 0 સ્થાન હશે તેવું માનવામાં આવે, આ માટે 1 સ્થાન હશે તેવું માનવામાં આવે છે, અને આ પણ અસ્તિત્વમાં નથી કારણ કે અમે ફક્ત 2 જેવા સ્થાનો માટે ઓપરેટિંગ સિસ્ટમ કહ્યું હતું. અન્ય ભાષાઓમાં પહેલાં પ્રોગ્રામિંગ અનુભવ સાથે તમે તે જેથી ખબર છે કે હંમેશા એરે અથવા વસ્તુઓ વેક્ટર્સ નામના સાથે કેસ નથી શકે છે. તેના બદલે, તમે માત્ર ઉમેરવા અને ઉમેરવા અને એરે વસ્તુઓ ઉમેરી શકો છો, જે, પ્રમાણિકપણે, અમે સ્ક્રેચ કે ક્ષમતા હતી અને હજુ સુધી આપણે તેને આપી છે અહીં જણાય છે C સાથે કારણ કે તમે વધુ સ્પષ્ટ રીતે પ્રોગ્રામિંગ છે. તે માત્ર તમે અને કમ્પ્યૂટર હમણાં, અને કમ્પ્યુટરથી માત્ર કરવા જઈ રહ્યો છે તમે તે કહેવું પડે છે. તેથી જો તમે માત્ર તે કહેવું તમે 22 લીટી માર્ગ દ્વારા 2 ફ્લોટ્સ આપવા અહીં, 2 માટે જગ્યા કે બધા તમે ઓપરેટિંગ સિસ્ટમ માંથી પાછી મેળવવા જઈ રહ્યાં છો છે. તેથી વધુને તમારી કાર્યક્રમો માટે ક્યારેક ક્યારેક એરે બાબતે બગડેલ હશે આવે છે. આ પશુ પ્રકાર ફક્ત જેવું છે જેમાં અમને તમામ ભૂલને પાત્ર હોય છે, અને અમુક બિંદુએ તમે તમારા ઍરેની સીમા બહાર ખૂબ જ સંભવ અનુક્રમણિકા છે. અને જે હમણાં જ કહેતા ફેન્સી રીતે તમે કૌંસ કંઈક ગયા છે અને કંઈક માત્ર ખૂબ સંખ્યાબંધ મોટી હતી. તમે તમારા એરે ફરી વસ્તીની સીમાથી દૂર થયું. પરંતુ ઊંધો હવે આ છે. આ કાર્યક્રમ બાકીના ખરેખર મૂળભૂત કંઈ એરે સાથે કરી છે. તે કમ્પ્યુટિંગ સરેરાશ માટે કેટલાક સરળ અંકગણિત વિશે માત્ર બધા છે. તેથી અમે અહીં પ્રથમ લૂપ એક ચલ કહેવાય રકમ કે અમે 0 થી પ્રારંભ માટે આ અહીં છે. તો પછી અમે 0 થી અપ માટે 2 ફરી ફરી વળવું અને અમે તે શ્રેઢી ચલ ઍડ આ ઇથ ગ્રેડ છે, તેથી કૌંસ 0 પછી 1 કૌંસ. અને પછી તમે જેમ ગ્રેડ શાળામાં કરવું સરેરાશ ગણતરી કરશે, અમે ફક્ત કે જે રકમ લે છે, તે ક્વેસ્ચન કુલ સંખ્યા દ્વારા વહેંચી અને પછી સારા પગલા અમે અહીં કાર્ય રાઉન્ડ કહેવાય કૉલ કરો. હવે, એક અલગ તરીકે, 34 લીટી પર આ parenthetical પૂર્ણાંક સાથે સોદો થયો છે? તે આવ્યા શકે વિભાગમાં પહેલેથી જ ખરેખર તે વિશે વાત કરી છે ઔપચારિક અહીં, પરંતુ parens કદાચ કરવાથી આ પૂર્ણાંક શું છે? >> [અશ્રાવ્ય વિદ્યાર્થી જવાબ] અરે વાહ, આ કાસ્ટિંગ અથવા ટાઇપકાસ્ટિંગ ઉલ્લેખ કરે છે, જેનો અર્થ છે કે 1 દશાંશ માહિતી પ્રકાર લેતી અને તેને બીજી રૂપાંતરિત. તમે આ બધી માહિતી પ્રકારના નથી કારણ કે ઘણી વખત તેને થોડી વિચિત્ર હશે કરી શકો છો. પરંતુ આ કિસ્સામાં, જો રાઉન્ડ પરત કિંમત ફ્લોટ છે કારણ કે, તમામ બાદ, હું એક ફ્લોટ લઈ રહ્યો છું અને 2 જેમ તે નંબર દ્વારા ભાગાકાર, હું ફરી એક ફ્લોટ વિચાર જાઉં છું. પરંતુ ગ્રેડ શાળા લોકો ખરેખર ખબર છે કે તેમના સરેરાશ 93.4 હતો ગમતું નથી કારણ કે તેઓ ખ્યાલ પડશે તેઓ ક્યારેય હતા જેથી 95 rounding બિંદુ નજીક છે. તેથી અમે તેને બદલે પૂર્ણાંક વાપરવા માટે નજીકના int પર દરેકને ધરપકડ કરવા માંગો છો, આ કિસ્સામાં જે તે પછી કોઈ પોઇન્ટ સાથે 94 પ્રયત્ન રહ્યું છે. જેથી થોડી ગાણિતિક યુક્તિ છે. અને અમે પાછા કાસ્ટિંગ આ ખ્યાલ આવવા કારણ કે તે અસરો પડશે પડશે, જો તમે પહેલાથી જ નથી મળી આવ્યા છે, સમસ્યા માટે 2 સુયોજિત કરો. પછી એરે તેથી, તમે વિચાર કરી શકો છો - તે બનાવવા માટે મને બધા દિવસ સ્મિત બનશે. તે આના જેવું દેખાય છે જો તમે તેને એક ચિત્ર દોરે, પરંતુ કી છે કે જે કદ પણ તમે પસંદ કરેલ છે જ્યારે તમે તે ઓપરેટીંગ સિસ્ટમ માંથી વિનંતી છે. કોઈપણ પછી પ્રશ્નો એરે પર? યાહ. [અશ્રાવ્ય વિદ્યાર્થી પ્રશ્ન] આહ, સારો પ્રશ્ન. તો પ્રશ્ન એ છે કે શું એરે માં નલ 0 થી થાય છે? આ સંદર્ભમાં અસ્તિત્વમાં નથી. કે માત્ર શબ્દમાળાઓ, જે અમે કરી રહ્યાં છો તેમાં માત્ર એક ક્ષણ માટે આવે છે સંદર્ભમાં અસ્તિત્વમાં છે. પરંતુ એક એરે માટે, આ કિસ્સામાં, બધા તમે વિચાર છે કે તમે શું માટે ઓપરેટિંગ સિસ્ટમ પૂછો. અને એક અલગ રીતે, કદાચ આ અસ્પષ્ટ હોઈ તરીકે, હું કહેતા તમે ઓપરેટિંગ સિસ્ટમ પૂછો રાખવા માટે, ઓપરેટિંગ સિસ્ટમ પૂછો. ઓપરેટિંગ સિસ્ટમ, તો તમે કદાચ જાણતા તરીકે, મેક ઓએસ, વિન્ડોઝ, લિનક્સ છે. જ્યારે તમે GetFloat જેવા કાર્યો કૉલ કરી રહ્યાં છો અથવા તમે ગ્રેડ જેવા ચલો જાહેર કરવામાં આવે છે, દિવસ ના અંતે તમે અસરકારક રીતે કોઈએ છે કે જે તમને મેમરી આપવા માટે પૂછે છે કારણ કે અમે તરીકે પ્રોગ્રામરો મહત્વાકાંક્ષી આ બોલ પર કોઈ વિચાર કેવી રીતે વાસ્તવમાં મેમરી ભૌતિક વપરાશ મેળવવા માટે હોય છે. ઓપરેટિંગ સિસ્ટમ: પરંતુ કોઈને કરે છે. તેથી ઉપરાંત અમને ખૂબ ચિહ્નો અને મેનુઓ અને ફોલ્ડર્સ સાથે પ્રસ્તુત છે અને જેમ કે જે તમે તમારા ડેસ્કટોપ પર મેક અથવા પીસી કે શું, જુઓ, ઓપરેટિંગ સિસ્ટમો પણ નીચા સ્તરે ભૌતિક સામગ્રી કરવા માટે, આ gigabyte વ્યવસ્થા ઉચ્ચ તકનીકી સામગ્રી અથવા મેમરી 2 ગીગાબાઇટ્સ કે તમારી પાસે, CPU કે તમારી પાસે વ્યવસ્થા કરવા માટે, અને તેથી આગળ. એટલે જ્યારે તમે કોડ લખી રહ્યાં તમે ખરેખર તમારી ઓપરેટિંગ સિસ્ટમ માટે કરી રહ્યાં છો તે અર્થમાં hooking. હું કે ઘટાડવા હોય જાઉં છું. અધિકાર છે. એરે વિશે અન્ય પ્રશ્નો છે? નહીં? ઠીક છે. તેથી સંક્રમણ એરે માંથી કુદરતી વિષય છે કે જે બીટ પરિચિત કરવા માટે વાસ્તવમાં છે. અને અમે અત્યાર સુધીમાં થોડા સમય જોવામાં પણ આ છેલ્લા સમયે. આ બુધવારે એક શબ્દમાળા ઉદાહરણ હતા. આ શબ્દમાળા ઉદાહરણ એક સુંદર, સરળ કાર્યક્રમ હતો, અને હું ખરેખર આજે હેતુઓ માટે રેખાઓ એક દંપતી દ્વારા કર્યું છે કે તે સરળ. બધા તેને 19 લીટી માં કરે વપરાશકર્તા માંથી શબ્દમાળા મેળવવા છે, તે ઓ કહેવાય ચલ માં સંગ્રહે છે. પછી રેખા 22 આગળ તે દેખીતી રીતે લાઇન દીઠ છે કે જેઓ શબ્દમાળા 1 અક્ષર છાપવા છે. પરંતુ તે કેવી રીતે આવું થાય છે? અમે એક ચલ હું જાહેર કરી રહ્યાં છો, તે સુયોજિત 0 ની સમાન, અને આ જૂના આદત હવે બની રહ્યું છે. અમે આ બુધવાર સુધી જોવા મળી ન હતી, પરંતુ તમે અટકળ બાંધવી તેના નામ પરથી પ્રકારની કરી શકો છો strlen માત્ર શું આપે છે જ્યારે ઓ આપવામાં? શબ્દમાળા લંબાઈ. તેથી જો હું તે સ્ટ્રિંગ, ક્વોટ-અવતરણ ચિહ્નો પૂરાં કરવાં ડેવિડ પાસ, તે આસ્થાપૂર્વક મને ડેવિડ કારણે 5 નંબર પરત ચાલી રહ્યું છે. તેથી કે જીવનમાં તેની હેતુ માટે શબ્દમાળા લાગી છે કે શું તમે હાર્ડ દ્વારા કોડેડ અથવા આ કેસમાં ચલ તરીકે એક દલીલ તરીકે, પ્લગ, અને તેને આધાર છે કે જેઓ શબ્દમાળા લંબાઈ શું છે. અહીં હવે આપણે અગાઉના ક્વિઝ ઉદાહરણ માંથી કેટલીક નોટેશનમાં ઉધાર કરી રહ્યાં છો. આ ફ્લોટ્સ સાથે કરવાનું કંઈ નથી, માટે ક્વેસ્ચન સાથે કરવાનું કંઈ નથી, પરંતુ તે તારણ છે કે જે થોડું સફેદ જૂઠ અમે 1 સપ્તાહ થી થઈ તમે કહેવાની સી છે કે જે શબ્દમાળા ખરેખર અસ્તિત્વમાં નથી દિવસ અંતે શબ્દમાળા ખરેખર માત્ર ઝાકઝમાળ છે. તે બાઇટ્સ ઝાકઝમાળ, જેથી બાઇટ, બાઇટ, બાઇટ, બાઇટ, સ્મૃતિ, જે માત્ર 8 બીટ્સ છે છે, જેથી મેમરી ભાગ, મેમરી ભાગ, મેમરી ભાગ, મેમરી ભાગ. અને એટલે કે શબ્દમાળા અમલમાં મૂકાયેલ છે પ્રથમ અક્ષર અહીં મૂકી છે, પછી અહીં, પછી અહીં પછી અહીં, માટે કોમ્પ્યુટરની મેમરીમાં બેકઅપ બેકઅપ નહીં. તેથી જો તમે હેલો જેવો શબ્દ ઉચ્ચાર માગતા હતા, તમે 1 અક્ષર એચ મૂકવામાં આવશે, પછી ઇ, પછી એલ પછી એલ, પછી O - કુલ 5 અક્ષરો - ક્યાંક તમારા કમ્પ્યુટરની રેમ છે. પરંતુ કી અહીં વિગતવાર છે કે તેઓ પાછા પ્રયત્ન કરવા માટે પાછળ પાછળ પાછળ જઈ રહ્યાં છો, અધિકાર એક બીજા આગામી. જ્યારે જ્યારે હું કહી ઓ [i], ઇંગલિશ માં આ શું મને આપ્યા છે? ઓ [i] શું નથી આ કિસ્સામાં પ્રતિનિધિત્વ? યાહ. શબ્દમાળા માં ઇથ પાત્ર [વિદ્યાર્થી]. ચોક્કસ. >> શબ્દમાળા માં ઇથ પાત્ર. હવે, હું મારા દીઠ તરીકે 0 શરૂ લૂપ માટે અહીં રહ્યું છે, પરંતુ તે સારી છે કારણ કે બધું 0 થી ગણતરી શરૂ થાય છે. ઓ તેથી [0] માટે એક શબ્દ માં અક્ષર એચ પ્રતિનિધિત્વ હેલો જેવા રહ્યું છે, ઓ [1] હેલ્લો જેવો શબ્દ માં ઇ જેવા પત્ર પ્રતિનિધિત્વ રહ્યું છે, અને તેથી આગળ. અને અમે આ લૂપ દરેક ઇટરેશન પર કરી હોવાનું જણાય છે શું છે કામચલાઉ ધોરણે કેચ કહેવાય ચલ માં ઇથ અક્ષર સ્ટોર છે, જે માત્ર ચાર રચે છે, અને પછી અમે કેચ છાપવા કરી રહ્યાં છો જેથી દિવસ આ કાર્યક્રમ શું કરે ઓવરને અંતે નીચેના છે. જો હું સ્રોત ડિરેક્ટરીમાં જાવ અને હું string1 કરો અને હું આગળ વધો અને string1 ચલાવવા માટે, અને પછી હું હેલો દાખલ કરો, જેમ શબ્દ લખો, બધા તેને એક સમયે આ 1 અક્ષર છાપો. તેથી ત્યાં સંસ્કારિતા માટે તક અહીં છે. હું વધારે કામ કરવાથી પ્રકારની છું, છતાં પણ તે વધુ સ્પષ્ટ કદાચ આ રીત છે જરૂરી કરતાં. અહીં કોડ વાક્ય કે જે હું કદાચ દૂર એકસાથે ફેંકવું કરી શકે છે? યાહ. 24 લાઇન. 24 લીટી માં હું એક ચલ કેચ જાહેર છું. હું તેને ઓ ના ઇથ અક્ષર સ્ટોર છું, પરંતુ પછી હું કેચ ઉપયોગ કરું છું અહીં. તેથી હું કેચ ઉપયોગ કરું છું, તેથી મને લાગે છે કે હું હમણાં જ વાક્ય 24 દૂર નથી ફેંકતા કરી શકો છો. [અશ્રાવ્ય વિદ્યાર્થી ટિપ્પણી] ચોક્કસ. >> તેથી તે જ્યારે કાર્યક્રમોની ડિઝાઈન વિશે વાત કરવા માટે આવે છે, કોડ આ થોડો સરળીકરણ છે, કે જે માત્ર વાંચી શકાય છે નોટિસ, પરંતુ લાગે છે કે ઓ માત્ર એક પરિબળ છે, તેના પ્રકાર માહિતી ઝાકઝમાળ છે, ઓ જેથી [i] માત્ર તુરંત જ તમને કે જેઓ શબ્દમાળા માં ઇથ અક્ષર પર પાછા જઈ રહ્યું છે. અને જો તમે તેને છાપી કરવા માંગો છો, તે દંડ છે. તમે માત્ર% C ઉપયોગ કારણ કે તમે એક શબ્દમાળા મળે નહિં છાપવા કરી રહ્યાં છે, તમે શબ્દમાળા એક પાત્ર છાપવા છીએ, અને આ ખૂબ ઇથ અક્ષર છાપવા અસર ધરાવે છે. અને માત્ર તફાવત ખરેખર printf ઉપયોગ છેલ્લા સપ્તાહના યાદ છે કે અઠવાડિયામાં જ્યારે ભૂતકાળમાં આપણે સુપર સરળ કંઈક કરશે આ% s પ્લેસહોલ્ડર જેમ પછી અહીં શબ્દમાળાને નામ, હવે અમે થોડી હૂડ નીચે ઊંડા માં ડાઇવિંગ છો અને જણાવ્યું હતું કે, નથી છાપી ન શબ્દમાળા; એક અક્ષર તેમાં છાપો. તેથી અમે થોડું કંઈક અલગ અહીં કારણ કે ત્યાં 1 અન્ય શકે છે - બગ નથી કારણ કે આ કાર્યક્રમ અધિકાર છે, પરંતુ હું મૂર્ખ આવું છું કે હું બુધવારે સંક્ષિપ્તમાં ઉલ્લેખ કર્યો છે. પરંતુ પાછા વિચારવાનો, કેવી રીતે આ કાર્યક્રમ ડિઝાઇન વધુ પણ સુધારી શકાય છે? યાહ. [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> ઓહ, સારું. તેથી જણાવ્યું હતું કે અમે એક બીજા કહેવાય ચલ n છેલ્લા સમય રજૂઆત કરી હતી, જે જાતને વિરોધાભાસ શકાય કારણ કે મારું ધ્યેય પહેલા બીજી લાગે છે માત્ર દૂર બિનજરૂરી તરીકે ચલ ફેંકવું, યાદ પરંતુ બુધવારે અમે ખરેખર આ કર્યું હતું. હું લૂપ માટે બદલીને ખરેખર અલ્પવિરામ અહીં હોય, તો પછી n strlen =, અને પછી હું અહીં ઉપર હતી i > [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] ચોક્કસ. >> હું strlen ફરીથી યાદ કરું છું અને ફરી ફરી યાદ કારણ કે લૂપ કામો માટે કેવી રીતે. જો તેઓ જટિલ દેખાવ વધુ વિચાર શરૂ કરવા માટે, યાદ છે કે પ્રથમ અર્ધવિરામ પહેલાં વસ્તુ પ્રારંભ છે, જે એક વખત થાય છે છે. આ સ્થિતિ છે, જોકે, મધ્ય હોય છે, અને આ દરેક સમય છે કે જે તમે લૂપ દ્વારા જાઓ ચકાસાયેલ નહીં. તેથી તે મૂર્ખ પ્રકારની કરવા માટે કોમ્પ્યુટર જ પ્રશ્ન પૂછવાનો ફરીથી અને ફરીથી છે - હેલો લંબાઈ શું છે? હેલો લંબાઈ શું છે? હેલો લંબાઈ શું છે? - આપણે આજે જોશો કારણ કે અને બુધવારે, આ નિશ્ચિતપણે સમય લાગી રહ્યું છે, અને તે સમયે ખૂબ જ સારો ઉપયોગ છે કારણ કે બહાર શબ્દમાળા લંબાઈ આંકડો નથી વાસ્તવમાં પ્રયાસ એક બીટ લે છે. તે તત્કાલ, નથી, કારણ કે તે અમુક ભાષાઓમાં છે. તેથી n આ બદલીને, તો કિંમત હું ભરવા છું શું છે? અમે એક વેપાર બોલ અહીં જોઈ રહ્યાં છો. હું પૂછવા ફરીથી અને ફરીથી એ જ પ્રશ્ન ધુત્કારી કાઢવું ​​દ્વારા સમય બચાવી શકે છે, પરંતુ તે મને કંઈક છે, કે જે શું છે કિંમત રહ્યું છે? [વિદ્યાર્થી] તમે મેમરી ચોક્કસ રકમ ગુમાવી બેસે છે. ચોક્કસ. >> તે મને અમુક મેમરી કિંમત બનશે. તેથી આ કિસ્સામાં તે મને શું ખર્ચ? અન્ય 32 બિટ્સ કારણ કે n એ માત્ર પૂર્ણાંક છે, કારણ કે શબ્દ અહીં પૂર્ણાંક દ્વારા સૂચિત. પરંતુ તે છે ઠીક? પ્રમાણિકપણે, કે જે કદાચ ઠીક કારણ કે જો તમે એના વિશે વિચારો, લાંબા શબ્દમાળા છે, વધુ સમય માટે હું બગાડ થઈ જાઉં છું કારણ કે strlen ફરીથી અને ફરીથી અને ફરીથી કહેવાય કરો રહ્યું છે લૂપની દરેક ઇટરેશન છે. અને આ દિવસોમાં, મારા મેક ની RAM 2 શોના, આ દિવસોમાં કેટલીકવાર ની RAM 4 શોના છે. મને લાગે છે કે હું 4 તે બાઇટોની પરવડી ખરેખર વસ્તુઓને ઝડપથી કરી શકો છો. પરંતુ આ એક વેપાર બોલ અને થીમ પ્રોગ્રામિંગ અને કોમ્પ્યુટર વિજ્ઞાન ખરેખર પ્રયત્ન રહ્યું છે મફત કંઈપણ ખરેખર ક્યારેય મેળવવાની. જો તમે અહીં કંઈક સુધારવા માંગો છો, તો તમે બીજી બાજુ તે માટે કંઇ ચૂકવવા પડે છે. વિરુદ્ધ આ કિસ્સામાં જગ્યા સમય. તેથી આ તમામ આ જેવા ભેદી કંઈક તરફ આવ્યો અગ્રણી, , જેમાં તમે કદાચ હવે દ્વારા બહાર figured, વાસ્તવમાં કહે છે? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> અરે વાહ, તેથી આ છે, તમારા Ovaltine પીવા માટે ખાતરી કરો, ખરેખર એક ROT13 કહેવાય એલ્ગોરિધમ, રોટ 1-3 વાપરી રહ્યા હોય, જે ફક્ત અક્ષરો તમામ 13 સ્થાનો ફેરવવા અર્થ થાય છે, જેનો અર્થ થાય છે એક લો અને પછી તેને 13 ઉમેરો અને ડોટ, કોઈ, કોઈ જાઓ 13 દૂર પત્ર તમામ માર્ગ, બી અને સી માટે અને ડી માટે આ જ વસ્તુ છે અને તેથી આગળ. અને તેથી જો આપણે ખરેખર આ અહીં કન્વર્ટ 13 સ્થળો shift નો ઉપયોગ કરીને, અમે પાછા થોડી Ralphie શું હતું વિચાર છે, જે તમારા Ovaltine પીવા માટે ખાતરી કરો હતી પડશે. પરંતુ હવે ઓછામાં ઓછા સ્ટાન્ડર્ડ એડિશનના સમસ્યા માટે 2, સેટ, તમે નથી આ જાતે enciphering પ્રકારની હોય છે, અને અમે કોઈક આ જેવા ઇનપુટ લઇ અને તે અથવા તે ડિક્રિપ્ટ એનક્રિપ્ટ હોય છે. તેથી આ મૂળભૂત પ્રકારના જે અમને કે તક તરફ દોરી જાય છે? ચાલો આ તૃતીય અહીં ઉદાહરણ પર એક નજર. સૌ પ્રથમ, તે ASCII કહેવાય છે. શું તે ASCII માટે નથી પાછા સંદર્ભ લો? માહિતી ઇન્ટરચેન્જ માટે અમેરિકન સ્ટાન્ડર્ડ કોડ, જે શું કહી એક ખરેખર લાંબા માર્ગ છે? શું તે ASCII છે? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> કે શું છે? >> [વિદ્યાર્થી] એક અક્ષર નકશો. >> એક અક્ષર નકશો. તે માત્ર અક્ષરો નંબરો નકશો કારણ કે વિશ્વના પ્રમાણિત છે નંબરો શું શું અક્ષરો કે જેથી આપણા તમામ કમ્પ્યુટર્સ ઉપયોગ કરી શકો છો પ્રતિનિધિત્વ કરશે અને અમારા કાર્યક્રમોનું તમામ સુસંગત જ્યારે તેને સ્ક્રીન પર વસ્તુઓ છાપવા માટે આવે છે. તેથી જણાવ્યું હતું કે 65 માટે પ્રતિનિધિત્વ થાય છે, 97 થી એક લોઅરકેસ પ્રતિનિધિત્વ થાય છે. અને તેથી આ સરળ અહીં કાર્યક્રમ ASCII કે હકીકતનો લાભ લે છે - કે વિશ્વ જાણે છે કે મૂડી એ 65 છે - અને તે માત્ર મેપિંગ છાપવા છે. તેથી પહેલાં તો અમે આ કોડમાં ડાઇવ દો, મને તેની જગ્યાએ ટર્મિનલ વિન્ડોમાં ખોલો. મને આગળ વધીશું અને તે ASCII કરો, અને પછી આપણે ફક્ત આ વસ્તુ સ્કોર માત્ર આઉટપુટ બગાડી છે. ખરેખર મોટી ચાર્ટ કે જે હમણાં જ મને વિવિધ કોડ્સ બધા કહે છે: અને તે માત્ર કરે છે વિવિધ અક્ષરો બધા માટે. એક સુપર સરળ કાર્યક્રમ તેથી, પરંતુ હું હાર્ડ કોડ આઉટપુટ તે 52 રેખાઓ ન હતા: 26 મોટા, 26 લોઅરકેસ. તેના બદલે, હું આ પ્રોગ્રામ કર્યું આંટીઓ એક દંપતી સાથે. નોંધ હું શું અહીં કર્યું હતું. હું પર હું 65 છે iterated અપ 65 26 + માટે કારણ કે હું બહાર 26 અક્ષરો છાપો માગે છે આ ઇંગલિશ મૂળાક્ષરમાં, આઇ + + દરેક ઇટરેશન પર, અને હવે આ ફરી નોટિસ. તે અમારા મિત્ર ટાઇપકાસ્ટિંગ ની આવૃત્તિ છે જેમાં તમે અન્ય માટે 1 દશાંશ માહિતી પ્રકાર કન્વર્ટ કારણ કે હું શું આ ચોક્કસ કાર્યક્રમ શું કરવા માંગો છો? હું સંખ્યાની દ્રષ્ટિએ ગણતરી કારણ કે તે કેવી રીતે હું ગણતરી વધારો થયો હતો માંગો છો - 65, 66, 67, અને તેથી આગળ - પણ મને તો ફક્ત નંબરો છાપી નથી માંગતા. હું સંખ્યાને અનુસરીને પત્ર પ્રિન્ટ માંગો છો. નંબર, બી: હું એક પ્રિન્ટ માંગો છો નંબર છે, પણ હું એ જ ચોક્કસ ચલ સાથે કરી શકો છો. તેથી હું એક અક્ષર માટે એક પ્લેસહોલ્ડર તરીકે% C છાપો, એક આંકડાના અથવા નંબર માટે એક પ્લેસહોલ્ડર તરીકે% d. પછી હું શું તે 2 જગ્યામાં માટે પ્લગ છે? હું પાત્ર સમકક્ષ પ્રથમ પ્લગ હું અને પછી હું મને પોતાને બહાર છાપો. તેથી નોટિસ આ પણ કાર્ય કરે છે. જસ્ટ તરીકે હું ફ્લોટ માંથી પૂર્ણાંક પર ભૂમિકા કરી શકો છો ક્રમમાં વાસ્તવિક નંબર પૂર્ણાંક પર જવા માટે, અહીં હું પૂર્ણાંક એક કોલસો બનાવો, કે જે થોડું વિચિત્ર છે જઇ શકો છો - નથી વાસ્તવિક વિશ્વમાં પર તદ્દન નથી મેપ - પણ કોમ્પ્યુટરમાં ચાર રચે છે ફક્ત હૂડ નીચે એક નંબર છે, તેથી અમે અત્યાર સુધીમાં સ્પષ્ટ હોવા કરી રહ્યાં છો અહીં કમ્પ્યુટર પર કહ્યું કે, printf, 65 તરીકે છાપે નથી, હું તેને છાપી તેની આંકડાકીય સમકક્ષ છે. અને તે વળે બહાર હું ટેકનિકલી પણ આ કરવાની જરૂર નથી. હું શું ક્ષણ પહેલા કરી હતી નિશ્ચિતપણે નિર્ણાયક છે સ્પષ્ટ દશાંશ માહિતી પ્રકાર શું હું ના જાઓ અને કરવા માંગો છો દ્વારા. નોટિસ પરંતુ હું પહેલેથી આ પ્લેસહોલ્ડર% C હોય છે અને આ અન્ય% C અહીં પ્લેસહોલ્ડર. આમ છતાં આ પૂર્ણાંક નથી, કમ્પ્યૂટર કે ચાર રચે ખબર પડે છે, તે ફક્ત હૂડ નીચે પૂર્ણાંક છે. તેથી જો હું ખરેખર આ પુનઃકમ્પાઈલ અને તે ASCII કાર્યક્રમ પુનઃ ચલાવો, નોટિસ તે હજુ પણ માત્ર કામ કરે છે કારણ કે કમ્પ્યૂટર ખબર પડે છે કે આ પત્રવ્યવહાર છે. હવે, તે વધુ મહત્વપૂર્ણ છે ફ્લોટ્સ વિશ્વમાં ints માટે સ્પષ્ટ કાસ્ટિંગ કરવું ત્યાં કારણ કે તમે ખરેખર ગણતરી નિર્ણય કરી રહ્યા છીએ: દૂરના દશાંશ બિંદુ પછી બધું ઉડાડી દે છે. અહીં ખરેખર દૂર ફેંકવા કારણ કે એક પાત્ર માત્ર એક નંબર છે કશું જ નથી, અને શબ્દમાળા માત્ર અક્ષરો ઝાકઝમાળ છે. તેથી, જ્યારે કેટલાક એનક્રિપ્શન અથવા ડિક્રિપ્શન અમલમાં સમય આવે તે કેવી રીતે છે કે અમે ખરેખર આ નોનસેન્સ કંઈક અનુવાદ કરી શકો છો, તમારા Ovaltine પીવા ખાતરી કરો કે? તો શું આપણે હમણાં ખબર - ચાલો ધારણા તરીકે લેવા - કે જે કી, નંબર કે અમે આ અક્ષરો તમામ દ્વારા ફરતી કરી રહ્યાં છો, 13 નંબર છે? તેથી અમે પત્ર બી માંથી તમામ માટે સજા શરૂઆતમાં O માર્ગ ગયા, તમારા Ovaltine પીવા માટે ખાતરી કરો, કારણ કે જો હું બી કરવું અને પછી હું સી, ડી, ઇ, એફ, જી, એચ, હું, જે, કે, એલ, એમ, એન, ઓ જાય છે, કે શા માટે પત્ર બી ની એનક્રિપ્શન ઓ બને છે કારણ કે હું ફક્ત તે 13 ઉમેર્યા છે. તેથી જો હું ડિક્રિપ્ટ આ કરવા માંગો છો, હું અનિવાર્યપણે કરવા O લો અને પછી તેમાંથી 13 સબ્ટ્રેક્ટ છે. અથવા, પ્રમાણિકપણે, કારણ કે ત્યાં મૂળાક્ષરમાં 26 અક્ષરો છે, આ અદ્ભૂત સપ્રમાણ હોય છે, અમે પણ માત્ર 13 ઉમેરી શકો છો અને અમે પાછા અક્ષર બી માટે મળશે પરંતુ તમે કેવી રીતે સીઝર આ કંઈક અમલીકરણ વિશે જવા નથી અથવા ખરેખર સામાન્ય રીતે શબ્દમાળાઓ હેરફેર? જો પત્ર બી નંબર શું છે? અક્ષર બી શું છે? તેથી તે 66 અધિકાર છે? તેથી જો આ પત્રમાં એક 65 છે અને અક્ષર બી 66 છે, 66 તેથી, બધા હું શું હોય છે તે 13 ઉમેરવા, અને આ મને 79 આપે છે. અને જો આપણે થોડો ખાણિયાઓને છેતરે છે શીટ, 79 ખરેખર ઓ પર નકશા પર જાઓ પરંતુ એક ખૂણે કેસ એક બીટ અહીં છે. શું છે, તે પત્ર Z કહેવું? જો અમે 66 + 25 કરવા માટે મૂળાક્ષરના અંતમાં બધી રીતે વિચાર, અમે 91 પર છો. 91 + 13 મને આપે 104, અને શું ધારી? 104 એક મોટા અક્ષર નથી જેટલી નથી. ચાલો થોડું ખાણિયાઓને છેતરે છે શીટ અહીં પાછા જાઓ. જો હું સાધન નોટિસ આ કાર્યક્રમ પુનઃ ચલાવો કે 104, જો હું ટર્મિનલ વિન્ડોમાં પાછા જાઓ, 104 દેખીતી રીતે લોઅરકેસ ક છે. તેથી અમે કેટલાક કી અહીં યુક્તિ જરૂર કરવા માટે ખાતરી કરો કે જ્યારે અમે Z શરૂ કરો અને અમે તેને 13 ઉમેરો અમે માત્ર મોટી અને મોટી સંખ્યામાં સુધીનું ફોર્જિંગ રાખવા માંગતા નથી. અમે ખરેખર શું કરવા માંગો છો નથી કરી શકું? તમે ફરતે વીંટળાય છે કરવા માંગો છો. તેથી તે તારણ છે, તો તમે કદાચ હવે વિભાગમાં અથવા સમસ્યા સેટ સ્પેક પોતે જોયેલા સમજાયું કે ત્યાં સી માં આ અન્ય ઓપરેટર પણ એક ટકા સાઇન છે, પરંતુ જ્યારે અમે% ઉપયોગ કર્યો છે અહીં એક પ્લેસહોલ્ડર સ્પષ્ટ કરવા માટે, ખબર છે કે, સમસ્યા 2 સેટ માટે ખાસ કરીને, ત્યાં પણ આ કંઈક છે: પૂર્ણાંક એક્સ = y% z. મને તો ફક્ત આ એક ખૂબ જ સામાન્ય સ્વરૂપ તરીકે આ રજૂ કરે છે. ટકા પ્રોગ્રામિંગ ભાષામાં શું અર્થ થાય છે? >> [વિદ્યાર્થી] મોડ્યૂલો. મોડ્યૂલો, જે બાકીના કહેતા ફેન્સી માર્ગ છે. તેમ છતાં ત્યાં ત્યાં વ્યાખ્યા સાથે થોડો તફાવત છે, આ અર્થ એ z દ્વારા વાય વિભાજિત પરંતુ કે ડિવિઝન પરિણામ પરત નથી; તેના બદલે, બાકીની આવો. તેથી જો વાય ખરેખર 3 અને z ખરેખર 2, 3 2 દ્વારા વિભાજી 1 નું શેષ સાથે 1 છે, જેથી એક્સ શું કરે છે ખરેખર આ દ્રશ્ય સમાન? 1. આ આવા સરળ, વિચાર નીચા સ્તરે છે. તે થોડો સમય લે છે વિચાર તમારા મન તેની આસપાસ આવરિત કારણ કે તે કદાચ થોડો સમય થયો છે કારણ કે તમે પણ રિમાઇન્ડર્સ વિશે કાળજી હતી અને ખરેખર તેમને હેતુપૂર્ણ કંઈક માટે વાપરવા માટે, પરંતુ આ કિસ્સામાં સરળ હકીકત છે કે મોટા નંબર 3 જેવા જઈ શકે છે અસરકારક રીતે આસપાસ 2 અને પછી જેવી પ્રમાણમાં નાના નંબર પર લપેટી 1 જેમ કે નાની કિંમત બાકીની ઉપયોગ કરીને એક અમૂલ્ય યુક્તિ પ્રયત્ન રહ્યું છે કે અમે સીઝર કંઈક અને આ અન્ય વસ્તુ Vigenere બંને માટે ઉપયોગ કરી શકો છો સમસ્યા 2 સુયોજિત છે, પરંતુ આ સત્ર દરમિયાન રિકરિંગ યુક્તિ પ્રયત્ન રહ્યું છે. આ સરળ, માત્ર સામાન્ય રીતે બાકીના લેવાના સરળ વિચાર છે અમને આસપાસ લપેટી કરવા માટે પરવાનગી આપે જઈ રહી છે. અને અમે એરે સાથે વધુ રમવાનું શરૂ કરો, કારણ કે અમે પોતે મેમરી સાથે વધુ રમવાનું શરૂ કરો, આ વધુ અને એક શક્તિશાળી યુક્તિ વધુ બની રહ્યું છે. તેથી તે ASCII પર કોઈપણ પછી પ્રશ્નો અથવા એરે તરીકે શબ્દમાળાઓ પ્રતિનિધિત્વ? અને અમે તેને લેવા ઉપર 1 કાપો વધુ પડશે. યાહ. [અશ્રાવ્ય વિદ્યાર્થી પ્રશ્ન] >> ગુડ પ્રશ્ન. તે શું છે જ્યારે ચલ તે સામે ફૂદડી છે એનો અર્થ એ નથી? મને મુલતવી કોઈપણ વિગતવાર કે જવાબ, પરંતુ તે એક નિર્દેશક તરીકે ઓળખાય વિષય સંદર્ભ આપે છે. પોઇન્ટર મેમરી સાથે કરી છે, અને અમે ખરેખર છો આજે કે ચર્ચા તરફ પ્રથમ પગલું લેતા, પરંતુ હવે દો, મને ડોળ કરવો કે તારો અસ્તિત્વમાં નથી અને અમે શબ્દમાળાઓ શબ્દમાળાઓ કૉલ બદલે ઘરનાં પરચૂરણ કામો * ઉપયોગ ચાલુ રાખવા પડશે, જે તમે કદાચ પહેલા જોઇ છે અને હું સ્ક્રીન પર માત્ર એક ક્ષણ એક સતામણી કરનાર તરીકે મૂકીશું. તેથી અમે પાછા માર્ગ વધુ વિગતવાર તમે કરતાં કદાચ ગમશે કે આવવું પડશે. આખરે, નથી. આજે યાહ. [અશ્રાવ્ય વિદ્યાર્થી પ્રશ્ન] કયા સંદર્ભમાં તમે પાત્ર માટે સાઇન ઇન પ્રદાન છે? >> [વિદ્યાર્થી] યાહ. જેથી મૂળભૂત રીતે, જ્યારે તમે એક + + મૂકી નથી, ફક્ત હકારાત્મક સંખ્યામાં ધારણા છે. તેથી જો માત્ર નંબર 1 લખી, તે હકારાત્મક 1 છે. જો તમે ખરેખર એક મૂલ્ય ઈનકાર સ્પષ્ટ કરવા માંગો છો, તમે શાબ્દિક માટે તમારા કીબોર્ડ પર -1 કરો. પરંતુ આ કદાચ તમારા પ્રશ્ન નથી. >> [અશ્રાવ્ય વિદ્યાર્થી જવાબ] પ્રશ્ન સારું. ઠીક છે. તેથી આ ભૂલ અમુક પ્રકારના સાથે ભેગા હું, આમ છે તમે માં ચાલી હતી કારણ કે તમે એક અક્ષર એક પૂર્ણાંક રૂપાંતરિત કરવામાં આવી હતી, પરંતુ કોઈક ઋણભારિતા સામેલ હતો, અને તેથી પાત્ર માત્ર બહાર આવ્યા કોઈક munged. તેથી હવે દો, મને થોડી સરળતા સુધી અમે વિષય આ પ્રકારની પરત આવવું જોઇએ. હવે માટે, વસ્તુઓ આ રીતે લાગે છે - અને આ એક વધુ પડતી સાદગીની છે. પરંતુ એક પૂર્ણાંક વિશ્વમાં, તમે તમારી આગળના કેટલી બિટ્સ છે? તમે 32 બિટ્સ હોય છે. અને આમ અત્યાર સુધી, અમે પૂર્ણાંકો તમે તેથી પ્રતિનિધિત્વ કરી શકે કુલ સંખ્યા વિશે વાત કરી છે કુલ 4 આશરે અબજ છે કારણ કે તમે 32 બિટ્સ હોય છે, જેથી 32 માટે 2 છે, જેથી 4 બિલિયન આશરે છે. પરંતુ અમે એક સપ્તાહ અથવા 2 અગાઉ જોયું કે તમે ખરેખર નંબરો વિસ્તાર ન હોય 0 થી પર 4 બિલિયન છે. શ્રેણી બદલે લગભગ નકારાત્મક હકારાત્મક અબજ 2 2 અબજ થી જાય છે. પરંતુ આ પછી પ્રશ્ન begs, તમે કેવી રીતે નકારાત્મક 2 અબજ કલ્પના પ્રતિનિધિત્વ નથી નકારાત્મક એકલા 1 દો? હવે, અમે વધુ સરળતા અને માત્ર કહે છે કે અમે leftmost બીટ ઉપયોગ જઈ રહ્યાં છો કરી શકો છો તે 32 બિટ્સ, અને જો તે 1 એક છે તે નકારાત્મક નંબર છે, અને જો તે 0 છે તે ધન સંખ્યા છે. નકારાત્મક આંકડા કે સરળ રજૂઆત સાથે સમસ્યા છે કે જો તમે ઇરાદાપૂર્વક હોંશિયાર હોવા કરવામાં આવી હતી અને એક અક્ષર એક નંબર રૂપાંતરિત કરવાનો પ્રયાસ અથવા ઊલટું, કોઈ એક નકારાત્મક પાત્ર જેમ કે વાત છે. તે ASCII, કે જે ફક્ત 8 બીટ્સ ઉપયોગ કરે છે તે તમામ બિટ્સ બાબત 8 ના વિશ્વમાં, અને leftmost બીટ ઋણભારિતા સાથે કરવાનું કંઈ નથી. અને માત્ર સ્પષ્ટ છે, જ્યારે હું leftmost બિટ્સ કહે, યાદ છે કે જ્યારે અમે પ્રથમ સપ્તાહમાં અમારા બીટ સંબંધિત ઉદાહરણો કર્યું યાદ છે કે અમે 1001101 જેમ, આ કંઈક વસ્તુઓ દોર્યું હતું. જ્યારે હું leftmost બીટ કહે, હું હમણાં જ શાબ્દિક 1 છે તેનો અર્થ છે કે તમે ડાબી પર બધી રીતે લખો. તેથી અક્ષરો વિશ્વમાં ત્યાં ઋણભારિતા કોઈ કલ્પના છે, જેથી leftmost બીટ વાસ્તવમાં તે ASCII માટે ઋણભારિતા સાથે કરવાનું કંઈ સાથે કંઇક હોય છે. તેથી તે જેમ વાગે છે - અને સંદર્ભ બહાર તેને મુશ્કેલ બરાબર જવાબ - પરંતુ અચાનક, તમારો કોડ નકારાત્મક કિંમત રજૂ કે leftmost બીટ મૂંઝવણને હતી જ્યારે તે ખરેખર પ્રશ્નમાં અક્ષર ભાગ હતો. અને ફરી, હું કારણ કે કમ્પ્યુટર્સ ખરેખર થોડું fancier કંઈક oversimplifying છું માત્ર એક 0 વિરુદ્ધ નકારાત્મક સાઇન માટે 1 માટે કે leftmost બીટ બદલવા કરતાં. તેઓ તેના બદલે, જો તમે Google પર વિચિત્ર છો, ખાસ કરીને તે 2 કોમ્પ્લીમેન્ટ કહેવાય કંઈક ઉપયોગ કરો છો, જે થોડી વધુ એક અભિગમ વ્યવહારદક્ષ છે પરંતુ વિચાર આખરે એ જ. તેથી ટૂંકા માં, તે હકીકત એ છે કે તમે એક અક્ષર માટે એક નંબર માલિશ હતા કરી હતી અથવા ઊલટું પણ તમારી કોડ હકીકત વાકેફગાર ન હતી જે 1 તે બિટ્સ આંકડાકીય વિશ્વ મહત્વના હતા. કે કેસ પાત્ર વિશ્વમાં નથી. પરંતુ લાગે છે કે તમે નિશ્ચિત જે કિસ્સામાં હવે વિવાદાસ્પદ. અન્ય પ્રશ્નો. ઠીક છે. તેથી આમ સુધી કાર્યક્રમો અમે કરી છે તેવા પરચૂરણ ખર્ચ તમામ ઇનપુટ લેવામાં આવે છે કદાચ વપરાશકર્તા માંથી GetInt, GetString જેવા કાર્યો સ્વરૂપમાં, અથવા જો તમે વિવિધ પુસ્તકો અથવા ઑનલાઇન સંદર્ભો માં થઈ આગળ વાંચવા, તમે તમારા જાતે scanf જેવા કયા વિધેયો, ​​પ્રમાણિકપણે, અમે CS50 પુસ્તકાલય ઉપયોગ ઉપયોગ થઇ શકે છે. પરંતુ 2 અથવા સપ્તાહમાં, અમે ખરેખર તમે બતાવવા કેવી રીતે CS50 પુસ્તકાલય અમલમાં મૂકાયેલ છે પડશે તેથી અમે તે તાલીમ વ્હીલ્સ લઇ બોલ એકસાથે કરી શકો છો. પરંતુ તે વળે બહાર ત્યાં બીજા વપરાશકર્તા તરફથી ઇનપુટ રીત છે. હકીકતમાં, અમે જાતને આદેશ વાક્ય દલીલો નો ઉપયોગ કર્યો છે થોડા અઠવાડિયા હવે. દર વખતે આપણે રણકાર ચાલે છે અથવા આપણે સ્કોર બનાવવા માટે, અમે ફક્ત રણકાર નથી લખ્યો છે લિમિટેડ, અમે બનાવવા માટે, દાખલ ન લખ્યો છે. અમે શું ખાસ કરીને અમારી ટર્મિનલ વિન્ડો પ્રોમ્પ્ટ પર શબ્દ રણકાર પછી તેવા પરચૂરણ ખર્ચ? [વિદ્યાર્થી] ફાઇલ નામ. >> ફાઇલ નામ, અધિકાર? Hello.c અથવા mario.c ગમે તે સંબંધિત ફાઈલ નામ અથવા. અને તે અર્થમાં તમે ખરેખર શું કર્યું તમે રણકાર વર્તણૂક છે પ્રભાવિત કર્યા છે કારણ કે ચોક્કસપણે જે લોકો રણકાર લખ્યું કોઈ થોડો જૂના વિચાર તમે હતું હતી એક mario.c વર્ષ બાદ નામના પ્રોગ્રામ લખવા જઈ રહી છે. તેથી તમારે કોઈક કે જે કાર્યક્રમ વર્તણૂક અસર હતી, અને જે તે કાર્યક્રમની રણકાર આવી રીતે લખાયેલું હોવું કે તે તમારી તરફથી ઇનપુટ સ્વીકારી શકો છો હતો પ્રોમ્પ્ટ પર શબ્દોની વધુમાં દ્વારા પહેલાં વપરાશકર્તા હિટ દાખલ કરો. તેથી તે તારણ છે કે જે થોડા સમય માટે અમે અમારા કાર્યક્રમો લગભગ તમામ કરવામાં જાહેર કરી છે આ જેવી શરૂ - પૂર્ણાંક મુખ્ય (રદબાતલ) - અને પછી અમે આગળ ચાલ્યા કર્યું છે અને અમારી કોડ લખવાનું શરૂ કર્યું. અને અમે ફાઈલ ટોચ પર કેટલાક સમાવેશ થાય છે તીક્ષ્ણ હોય શકે છે, પરંતુ અમારા કાર્યક્રમો લગભગ તમામ આમ અત્યાર સુધી આ સાથે શરૂ કર્યું છે છતાં પણ તમે વિભાગમાં જોઈ હોય શકે પુસ્તકો, ઓનલાઇન સંદર્ભો કે આ હકીકત થી રદબાતલ નથી. આ બાબતને માટે અન્ય કાયદેસર ફોર્મ argc પૂર્ણાંક અને પછી શબ્દમાળા argv [] છે. તેથી હવે આ શું તેનો અર્થ છે? તે કે argc છે, કે જે એક માનવ પ્રચલન છે વળે છે - તમે આ foo કહી શકે છે, પરંતુ તે માત્ર ઘણા બધા ઓછી વાચકો માટે સ્પષ્ટ થશે - argc માત્ર કામ કરવા માટે એક દલીલ મુખ્ય કહેવાય છે કે શું પ્રતિનિધિત્વ કરે છે? Argc શું પરિચિત તે માટે ઊભા કરે છે? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> અરે વાહ, દલીલો અથવા દલીલ કાઉન્ટની સંખ્યા. તે જે સરળ છે. કેટલી દલીલો આ કાર્યક્રમને પસાર કરવામાં આવી હતી? કે શું અર્થ છે? રણકાર mario.c - - આદેશ વાક્ય પર જો હું આ કંઈક ચાલે છે argc જ્યારે હું લખો હિટ ની કિંમત પર લઇ અંશે ભેળસેળ, 2 રહ્યું છે. તેથી તે તારણ આપે છે કે argc દલીલ ગણતરી છે, પરંતુ ઐતિહાસિક કારણોસર, આ કાર્યક્રમ પોતાના નામ છે કે ગણતરી માં સમાવવામાં આવેલ છે. તેથી argc 2 છે, જ્યારે હું રણકાર mario.c લખ્યું હતું. Argv શું છે? સૌ પ્રથમ, argv શબ્દમાળા જેવી લાગે છે નથી પરંતુ તદ્દન કારણ કે છેલ્લા બુધવારે તરીકે અને તમામ વધુ આજે, આ ચોરસ કૌંસ શું સૂચવે છે? તે એક એરે છે. ત્યાં એરે કોઈ નંબર છે, અને તે અર્થમાં તર્ક કરવી જોઈએ કારણ કે જે લોકો રણકાર વર્ષ પહેલાં લખ્યું ચોક્કસપણે કોઈ વિચાર હતો કેટલી અમને જેવા શબ્દો લોકોને પ્રોમ્પ્ટ પર દાખલ અથડાતાં અગાઉ લખો કરશે. તેથી આ કેસ અહીં તેઓ કાર્ય દલીલો ઝાકઝમાળ લેતી તરીકે મુખ્ય જાહેર કરી છે, 0 અથવા વધુ દલીલો. તેઓ અગાઉથી ખબર નથી કેટલા ત્યાં છે નથી, તેથી ઇરાદાપૂર્વક આ ચોરસ કૌંસ કોઇ નંબર અંદર છે. પરંતુ હકીકત એ છે કે ચોરસ કૌંસ ત્યાં છે કમ્પ્યૂટર કહેવાની છે, ઝાકઝમાળ અપેક્ષા. Argv માત્ર દલીલ વેક્ટર માટે લઘુલિપિ નોટેશનમાં છે. વેક્ટર એરે કહેતા ફેન્સી રસ્તો છે, અને એરે એક સૂચિ અથવા સંગ્રહ કહેતા ફેન્સી માર્ગ છે. તેથી આ માત્ર અર્થ એ છે કે જો તમે આ જેવી મુખ્ય લખી બદલે અમે કેવી રીતે અઠવાડિયા ભૂતકાળમાં દંપતી માટે કર્યું છે કે તે કરવાથી જેમ, તમારા કાર્યક્રમ હવે આદેશ વાક્ય દલીલો સ્વીકારે છે સત્તા ધરાવે છે જેથી લાંબા સમય સુધી તમે મારિયો લખી હોય અને પછી Enter દબાવો, પછી એક નંબર લખો કેટલા બ્લોક્સ ઊંચી તમે પિરામિડ પ્રયત્ન કરવા માંગો છો, પછી ફરીથી દાખલ નહીં. અમે પણ GetString તે બાબત માટે હવે અથવા GetInt અથવા GetFloat ઉપયોગ કરવાની જરૂર નથી. અમે હમણાં જ વપરાશકર્તાને પ્રોમ્પ્ટ પર તે શબ્દો ટાઇપ કરો પોતે અપેક્ષા કરી શકો છો જેમ રણકાર ના લેખકો નિર્ણય લીધો તે ખરેખર હેરાન કાર્યક્રમ થશે જો તમારો કોડ કમ્પાઈલ કરવા માટે તમારે પ્રથમ લખેલા રણકાર દાખલ કરો, દબાવો, પછી અમે વપરાશકર્તા જણાવ્યું હતું કે, આ ફાઈલ તમારા માટે કમ્પાઈલ કરવા માંગો છો તે નામ લખો, કૃપા કરીને તો પછી અમે mario.c લખો અને Enter દબાવો. પરંતુ કે ચોકકસ શું આપણે અઠવાડિયાના ભૂતકાળમાં દંપતી વપરાશકર્તાઓ માટે કરવામાં આવી આમ કર્યું છે. અમે GetString ઉપયોગ અને અમે રાહ જ્યાં સુધી કાર્યક્રમ તેમને ઇનપુટ માટે પૂછવા માટે ચાલી રહી છે. કે લાંબા સમય સુધી કેસ જરૂરી છે. તેથી આ અહીં ઉદાહરણમાં, આપણે હવે શબ્દમાળા argv હોય છે, અને આ પણ એક વધુ પડતી સાદગીની છે, તાલીમ વ્હીલ્સ કે ખૂબ જલ્દીથી આવશે. આ મુખ્ય આ વૈકલ્પિક ઘોષણા લખવાનું વધુ યોગ્ય રીત છે કારણ કે તે તારણ છે કે અમે શબ્દમાળા ફોન રાખવા શું ખરેખર એક તારો ધરાવે છે, તેની વાસ્તવિક વ્યાખ્યા માં ફૂદડી, પરંતુ આ માત્ર જટિલ લાગે છે, તે પ્રથમ ચિંતામાં મૂકી દે છે, તેથી અમે ફક્ત પ્રકારની સમાનાર્થી બનાવીને સરળ આ CS50 પુસ્તકાલય કે નકશા આ વધુ વપરાશકર્તા મૈત્રીપૂર્ણ શબ્દ શબ્દમાળાને ઘરનાં પરચૂરણ કામો *. તેથી આપણે ખરેખર આ પછી પ્રયાસ કરો. મને આગળ જાઓ અને gedit અહીં ખોલો. મને આગળ વધો અને 1 argv ખોલો. આ કાર્યક્રમ દેખીતી રીતે દલીલો છાપે છે, પરંતુ ઇંગલિશ શરતો માં, આ કોડ જોઈને, આ શું વધુ ખાસ શું કરે છે? જો હું આદેશ a.out foo પટ્ટીમાં પ્રકાર, મારા કાળા અને સફેદ વિંડોમાં શું મુદ્રિત નહીં? A.out foo બાર લખો. આગળ જાઓ. યાહ. >> [અશ્રાવ્ય વિદ્યાર્થી જવાબ] ગુડ. તેથી a.out, નવી લાઇન, foo, નવી લાઇન, બાર, નવી લાઇન. આ શા માટે છે? અમે ચોક્કસપણે માત્ર એક ક્ષણ માં તેની પુષ્ટિ કરી શકો છો. આ કોડ એક વાક્ય રુંવાટીવાળું પ્રકારની છે.  તે માત્ર એક નવી લાઇન છાપે ફક્ત વસ્તુઓ સ્ક્રીન પર prettier કરે છે. આ એક લૂપ છે કે 0 થી વારો છે argc પર છે, અને આ દરેક ઇટરેશન પર incrementing છે + +. તેથી હવે કહી રહ્યાં છે શબ્દમાળા છાપી, કારણ કે આ% s દ્વારા સૂચિત. Argv [i] ખૂબ ખૂબ અગાઉના ઉદાહરણ એ જ વિચાર છે. અમે ચલ ઓ કૉલ ઉપયોગ થાય છે; હવે તે કહે છે, તે જ આપખુદ, argv. આનો અર્થ એ ઇથ દલીલ છે કે આદેશ વાક્ય પર લખ્યો હતી છાપો, અને પછી આ આખી વસ્તુ થાય છે, ફક્ત સારા પગલા માટે બીજો નવો રેખા છાપો. તેથી આપણે આ જુઓ. મને જે ટર્મિનલ વિન્ડોમાં ખોલો. મને 1 નું argv કમ્પાઇલ, અને હવે દો મને 1 નું argv ચલાવવા માટે, દાખલ કરો. હમ્મ. ઠીક છે. ચાલો foo બાર ચલાવો. રસપ્રદ. Baz. અને જો તમે ક્યારેય શા માટે હું આ ટાઇપ આશ્ચર્ય કર્યું છે, આ માત્ર પણ મૂર્ખ કોમ્પ્યુટર વિજ્ઞાન પ્રચલન છે. વિશ્વમાં ઘણી વાર શબ્દો માટે માત્ર મૌખિક જગ્યામાં જરૂર છે. તેથી જો તમે અમુક સામાન્ય શબ્દમાળા વિશે વાત કરવા માંગો છો, કમ્પ્યુટર વૈજ્ઞાનિકોનું માત્ર foo કહે છે જ્યારે તેઓ રેન્ડમ શબ્દ જરૂર છે, પછી તેઓ બાર કહેવું જો તેઓ બીજા રેન્ડમ શબ્દ જરૂર છે, પછી તેઓ baz કહેવું જો તેઓ ત્રીજા શબ્દ જરૂર છે, પછી તેઓ qux કહેવું જો તેઓ ચોથા શબ્દ જરૂર છે, અને પછી ત્યાં એક વિશાળ શું qux પછી આવે છે, કારણ કે ધાર્મિક ચર્ચા ઑનલાઇન છે, જેથી તમે Google કરી શકો છો કે જે આકૃતિ માટે અન્ય મનસ્વી શબ્દ શું હોવું જોઈએ. પરંતુ આ કોઈ પ્રકારની જેનો અર્થ છે, જોકે foo બાર, તમે Google કે, એનો અર્થ એ થાય છે તો, જે અહીં વ્યુત્પત્તિશાસ્ત્ર ભાગ છે. તેથી આ પછી કરવાનું છે બધા રેખા 1 દીઠ આ શબ્દમાળાઓ ઓફ છાપવા છે. તેથી તેના બદલે હું જો, છતાં, માટે થોડો પારખુ વિચાર માગતા હતા, ધારો કે હું લાઇન દીઠ દરેક શબ્દમાળા છાપી ન માંગતા નહોતા; હું લાઇન દીઠ દરેક શબ્દમાળા દરેક અક્ષર છાપો માગે છે. હું કેવી રીતે બદલે છે કે જે કરી શકે? મારે શું આ કાર્યક્રમ વિશે ફેરફાર કરવાની જરૂર નથી જો હું શબ્દ દરેક ન છાપી માંગો છો પણ મને પત્ર દ્વારા પત્ર દ્વારા દરેક શબ્દ અક્ષર છાપો માંગો છો, પછી પત્ર દ્વારા પત્ર દ્વારા આગામી શબ્દ પત્ર? અમે આ વિચારો કેવી રીતે આમ અત્યાર સુધી ભેગા? યાહ. [વિદ્યાર્થી]% સી. >> અધિકાર બધા. તેથી અમે ક્યાંક એક% C જરૂર છે. ગુડ, કારણ કે હું સંપૂર્ણ શબ્દમાળાઓ છાપી નથી માંગતા, હું અક્ષરો છાપવા માંગો છો. બીજું શું? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> રસપ્રદ. તેથી અમે એક બીજા અહીં પરિમાણ જેવું હવે જરૂર કારણ કે એક એરે તરીકે argv લાગે છે, પરંતુ તે શબ્દમાળાઓ ઝાકઝમાળ છે. પરંતુ એક તરીકે માંગો, 15 મિનિટ પહેલા શબ્દમાળા શું છે? તે અક્ષરો ઝાકઝમાળ છે. તેથી ખરેખર, argv અક્ષરો ઝાકઝમાળ ઝાકઝમાળ છે, અક્ષરો એરે પણ દર્શાવે છે. તેથી તે તારણ છે કે અમે માત્ર વધારે ચોરસ કૌંસ સંકેતો વાપરી શકો છો. તેથી આ કરવા દો. 19 લીટી પર આ લૂપ ટોચ માં, હું મને પરથી argc માટે ફરી વળવું જાઉં છું, પરંતુ પછી હું આ કરવા જઈ રહ્યો છું: માટે - હું મને હવે ઉપયોગ કરી શકતા નથી. હું અન્ય ચલ જરૂર છે કારણ કે હું ઉપર શબ્દો ફરી વળવું માંગો છો પછી પણ શબ્દો અક્ષરો પર જેથી હું પ્રકારના એક ઊભી ધરીની અને આડી ધરી, કલ્પનાત્મક જેવું હોય છે. તેથી પૂર્ણાંક જ 0 નોંધાયો નહીં, તો પછી હું લાંબા તરીકે જ કરતા ઓછી છે જ કરવા માંગો છો - અને હું આ બીટ માં સાફ પડશે. હું એક શબ્દમાળા માં અક્ષરો પર કેવી રીતે ફરી વળવું છે? અમે આ ક્ષણ પહેલા હતી. Strlen argv ઓફ [i]. ગુડ. અને ફરી, હું થોડો અકુશળતા બનાવવા છું અહીં બનાવી n અથવા જે નથી દ્વારા, પરંતુ અમે પાછા કે આવવું પડશે. તેથી હવે J + +. હવે હું વધુ અહીં ઇન્ડેન્ટ છે. હું શું હવે નથી દરેક ઇટરેશન પર છાપી કરવા માંગો છો? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] તેથી >> [i] મારા શબ્દ આપશે. [I] [જ], સૉર્ટ એક મેટ્રિક્સ જેવા હોય છે. ગણિત-y પૃષ્ઠભૂમિ સાથે તમે તે, અમે આ અથવા એરે આ એરે મેટ્રિક્સ માં ઈન્ડેક્સીંગ જેવું પણ ઊંડા કરશો, આ માળખું 2-પરિમાણીય. તેથી હવે આપણે શું અહીં થાય છે. મને મારી મોટી ટર્મિનલ વિન્ડોમાં ખોલો. મને 1 નું argv બનાવી પુનઃ ચલાવો. અને હું ખરાબ કર્યા છે તે અહીં છે, કે જે સારા પાઠ છે કારણ કે હું પણ આ કરવા ભૂલી ગયા છો. સર્વથા 'strlen' C લાઈબ્રેરીમાંથી કાર્ય જાહેર 'પ્રકાર બિનનોંધાયેલ સાથે - હું પણ તે શું છે તે અર્થ બાકીના ખબર નથી, પરંતુ હું આ જોવા મળ્યા છે, તે પહેલાં, સર્વથા જાહેર કર્યુ. જ્યારે પણ આપણે આ ભૂલ જુઓ, આ શું સામાન્ય રીતે સૂચક નથી? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> હું ટોચ ઉપર એક લાઈબ્રેરી ભૂલી ગયા છો. પરંતુ એક મિનિટ રાહ જુઓ. સામાન્ય રીતે હું ઘણું ખરાબ કર્યું છે કારણ કે હું CS50 પુસ્તકાલય ભૂલી ગયા છો, પરંતુ તે ત્યાં છે. સામાન્ય રીતે હું ઘણું ખરાબ કર્યું છે કારણ કે હું ધોરણ I / O ભૂલી ગયા છો અને પ્રમાણિકપણે, હું પણ આ કરવાની જરૂર નથી. અમે GetString આજે નથી વાપરી રહ્યા છો. તેથી હું શું ગુમ છું? ત્યાં બીજી લાઈબ્રેરી કે હવે અમે ક્યારેક ક્યારેક કહેવાય string.h ઉપયોગ કરવાની જરૂર છે, અને આ માત્ર હજુ સુધી અન્ય લાઈબ્રેરી કે વધુ કાર્યો કે ધોરણ I / O નથી છે તેથી આપણે મારા મોટું ટર્મિનલ વિન્ડોમાં પાછા જાઓ. ઠીક છે. હવે, તે ખરેખર ખૂબ જ, હું માનું હું ખોટો હતો. હું CS50 પુસ્તકાલય આવ્યું હતું. તેથી અમે 2 માર્ગે ક્યાં આ ઠીક કરી શકે છે. અમે તાલીમ વ્હીલ્સ લઇ બોલ હમણાં શકે છે અને માત્ર આ કરવા માટે, અથવા હવે માટે જ છે કે સરળીકરણ રાખે લેટ્સ પ્રકારનો આ પાછા પેસ્ટ કરો, કે સમસ્યા હલ, અને હવે ટર્મિનલ વિન્ડોમાં પાછા જાઓ. તેથી સ્પષ્ટ થઈ માટે CS50 પુસ્તકાલય માં, માત્ર વિધેયો નથી, તે કીવર્ડ શબ્દમાળા છે, કેમ કે કે ભૂલ માત્ર થયું છે. અહીં અમે જાઓ. હું પુસ્તકાલય મુદ્દાઓ બંને સુધારેલ. દાખલ કરો. ગુડ. 1 ના Argv, foo બાર, દાખલ કરો. ઉત્તમ. તેથી હવે અમે દરેક લાઇન દીઠ 1 મુદ્રિત શબ્દ દરેક અક્ષર હોય છે, જે ખૂબ જ રસપ્રદ કાર્યક્રમ માટે નથી, પરંતુ હવે અમે નોટિસ શબ્દો પર જ નથી વારો ક્ષમતા ધરાવે છે પણ શબ્દોમાં વ્યક્તિગત અક્ષરો છે, જે અત્યંત અનહદ પરિચિત લાગે પર આ જેવી શબ્દમાળામાં મૂંઝાયેલું અક્ષરો જેવા કાર્યક્રમો સરળ પણ. ચાલો આગળ વધો અને અમારા વિરામ 5-મિનિટ અહીં લે છે. અને જ્યારે અમે પાછા આવો, અમે કાર્યક્ષમતા વિશે વાત શરૂ કરી શકશો જેની સાથે અમે આ વસ્તુઓ વધુ સારી રીતે કરી શકે છે. અધિકાર છે. અમે પાછા છે. અમારા TFs જેમણે bananagrams ઘણો ભજવે છે એક માટે આભાર, અમે ખરેખર અમારી સાથે અક્ષરો સંપૂર્ણ ટોળું આજે અહીં છે શારીરિક આ થોડું પ્લાસ્ટિક ટુકડાઓ સાથે અવતાર, દો અને મને પ્રસ્તાવ છે કે આ ખાલી સફેદ સ્લેટ અહીં મારું કમ્પ્યુટર માં રેમ પ્રતિનિધિત્વ - લેપટોપ, ડેસ્કટોપ, ગમે છે - અને ત્યાં તેને ઘણો જેવી લાગે છે કારણ કે, જો અમે નાના બાઇટ કદના ટુકડાઓમાં આ રેમ કકડો શરૂ ચાલો આપખુદ કે કંઈક છે જે કદ અને તે ઝાંખી પડી ગઇ રજૂ કહેવું - ત્યાં અમે જાઓ, અને ચાલો થોડો અહીં ઝૂમ - ચાલો કંઈક છે જે કદ એક બાઈટ રજૂ કહો. તેથી અમે ખરેખર આ મેમરી ની અંદર અથવા બાઇટ્સ અક્ષરો સંપૂર્ણ જથ્થો ફિટ થઈ શકે છે, તરીકે સંબંધિત અહીં માપ દ્વારા સૂચવવામાં આવ્યું હતું. તેથી હવે ધારો કે ધ્યેય માટે શબ્દમાળા માટે મેમરીને ફાળવવા છે. આ ખરેખર કેવી રીતે કામ કરે છે? કાર્યક્રમો અમે લખાણ થઈ, અમે સામાન્ય રીતે GetString કર્યું છે ઉપયોગ કરીને કરવામાં આવ્યા છે, પરંતુ હવે, સ્પષ્ટ રીતે, આ અન્ય ચેનલ દ્વારા જે અમે argv વપરાશકર્તા ઈનપુટ વિચાર કરી શકો છો આદેશ વાક્ય દલીલો મારફતે. પરંતુ શું ખરેખર હૂડ નીચે રહ્યું છે? તે તારણ જો આપણે કહી - ચાલો GetString પાછા સ્ક્રોલ - કાર્ય GetString આ CS50 પુસ્તકાલય માં, વપરાશકર્તા શબ્દમાળા માટે પૂછવામાં આવે છે, કેટલાક શબ્દ માં વપરાશકર્તા પ્રકારો - આપણે તેના હેલ્લો કહે છે. અને અમે અઠવાડિયા ભૂતકાળમાં દંપતી માટે કહેતા કર્યું છે કે GetString પરત કિંમત હકીકત માં એક શબ્દમાળા છે શબ્દ હેલો જેમ. પરંતુ શું ખરેખર આમ GetString છે? હેલો, દાખલ માં વપરાશકર્તા પ્રકારો તરીકે, GetString આઉટ figuring છે, ઠીક, કેટલા અક્ષરો આ છે? આ H-ઇ એલ એલ ઓ છે. આ કિસ્સામાં Linux ને - તેથી તે માટે ફાળવવા જરૂર છે, તે ઓપરેટિંગ સિસ્ટમ પૂછો જરૂર - ઓછામાં ઓછી 5 બાઇટ્સ માટે હેલો સંગ્રહવા માટે. અને તે શું પછી શું આગળ એકવાર તે પાછા ઓપરેટિંગ સિસ્ટમ તે 5 બાઇટ્સ નોંધાયો નહીં બહાર હેલો પાછળ મૂકે માટે પાછળ પાછળ પાછળ છે. અને તેથી છે ખરેખર GetString પાછી શું માહિતી એક ભાગ છે કે જે આ જેવી લાગે છે. પરંતુ આ બીટ અચોક્કસ છે કારણ કે તે તારણ આપે છે કે તે સરળ નથી ફક્ત કોમ્પ્યુટરની મેમરીમાં સ્ટોર હેલ્લો તરીકે કારણ કે ધારો કે મારા કાર્યક્રમ છે કે જે હું સી માં લખ્યું છું પછી ફરીથી GetString કહે છે, અને આગામી શબ્દ માં વપરાશકર્તા પ્રકારના બાય છે, બાય. વેલ, હું મેમરી કે શબ્દ બાય ક્યાંક ફિટ કરવાની જરૂર છે. હું હેલો નથી clobber કરી શકો છો. હમણાં પૂરતું, હું કોમ્પ્યુટર ફક્ત આ જેવી પર ફરીથી લખી શરૂ કરવા માટે નથી માંગતા મૂળ શબ્દ કારણ કે હું હજુ પણ આ શબ્દ નો ઉપયોગ કરી શકે છે ચલની માં હેલો શકાય બીજે ક્યાંક મારી કાર્યક્રમ છે. તેથી બી વાય-E ને અપ ક્યાંક મેમરી માં બીજું અંત છે. પરંતુ સંમેલન ખાસ છે કે આગામી શબ્દમાળા તમે ફાળવી કદાચ, પરંતુ હંમેશા માટે આગળના ઉપલબ્ધ મેમરી સ્થાન પર અંત રહ્યું છે. અને જો હું કોઇ મેમરી માટે ઓપરેટિંગ સિસ્ટમ પૂછ્યું છે છેલ્લા સમય હું GetString કહેવાય, કારણ મતભેદ શબ્દ બાય છે છે અપ મેમરીમાં હેલો શબ્દ પછી તરત અંત જઈ રહી છે. પરંતુ આ સમયે તમે કદાચ જ્યાં સંભવિત સમસ્યા ઊભી થાય છે જોઈ શકે છે. કારણ કે મેમરી આગળના હિસ્સામાં, આગામી બાઇટ્સ કે જે હમણાં જ મુક્ત હતા - સફેદ સ્લેટ સાફ - તે કમ્પ્યુટરની મેમરી જમણે હેલો આગળ હતા, તે પ્રથમ શબ્દમાળા હું અચાનક હવે બદલી શકે છે માટે પૂછવામાં જેવી લાગે છે કારણ કે હું અનિવાર્યપણે બદલ્યું છે તે HELLOBYE માટે ને બદલે કોઈક બાય શરૂઆત અને હેલો ઓવરને demarcing. તેથી તે તારણ આપે છે કે શું ખરેખર હૂડ નીચે છે રહ્યું, જે તમને ઑનલાઇન સંદર્ભો અથવા વિભાગ કે પુસ્તકોમાંથી જોવામાં હોઈ શકે છે નથી અથવા હજુ સુધી બધા પર છે ત્યાં ખરેખર એક ઇરાદાપૂર્વકની સીમાંકન છે એક કોમ્પ્યુટરની મેમરીમાં શબ્દો વચ્ચે. અને હકીકતમાં, આ અહીં કિસ્સામાં, બદલે માત્ર બાય આગામી અધિકાર હેલો કરવું, તેના બદલે, કમ્પ્યૂટર વિશિષ્ટ અક્ષર છે, ખાસ નલ અક્ષર જેથી વાત કરવા માટે, મૂકે છે, જે 0 બેકસ્લેશ સાથે માર્કર સાથે રજૂ થાય છે. તેથી લાંબા વાર્તા ટૂંકી યાદ છે, કે જે અક્ષરો ASCII માં રજૂ થાય છે. તે ASCII માત્ર સંખ્યાઓ અને અક્ષરો વચ્ચે મેપિંગ છે, અને તે અક્ષરો મોટા ભાગના આશરે મૂડી એ માટે 65 શરૂ કરવા માટે, પરંતુ તે વળે બહાર તમે ચોક્કસપણે પૂર્ણાંક તરીકે અથવા બાઇનરી માં નંબર 0 પ્રતિનિધિત્વ કરી શકે છે, અને તે તારણ વિશ્વના લાંબા નિર્ણય લીધો, લાંબા પહેલાં, "તમે શું જાણો છો?" "રજૂ કીબોર્ડ પર કોઈપણ અક્ષરો નથી લેટ્સ અનામત નંબર 0 - "કોઈ પત્રો, કોઈ નંબરો, કોઈ વિરામચિહ્ન. 0 ખાસ છે." "તે ખાસ નલ અક્ષર જ હશે, અને અમે તેને 0 \ તરીકે લખી રહ્યા છીએ." આ છે જો આપણે માત્ર 0 0 લખ્યું તફાવત એક પાત્ર છે. યાદ છે કે ત્યાં 0 માટે એએસસી કોડ છે, 1, 2 માટે 3 માટે, કારણ કે અક્ષર 0 સંખ્યા 0 થી અલગ છે. અને તમે જોઈ શકો છો કે જો તમે 1 સપ્તાહ થી પાછળ જુઓ અમે જ્યારે પ્રથમ વાર તે ASCII વિશે વાત કરી, 0 અને 1 અને 2 અને 3 9 સુધી તમામ રીતે પોતાના ASCII કોડ હતી. તેઓ, સાંયોગિક નથી, 0 9 બનાવ્યા. તેઓ એકદમ ભિન્ન છો. તેથી 0 ફક્ત અર્થ થાય છે ", હું ખાસ છું" અને \ 0 અર્થ, શાબ્દિક અર્થ, "હું 0 અક્ષર નથી છું." "હું આ ખાસ કિંમત છે, નલ પાત્ર છું." તેથી હું ખરેખર આ બીજા એક જરૂર છે કારણ કે હું એ જ ભૂલ બે વાર કરી શકો છો. તેથી શબ્દ બાય પછી અમે પણ આ નલ અક્ષરો બીજા એક જરૂર જઈ રહ્યાં છો. મને મારી પેન અહીં ગ્રેબ અને દો મને ઝડપથી અન્ય \ 0 ડ્રો જેથી પછી હું 2 શબ્દમાળાઓ માટે ઓપરેટિંગ સિસ્ટમ પૂછ્યું છે GetString GetString બીજા કૉલ દ્વારા અનુસરવામાં મારફતે, આ એ છે જે મેમરીમાં ખરેખર છે. તેથી જ્યારે હું પાછા શબ્દમાળા મેળવવા માટે, હું ખરેખર છે કે પાછા ફરવામાં છું, અને જ્યારે હું આગામી શબ્દમાળા મેળવવા માટે, હું ખરેખર પાછા ફરવામાં છું કે. જેથી આ પ્રશ્ન begs, strlen, સૌ પ્રથમ, તે શું પરત કરવું જોઈએ? જ્યારે હું શબ્દમાળા ઓ પર strlen કૉલ અને ઓ શબ્દ હેલ્લો કે વપરાશકર્તા લખ્યો હતો અમે શું ચોક્કસપણે કહ્યું નહોતું હેલો લંબાઈ થોડી મિનિટ પહેલા થયું હતું? તે 5 અધિકાર હતો? H-ઇ એલ એલ ઓ. અને તે ખરેખર છે strlen કામો કેવી રીતે. તે આપે છે એક સામાન્ય મનુષ્ય શું કરવા પ્રયત્ન શબ્દમાળા લંબાઈ અપેક્ષા રહેશે. પરંતુ હકીકતમાં, મોટા કેવી રીતે અક્ષરો હેલ્લો સ્ટોર છે જે એરે છે? તે ખરેખર છે 6. Strlen તેથી તમે તે હકીકત ઉલ્લેખ કર્યો નથી. પરંતુ હૂડ હેઠળ કોમ્પ્યુટર ખરેખર 6 બાઇટ્સ ઉપયોગ કરે છે એક શબ્દ 5-અક્ષર સંગ્રહ, અને આ વાત સાચી ભલે કેટલા શબ્દ છે. ત્યાં હંમેશા શબ્દમાળા ઓવરને અંતે ખાસ નલ બંધ અક્ષર જ હશે તેની કુલ લંબાઈ demarc. તેથી પછી જો તમે હવે 20 strlen અમલીકરણ, 30 વર્ષ પહેલાં વ્યક્તિ છે, તમે કેવી રીતે strlen પોતે અમલીકરણ જઈ શકું? અમે માટે મંજૂર લાગી કે તે અસ્તિત્વમાં છે, જેમ આપણે લેવા માટે મંજૂર છે કે printf અસ્તિત્વમાં હોય, પરંતુ જો હેલો પ્રશ્ન માં શબ્દ છે અને હું મેમરી હોય શું કંઈક કે આ જેવી લાગે છે, જો તમે strlen reimplement હતી કારણ કે તમે કહેવામાં આવ્યું હતું કારણે કે, પ્રમાણિકપણે, તમે નથી જાણતા હતા strlen અસ્તિત્વમાં - તમે તમારા પોતાના પર આ એક પત્રક હતી - તમે strlen કેવી રીતે અમલ કરી શકે છે કંઈક કે આ જેવી લાગે છે જ્યારે આપેલ? હવે આપણે જાણીએ છીએ શબ્દમાળા ઝાકઝમાળ છે, અમે પર વ્યક્તિગત અક્ષરો દરેક ભારપૂર્વક કહેવું કરી શકો છો કંઈક મદદથી - દો ફ્લાય પર આ કામ કરવાનો પ્રયત્ન કરે છે. ચાલો હું ઉપકરણ માં જાઓ. દો મને એક નવી ફાઇલ, strlen.c બનાવો. મને આગળ હવે જાય છે અને stdio.h કે જેથી અમે printf વપરાશ હોય છે સમાવેશ થાય છે. મને પૂર્ણાંક મુખ્ય (રદબાતલ) કરે છે. ઓહ. હું માત્ર મારા પોતાના પર આ કરીશ તો પછી હવે. [Chuckles] તમે આભાર. આ હું શું કરી રહ્યો છું. અધિકાર છે. તેથી પહેલાં હું સ્ક્રીન પર ચાલુ, હું કે બધી લખ્યો. અને હવે હું શું કરવા જાઉં છું નીચેના છે: printf ("મને શબ્દમાળા આપો:") કે ફક્ત રુંવાટીવાળું સૂચનો. હવે મને ઓ શબ્દમાળા = GetString નથી. હું પહેલેથી જ ફેરફાર હવે કરવાની જરૂર છે. હું CS50 પુસ્તકાલય ઉપયોગ કરું છું, અચાનક, તેથી દો મને આગળ વધો અને cs50.h. લખો -% D, strlen [ઓ]: printf ("ધ લંબાઇ છે: અને હવે આ કરવા દો અને હું હજી સુધી પૂર્ણ છું. બીજું શું હું આ કાર્યક્રમ ઉમેરવા છે? [વિદ્યાર્થી] string.h. >> String.h. તેથી હવે, અમે strlen ઉપયોગ કરી રહ્યાં છો, તેથી આપણે તો ખાતરી કરો કે કમ્પાઇલર જાણે કે જ્યાં છે, જેથી થોડો સેનીટી તપાસો. હું 8 લીટી માં શબ્દમાળા મેળવવામાં છું, અને 9 લીટી માં હું% d સાથે તેની લંબાઈ છાપવા છું. તેથી આપણે આગળ વધીશું અને આ અપ ખોલો. અમે strlen બનાવવા છે - ઠીક કમ્પાઇલ - strlen - દો મને ઝૂમ - દાખલ કરો, H-ઇ એલ એલ ઓ, દાખલ કરો. લંબાઈ 5 છે. ઠીક છે, તેથી strlen માટે કામ લાગે છે, પરંતુ વિશ્વમાં જે જાણતા હતા. તેથી આપણે હવે strlen જાતને નીચે અમલ. મને આ લાઇબ્રેરી દૂર લઈ લો. અમે લાંબા સમય સુધી string.h કારણ કે હું પણ તે અસ્તિત્વમાં જ નથી ખબર નહોતી વપરાશ હોય છે. પરંતુ તે ઠીક છે કારણ કે હું મારી જાતને strlen અમલીકરણ કરી શકો છો અને પાસે તે ઇનપુટ કહેવાય શબ્દમાળા લે છે, અને હવે હું આ શબ્દમાળાને લંબાઈ આકૃતિ જરૂર છે. કેવી રીતે હું આ કરી શકો છો? તો શું હું - ચાલો જોવા આ કેવી રીતે કરવું - તમે શું કરવા માંગો છો? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] ઠીક. >> તેથી અમે રીતે સમૂહ આ કરી શકો છો. મને આ અભિગમ લેવા પ્રયાસ કરો. મને મારી પૂર્ણાંક ચલ હું આપી છે, તેથી હું 0 અંતે શરૂ થાય છે. દો અને મને આ કહેવું: ઇનપુટ જ્યારે [i] શું સમાન નથી? \ 0. તેથી તે બધા અક્ષરો છે જ્યારે તેમને એક કાર્યક્રમ માં શાબ્દિક લખવા સાથે કેસ સાથે, વળે છે, તમે એક, બે અવતરણચિહ્નો નથી અવતરણ કરવા ઉપયોગ કરે છે. તેથી જો હું એક પત્ર લખી હતી, હું કે નહિં હોય, તો અક્ષર બો થશે, હું આ કરી શકે છે. આ વિરોધાભાસ રીતે, એક શબ્દમાળા હોવી જોઈએ, વ્યક્તિગત નથી અક્ષર હશે. તેથી હું \ શાબ્દિક 0 માંગો છો. મારે શું આ લુપમાં કરવા માંગો છો? ખરેખર, હું બીજા ચલ જરૂર છે, તેથી લંબાઈ પૂર્ણાંક 0 નોંધાયો નહીં. જો તમને ખાતરી શા માટે આપણે આપણી કર્યું શરૂ ન હતી, હવે અમે નીચે આ માર્ગ જઈ રહ્યાં છો, હું શું 9 લીટી પર શું કરવા માંગો છો? લંબાઈ + + અને પછી અહીં નીચે 10 લાઇન વળતર લંબાઈ છે. આમ કેવી રીતે strlen અમલમાં છે? તે વાસ્તવમાં આ જેવી છે કદાચ અમલમાં મૂકી. કદાચ વ્યક્તિ લૂપ માટે વપરાય છે, જે કદાચ એક કરતા હો ત્યારે લૂપ - જેઓ જાણે છે? અમે ખરેખર વાસ્તવિક સ્ત્રોત કોડ ખાતે હૂડ નીચે જુઓ પાસે છો અમુક ફાઈલ કદાચ string.c કહેવાય છે. પરંતુ અહીં આપણે હું શું કરી રહ્યો છું વિશે વિચારો. હું મને કહેવામાં આવે ચલ જાહેર છું, 0 થી તેને સમાન સુયોજિત કરીને. હું પછી બીજા ચલ કહેવાય લંબાઈ જાહેર છું, 0 થી તેને સમાન સુયોજિત કરીને. પછી હું જ્યારે ઇનપુટ માં ઇથ અક્ષર વિશિષ્ટ નલ અક્ષર 0 \ માટે સમાન નથી કહી રહ્યો છું, લંબાઈ વધારતી. પરંતુ જલદી ઇથ અક્ષર આ વિશિષ્ટ અક્ષર છે, શું લૂપ માટે થાય છે? તે ટૂંકા સર્કિટમાં. તે અટકે છે, જેનો અર્થ છે કે અમે તે પછી તરત લંબાઈ આવો. તેથી જો હું નથી ગડબડ ન હતી, ચાલો આગળ વધો અને મારા ટર્મિનલ વિન્ડોમાં પાછા જાઓ. મને પુનઃકમ્પાઈલ. અને હું સ્ક્રૂ નહોતો. પુસ્તકાલય strlen કાર્યમાં અસંગત redeclaration. તેથી હું પણ મારા પોતાના સારા માટે હોંશિયાર અહીં વિચાર કરવાનો પ્રયાસ કરવામાં આવ્યો હતો. આ કમ્પાઈલર ખરેખર જાણે છે કે ત્યાં એક strlen કહેવાય વિધેય છે ભલે અમે પુસ્તકાલય નથી. કે દંડ છે. ગમે. અમે માત્ર તે પછી સહકાર રહ્યા છીએ. ચાલો આ બોલ નામ બદલો. મને લંબાઈ માટે તેનો ઉપયોગ અહીં બદલાય છે, અને આ રણકાર ખુશ કરશે. એક અલગ રીતે, કારણ કે આ કેટલાક કાર્યોને જેથી રફૂ કરવું સામાન્ય છે જેમ - strlen, prinf - તેઓ ખરેખર ખાસ દરજ્જો જેવું હોય છે. અને તેથી રણકાર થોડી તેમને વિશે ખાસ કંઈક જાણે છે. જે હંમેશા સૌથી વિધેયો સાથે કેસ નથી, જેથી કે શા માટે આપણે અંતે yelled મળ્યો છે. મને ફરીથી પ્રયાસ કરો. Thankfully, તે સમય કામ કર્યું હતું. તેથી હવે દો મને મારી પોતાની strlen કાર્યક્રમ ચલાવો. મને શબ્દમાળા આપો: H-ઇ એલ એલ ઓ દાખલ કરો,. અને હું ઘણું ખરાબ છે. શા માટે? >> [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] ચોક્કસ. >> તેથી હું મારી જાતને અહીં સરસ દેખાવ ખૂબ અનંત લૂપ છે ભલે હું દરેક ઇટરેશન પર કોઈ incrementing છું કારણ કે, હું શું કરી રહ્યો છું સ્પષ્ટ નથી? હું હું નથી incrementing છું. ઠીક છે. સરળ સુધારો. હા? ઠીક છે. નંબર હવે અમે કેટલીક અન્ય સામાન્ય ભૂલ સાથે દુશ્મનાવટ કરી સ્કોર જ્યાં હું કૌંસ જરૂર છે. અને પ્રમાણિકપણે, આ કોડ માટે નીચ જોવા શરૂ થાય છે, તેથી અમે આ ક્ષણ માં સફાઈ ઘણો પ્રયાસ લેવા પડશે. પરંતુ હવે હું બંને લંબાઈ i અને incrementing છું. પ્રમાણિકપણે, હું પહેલેથી જ સુધારણા માટે તક અહીં જુઓ, પરંતુ અમે પાછા કે આવવું પડશે. તેથી હવે આપણે માત્ર ખાતરી અમે ઓછામાં ઓછા છો પ્રોગ્રેસ બનાવવા કરો. આ તમને થોડા થયું છે, અને હું અગાઉથી આ ઉલ્લેખ ઉપેક્ષા. જ્યારે તમે આ જેવી પરિસ્થિતિ એ કમનસીબી હોય, તો તમે કેવી રીતે આ ઠીક નથી આ સાધન અથવા તમારા કમ્પ્યુટર પુન: શરૂ કરો અથવા વિન્ડો બંધ ટૂંકા? તે ખરેખર સરળ છે. નિયંત્રણ સી આ થોડું ગાજર પ્રતીક સી મોકલવા માટે, અને કરશે કે ફક્ત મોટા ભાગના પ્રોગ્રામો બંધ. જો તમે ખરેખર ખરાબ અનંત લૂપ કે સામગ્રી અનંત ઘણી વખત છાપવા છે છે, ક્યારેક તમે નિયંત્રણ સી એક હજાર બનાવવા માટે ખરેખર તેને સાંભળી વખત ફટકો પડશે. તેથી માત્ર હવે ખ્યાલ કારણ કે મેં કંઈપણ છે, કે જે તદ્દન સરળ ન હતો છાપવા છું. અને તકનીકી, એકવાર માટે પૂરતા છે, પણ હું વ્યગ્ર વિચાર અને હું સામાન્ય રીતે તે અનેક વખત નહીં. Strlen તેથી. મને શબ્દમાળા આપો: હેલો. છે તે આ સમયે કામ ચાલી રહ્યું છે? ઠીક છે. અન્ય સામાન્ય ભૂલ. માટે પુનઃકમ્પાઈલ છે. કે ઇરાદાપૂર્વકની હતી, એક કે. અધિકાર છે. Strlen તેથી H-ઇ એલ એલ ઓ લખો. ઉત્તમ. તેથી અમે હવે strlen એક થી 5 હોય છે. તેથી અમે શાબ્દિક કે ચક્ર reimplemented છે. તેથી હવે આપણે આ સાફ કારણ કે આ નથી મને પ્રભાવિત મારું કોડ ડિઝાઇન સાથે. અમે શું સ્પષ્ટ રીતે આ કાર્યક્રમ દૂર કરી શકો છો આ સાફ? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> યાહ. શાબ્દિક અર્થ, અમે i અને લંબાઈ સમાન સારવાર કરી રહ્યાં છો. તેથી અમે ફક્ત શા માટે સ્માર્ટ મળી નથી અને કહે લંબાઈ જ્યારે? તેના બદલે, ચાલો ફક્ત તે સાથે શરૂ લંબાઈ કહી, તે 0 થી આરંભ કારણ કે મૂળભૂત રીતે શબ્દમાળા કોઈ લંબાઈ ધરાવે છે ત્યાં સુધી અમે આકૃતિ તે શું છે. હવે અમે આ કરવા માટે, અને હવે આ એક સુંદર ભવ્ય કાર્યક્રમ છે. એક ચલ. હું તેને સાફ અપ, તે કડક છે. તેથી હવે આપણે મારા ટર્મિનલ વિન્ડોમાં પાછા જાઓ. ચાલો આગળ વધો અને આ ચલાવો. Strlen બનાવો. સારું લાગે છે. Strlen ફરી ચલાવો, દાખલ કરો. મને શબ્દમાળા આપો: હેલો લખો. અને તે 5 તરીકે કામ કરી રહ્યું છે. હવે, સ્પષ્ટ છે, જો હું ન હોય તેવા પરચૂરણ હતી, દાખલા તરીકે, 1 શબ્દમાળા માં હેલો અને પછી બીજા બાય, અમે ચોક્કસપણે બહુવિધ શબ્દો હોઈ શકે છે. જો અભિવ્યક્તિ હું વાસ્તવમાં લખો ઇચ્છતા હેલો પરંતુ ન હતી, હમણાં પૂરતું, અધિકાર WORLD, નોટિસ કે અમે નહિ શું આ પરિસ્થિતિ અહીં છે, હેલો? કે એવું સુચન કરશે કે જે 2 શબ્દમાળાઓ છે. તમે ચોક્કસપણે જગ્યા પટ્ટી અક્ષરો છે, તેથી જો આપણે ખરેખર લાંબા શબ્દસમૂહ માં ટાઇપ કરી શકો છો હેલો વર્લ્ડ જેમ, અમે ખરેખર શું મેમરીમાં હશે ત્યાં કે થોડું કંઈક જુએ છે. અધિકાર છે. કોઇ પ્રશ્નો હોય તો શબ્દમાળાઓ ના અહીં પ્રતિનિધિત્વ વિશે શું? નહીં? અધિકાર છે. તેથી હું અગાઉ જણાવ્યું હતું કે strlen ફરી ફોન અને ફરીથી જેમ કે ઈરાદાપૂર્વક કદાચ શ્રેષ્ઠ વિચાર છે કારણ કે તમે કામ સંપૂર્ણ ઘણું કરી શકાય જઈ રહ્યાં છો નથી ફરીથી અને ફરીથી અને ફરીથી. ખરેખર, શું કામ પ્રકારની બહાર શબ્દમાળા લંબાઈ figuring, દેખીતી રીતે કરવા માટે જરૂરી છે? તમે શરૂઆતમાં શરૂ અને પછી જુઓ, જુઓ, જુઓ, જુઓ, જુઓ હોય જ્યાં સુધી તમે છેલ્લે તે વિશિષ્ટ અક્ષર જુઓ, જે બિંદુએ, હેં, હવે હું લંબાઈ છો. તેથી પહેલાં જ્યારે અમે strlen ફરીથી અને ફરીથી અને ફરીથી હતી કહેવાય છે, કારણ હું દરખાસ્ત કરી હતી કે મૂર્ખ પ્રકારની હતો કારણ કે ફરી, તે શબ્દમાળા કે જેવો દેખાય છે. તે કેટલાક લૂપ દ્વારા દર વખતે તમે ફરી વળવું બદલી નથી ચાલી રહ્યું છે, જેથી તમે બિનજરૂરી કાર્ય કરી રહ્યા છો. તમે તે જ સમયે ખબર, એક અલગ તરીકે, રણકાર જેમ કે કમ્પાઇલરોનો આ દિવસોમાં જોઈએ છે ઘણા વર્ષોથી વિકસાવવામાં આવી છે, અને કમ્પાઇલર લેખકો, પ્રોગ્રામરો, ખૂબ સ્માર્ટ છે. અને તેથી તે તારણ આપે છે કે રણકાર અને અન્ય કમ્પાઇલરોનો ખરેખર બહાર આકૃતિ કરી શકો છો કે, ઠીક, હા, તમે તમારી પરિસ્થિતિ strlen લખ્યું હતું, જે ટેકનિકલી અર્થ એ છે કે અમે તેને કૉલ ફરીથી અને ફરીથી અને ફરીથી આવશે. પરંતુ સ્માર્ટ કમ્પાઇલરોનો ખરેખર ગરીબ વપરાશકર્તા નિર્ણયો તે પ્રકારના પ્રભાવશાળી કરી શકો છો તમારો કોડ બહાર વસ્તુઓ નિવારણ છે. તેથી માત્ર ખ્યાલ નથી આવતો કે ક્યારેક કમ્પાઇલર અમને કરતાં વધુ સ્માર્ટ છે અને પ્રકારની અમારી પોતાની ભૂલો છુપાવશે. પરંતુ ચોક્કસપણે જ્યારે તે સમસ્યા સમૂહો અને તેના જેવા માટે આવે છે, નથી તે મૂળભૂત ભૂલભરેલા ડિઝાઇન નિર્ણયો વિશે વિચારવાનો શકાય સંભવિત સરળ કારણ કે અમે રસ્તો વધારે કામ કરી શકાય છો માટે કરતાં અમે ખરેખર શું હોય છે. પરંતુ કેટલી વધારે કામ? હેલો વર્લ્ડ કિસ્સામાં, ચાલો આ સમસ્યા માપ સામાન્ય રીતે શરૂ કરો. સમસ્યા લંબાઈ અથવા સમસ્યા માપ શું છે જ્યારે શબ્દ માં લખ્યો વપરાશકર્તા હેલ્લો છે? તે દેખીતી રીતે છે 5, કદાચ 6. પ્લસ અથવા 1 બાદ. ગમે. તે આવું નજીક અમે ફક્ત 5 કૉલ કરશો. જેથી સમસ્યા માપ શું અહીં જ્યારે બહાર હેલો લંબાઈ આકૃતિ કરવાનો પ્રયાસ? તે 1, 2, 3, 4, 5, અને કદાચ છેલ્લો અક્ષર માટે 6, પરંતુ આપણે સામાન્યીકરણ કે n તરીકે. તેથી n એ, માત્ર ચલ n એ, છે કમ્પ્યુટર વૈજ્ઞાનિકોનું શું ખાસ ઉપયોગ કરશે માટે હાથ પર એક સમસ્યા માપ, અને સમસ્યાનું વર્ણન છે કેટલા હેલ્લો છે? કેટલો સમય strlen લે? તે n પગલાંઓ ક્રમ પર લઈ જાય છે, જ્યાં દરેક પગલું, એક અક્ષર અંતે દેખાવ અર્થ થાય છે, એક અક્ષર પર જુઓ, એક અક્ષર જુઓ. અને અમે આ ચર્ચા જ્યારે પાછળ હતી, વ્યવહારોની સંખ્યામાં કંઈક લે છે. વર્ગ ખૂબ જ પ્રથમ દિવસે અમે દરેકને awkwardly હતી ઉભી રહે છે, અને પછી દરેક એકબીજા સાથે બંધ પેરિંગ શરૂ ક્રમમાં વાસ્તવમાં ગણતરી કરવા માટે રૂમમાં આદર્શ કેટલા લોકો હતા. અને અમે પણ અન્ય વસ્તુ હતી જેમાં જો હું તેને જૂની શાળા માર્ગ કર્યું ફક્ત 1, 2, 3, 4, 5, 6 અને શરૂ તેથી આગળ છે, જે ખૂબ છે, કે જે સમસ્યા કદ માપ n ના હતી. ત્યાં રૂમ n એ લોકો હતા. પરંતુ હું કે ઝડપથી કરવા, અધિકાર શકે છે? વિદ્યાર્થીઓ શાળા શૈલી હું 2s માં ગણતરી શરૂ કરી શકે છે. 2, 4, 6, 8, 10, 12. અને તે ખૂબ જ ઝડપી, અને ખરેખર તે લાગે છે. તે શાબ્દિક ઝડપથી બે વાર છે, પરંતુ ફરીથી, જો અન્ય 400 લોકો આ રૂમમાં ચાલ્યો એક જ સમયે તમામ, તે ગાણિતીક નિયમો અન્ય 400 અથવા કદાચ 200 પગલાંઓ લેશે. પરંતુ તેનાથી વિપરીત, જો આપણે ખરેખર સ્માર્ટ વિચાર અને અમે તેના બદલે છે તો તમે બધા તમે પોતે જ ગણે છે, યાદ કેવી રીતે અલ્ગોરિધમનો કામ કર્યું હતું. તમે બધા હતી. મને આ ઝડપથી આગળ ચાલો. તમે બધા હતી, તમે જોડી, પછી તમે અડધા નીચે બેઠો, તમે અડધા નીચે બેઠો, તમે અડધા નીચે બેઠો, અને 0 સપ્તાહ આ લૂપ દરેક ઇટરેશન પર, અમે હાથ પર સમસ્યા અર્ધા અને n / 2 ગયા, 4 / n એ પછી, 8 / n એ પછી. અને તે કારણે છે કે જો અન્ય 400 લોકો રૂમ, કોઈ મોટો સોદો માં ચાલી, અમને 1 વધુ રાઉન્ડ લેવા કરશે, વધુ નથી, 400 નથી રાઉન્ડમાં 200 વધુ રાઉન્ડ. અને તેથી વાર્તા અમે જ્યારે પાછા કહ્યું આ સાથે થોડો કંઈક હતું. આ લાલ લીટી અહીં રેખીય છે, તે સીધા છે, અને તે n તરીકે લેબલ છે તરીકે સમસ્યા કદ વધે છે કારણ કે, જો તમારી અલ્ગોરિધમનો અથવા કાર્યક્રમ તમે જેની સાથે હલ કરી રહ્યાં છો તે n પગલાં લે છે, અમે તેને એક સીધી રેખા જ્યાં તેને વધુ મોટા એ સમસ્યા કદ સમય લે તરીકે કાવતરું કરી શકો છો. અને twosies અભિગમ, 2 ગણાય, 4, 6, 8, હજુ પણ એક સીધી રેખા, થોડી વધુ સારી. તે થોડા ઓછા સમય લે છે, જેથી તે પીળા રેખા બિંદુ માટે લાલ લીટી બિંદુ નીચે છે. પરંતુ વધુ સારી પણ આપણે શું લઘુગુણકીય સમય કહેવાય છે અને આ પવિત્ર ગ્રેઇલ હતી જ્યાં પણ જો ફરી અમે રૂમમાં લોકોની સંખ્યા બમણી, અમે વર્ગ પ્રથમ દિવસ કે ફોન બુકમાં કદ ડબલ, કોઈ મોટો સોદો તે 1 વધુ પાનું આંસુ લે છે, 1 વધુ નીચે બેઠક લે છે ક્રમમાં સમસ્યા કે બમણી મોટી છે ઉકેલવા માટે. અને તેથી વાતચીત અમે હવે છે કર્યા શરૂ વિચાર અમે ખરેખર કેવી રીતે કરી શકું સમસ્યાઓ અસરકારક રીતે હલ જો અમે આ જેવી સમસ્યાઓ સરળ ધ્યાનમાં? ધારો કે આપણે જે પાછળ કેટલાક નંબરો છે 8 દરવાજા પાસે, અને આ નંબરો દરેક કોઈપણ રીતે સૉર્ટ થાય છે, તેઓ આ દરવાજાની પાછળ યાદૃચ્છિક પૂર્ણાંકો કરશો, અને અમે પ્રશ્ન પૂછો તમે નંબર શોધવા વિશે કેવી રીતે જવું નથી - જે જાણે છે - 7 આ દરવાજાની પાછળ? તમે, એક મનુષ્ય, શું કરવા માટે મને 7 નંબર શોધવા થશે જો ફરી આ દરેક દરવાજા છે અને કિંમત જુઓ તમે બારણું ખોલો છે? તમારા અલ્ગોરિધમનો શું કદાચ હશે? [અશ્રાવ્ય વિદ્યાર્થી પ્રતિભાવ] >> તેથી ડાબી સાથે શરૂ અને બારણું ખોલો, એક બારણું ખોલો, એક બારણું ખોલો. અને સૌથી ખરાબ કિસ્સામાં, લાંબા તે કેવી રીતે અમને લાગી 7 નંબર શોધવા જવાની છે? અને ફરી, તેઓ છટણી નથી, જેથી કરી રહ્યાં છો તે તરીકે સરળ નથી, સાથે સાથે, હું 7 બારણું ખોલી જાઉં છું. અમને લેવા માટે, વધુમાં શકે, 8 પગલાંઓ. ખરાબમાં ખરાબ કિસ્સામાં, 7 દરવાજા રેખા ખૂબ જ ઓવરને અંતે રેન્ડમ છે, તેથી અમે તમામ n દરવાજા પ્રયાસ હોય છે. જેથી ફરી અહીં, અમે એક રેખીય અલ્ગોરિધમનો હોય એવું લાગે છે. હકીકતમાં, અમે આ જ વર્ષ થોડા પહેલા હતી. એક તમારા પૂર્વજોના ચોક્કસપણે આ સાથે પડકારવામાં આવી હતી જ્યાં અમે ડિજિટલ આવૃત્તિ નહિં હોય, તો અમે તેના બદલે એક બ્લેકબોર્ડ હતી તેના પર કાગળ કેટલાક ટુકડાઓ સાથે. અને મેં વિચાર્યું કે મારે શું કરવું થશે શું છે આ કેવી રીતે થયું પર એક ઝડપી પાછા નજર, એક મંચ પર શ્રેષ્ઠ અને કદાચ સૌથી બેડોળ તકો એક નિદર્શન અધિકાર સેન્ડર્સ પર અહીં છે. અમે સંખ્યાની 2 પંક્તિઓ હતી. અમે ફક્ત શું સીન સાથે અહીં ખૂબ જ આ પંક્તિઓ શીર્ષ માટે થાય છે જોવા જઈ રહ્યાં છો. જ્યાં સુધી કોઈ ક્યારેય ફરી એક CS50 માં સ્વયંસેવકો, અમે સીન માટે કૅમેરા પર આ રાખવા આશીર્વાદ હતા, જેથી તેઓ જાણે છે કે લોકો સેંકડો આ કરવામાં જોવાનું છે વર્ષ માટે હવે. પરંતુ સીન સુંદર કામ કર્યું છે - અથવા તેણે - ખરેખર અમને ચોક્કસ નંબર શોધવા અંતે?. તેથી આપણે કેવી રીતે તેણે આ અલ્ગોરિધમનો ઉકેલી કે જેથી અમે લાંબા પહેલાં આ વાતચીત ફરી શરૂ પડશે કેવી રીતે અમે વસ્તુઓ કાર્યક્ષમ શોધો. [વિડિઓ પર Malan] હું આ દરવાજાની પાછળ 7 નંબર છુપાયેલ છે, પરંતુ આ દરવાજા કેટલાક દૂર tucked તેમજ અન્ય બિન નકારાત્મક નંબરો છે, અને તમારા ધ્યેય માત્ર એક એરે તરીકે નંબરો આ ટોચ પંક્તિ લાગે છે અથવા માત્ર કાગળ તેમની પાછળ સંખ્યામાં ટુકડાઓ શ્રેણી છે, અને તમારા ધ્યેય છે, માત્ર ટોપ એરે અહીં મદદથી, મને 7 નંબર શોધો. અને અમે તે પછી વિવેચન જોઈ રહ્યા છે કેવી રીતે તમે આમ વિશે જાઓ. >> અધિકાર બધા. [Malan] અમને 7 નંબર શોધો, કૃપા કરીને. [અટ્ટહાસ્ય] [Malan] નંબર [અટ્ટહાસ્ય] 5, 19, 13, [અટ્ટહાસ્ય]. તે યુક્તિ પ્રશ્ન નથી. 1. [અટ્ટહાસ્ય] આ બિંદુએ તમારી સ્કોર ખૂબ સારી નથી, જેથી તમે તેમજ ચાલુ રાખવામાં શકે છે. [અટ્ટહાસ્ય] 3. પર જાઓ. પ્રમાણિકપણે, હું મદદ નથી, પરંતુ આશ્ચર્ય તમે શું વિશે વિચારવાનો પણ કરી શકો છો. [અટ્ટહાસ્ય] માત્ર ઉપરની પંક્તિ, જેથી તમે 3 ડાબી મેળવ્યા છે. તેથી મને 7 શોધો. [વિદ્યાર્થીઓ murmuring] [Malan] 17. [વિદ્યાર્થીઓ murmuring] [Malan 7]! [વધાવી] જેથી બુધવારે અમે આ અને વધુ સોફિસ્ટિકેટેડ અલ્ગોરિધમનો માં વસ્તુઓ શોધવા માટે ડાઇવ આવશે. હવે અમે તમને સીન સાથે રજા અને તમે બુધવારે જોશો. [CS50.TV]