SPEAKER 1: اجازه دهید در مورد آب صحبت کنید.
در این مشکل، ما درخواست کاربر را به ما چه مدت در دقیقه دوش آنها بود
و سپس ما محاسبه معادل تعداد بطری های آب
که دوش خود استفاده می شود.
>> پس چه هستند ما به انجام برای این مشکل؟
اول، ما در حال رفتن به می خواهید بی درنگ و پس از آن اعتبار
ورودی که کاربر به ما می دهد.
هنگامی که ما اطمینان حاصل شود که ما ورودی کاربر معتبر،
ما قصد داریم برای محاسبه تعداد معادل بطری آب
که کاربر در طول حال دوش خود، و پس از آن ما
رفتن به آنها بگویید با چاپ کردن این تعداد است.
>> بنابراین اجازه دهید اول ما مقابله کار، باعث و اعتبار
ورودی کاربر.
برای این که ما نوشته ام تابع را برای شما به نام
get_int واقع در کتابخانه CS50.
get_int تضمین می کند که ورودی کاربر یک عدد صحیح است، بنابراین هر اعداد مثبت،
اعداد منفی، یا صفر همه پذیرفته شده است.
اما اگر کاربر ورودی هر چیز دیگری، بنابراین هر ترکیبی از حروف و اعداد
یا اعداد اعشاری، سپس کاربر خواسته می شود دوباره امتحان کنید
و تابع هر چیزی را قبول تا زمانی که کاربر به آنها یک عدد صحیح است.
>> پس چگونه ما استفاده get_int؟
اگر شما فضای کاری خود را باز کنید و ایجاد یک فایل به نام integer.c اجازه دهید
زیر را تایپ کنید.
برچسب شامل cs50.h.
این نیاز است، زیرا get_int است یک تابع کتابخانه CS50 است،
بنابراین ما باید هشتگ شامل بیانیه خود را در جهت
به استفاده از تابع.
و سپس در اصلی من عمل من فقط رفتن
به سادگی get_int تابع پاسخ.
>> بنابراین اجازه دهید این اجرا کنید و ببینید چگونه کار می کند.
من در حال حاضر از آن وارد شده است، پس بیایید فقط به جلو و اجرای این برنامه،
./integer.
در اینجا من یک اعلان و اینجا جایی که من ورودی ارزش است.
بگو من فقط در برخی از اعداد صحیح قرار داده، 50، excepts برنامه و واریز
و این است که.
>> اما می گویند من دوباره آن را اجرا کنید و من چیزی ورودی دیگری.
شاید، سلام جهان.
که یک عدد صحیح به طوری که نمی برنامه من نخواهید دوباره.
بیایید دوباره با سعی کنید شاید یک اعشاری این زمان.
0.5، دوباره، نه یک عدد صحیح به طوری برنامه آن را قبول نمی
و آن را به من بگویید به دوباره سعی کنید.
بنابراین اجازه دهید آن تعداد دیگری به من بدهید.
این برنامه آن را می پذیرد، واریز شده، و ما در حال انجام است.
>> بنابراین در حال حاضر ما باید یک تابع که ما را تضمین می کند اجازه می دهد تا و
که کاربر ورودی یک عدد صحیح، اما چگونه می توانیم
در واقع مسیر از حفظ عدد صحیح توسط کاربر وارد شده؟
خب، همه ما به انجام فروشگاه است این مقدار را در یک متغیر، می گویند N.
بنابراین اگر من اعلام عدد صحیح n، و من مقدار آن را به get_int،
سپس n سپس ذخیره خواهد داد هر چه ارزش کاربر وارد.
>> همه حق است، بنابراین در حال حاضر ما تضمین کرده ایم که کاربر ما یک عدد صحیح را
و ما می دانیم که چگونه برای پیگیری عدد صحیح، اما به یاد داشته باشید،
اعداد صحیح مثبت و منفی هستند.
بنابراین آن را واقعا حس را ندارد در زمینه این مشکل
که کاربر می کشد دوش می گویند دقیقه منفی 12.
بنابراین ما نیاز به مطمئن شوید که کاربران در واقع به ما می دهد یک عدد صحیح مثبت.
در حال حاضر ما فقط یک ندارد تابع تک برای آن،
بنابراین ما در حال رفتن به ایجاد می کند که خودمان.
>> بنابراین ما به طور مستمر می خواهید سریع کاربر
تا زمانی که ما یک عدد صحیح مثبت می دهد.
اگر من انجام کاری به طور مداوم سپس که شبیه به یک حلقه، تکرار.
بنابراین یکی از سازه که استفاده می کنیم در C برای اجرای تکرار و حلقه
یک حلقه در حالی است.
بنابراین یک حلقه در حالی به عنوان در اینجا نشان داده شده است، اجرا خواهد شد
آنچه در بدنه حلقه به عنوان زمانی که ارزیابی شرایط داده شده
به درست است.
به محض این که شرایط به false ارزیابی، و سپس
برنامه به ادامه خواهد داد هر چه می آید پس از بدنه حلقه.
>> بنابراین در حالی که حلقه در حال رفتن به واقعا در CS50 مفید است.
اما در این خاص مورد، ما می دانیم که ما
رفتن به سریع کاربر حداقل یک بار و پس از آن تنها حلقه در صورت لزوم.
بنابراین در اینجا ما به یک آمده ساختار خاص و که
بسیار شبیه به در حالی که حلقه به نام یک حلقه انجام دهند در حالی.
>> بنابراین یک حلقه انجام دهند در حالی اجرا بدنه حلقه حداقل یک بار
و سپس آن را چک کنید آیا آن را باید اجرا،
به عنوان یک حلقه در حالی که مخالف، که شرایط را بررسی کنید
و پس از آن اجرا بدن است.
بنابراین در یک حلقه انجام دهند در حالی آنچه ما ممکن است انجام دهید این است سریع کاربر برای یک عدد صحیح،
و پس از آن بررسی اگر آن را نامعتبر است و یا نیست.
اگر آن را نامعتبر، پس از آن ما تکرار این فرآیند درخواست کاربر
به ما عدد صحیح دیگر بدهد، و سپس تنها زمانی که که عدد صحیح، معتبر است،
ما به ادامه آنچه می آید پس از آن.
>> در حال حاضر شما متوجه خواهید شد که اعلام عدد صحیح N
کمی به آنچه که ما مختلف قبل از در مثال قبلی بود
و این به دلیل دامنه.
اگر ما عدد صحیح n اعلام کرده بود در داخل از بدنه حلقه انجام دهند در حالی،
پس از آن ما قادر نخواهد بود برای دسترسی به که مقدار n در خارج از این اشکال مختلف
طبی نشان می دهد بدن از حلقه است.
اما ما در واقع می خواهید برای دسترسی به مقدار n بعد از آن در برنامه های ما.
>> خوب، پس حالا اجازه دهید بحث در مورد چه این وضعیت باید باشد.
ما می خواهیم به تنها reprompt کاربران تا زمانی که N نامعتبر است.
بنابراین به خودتان فکر می کنم آنچه نامعتبر مقدار صحیح نگاه می خواهم
و سپس یک بولی ایجاد بیان به بیان است که.
>> ما تقریبا با زیرکار ما به پایان رسید ارشاد و اعتبار ورودی کاربر.
بنابراین اجازه دهید به این کمی کمی بیشتر کاربر پسند
و به کاربر یک کمی اطلاعات بیشتر
از آنچه ما باعث آنها را برای.
بنابراین اجازه دهید سریع کاربر، در هر تنظیمات، در دقیقهی رشته.
بنابراین با استفاده از اظهارات تابع () printf خود را، مطمئن شوید که شما در این مسابقه دقیقا.
>> خیلی خوب.
بنابراین در حال حاضر ما باید یک کاربر معتبر ورودی، یک عدد صحیح مثبت
ارزش برای چند دقیقه آنها در حمام به سر برد.
بنابراین آنچه که در آینده این است که محاسبه تعداد معادل بطری.
ما قصد داریم برای انجام در اینجا ممکن است به شما بسیار واضح است در ابتدا،
و این خوب.
آنچه ما می خواهیم انجام است می خواهید برای شروع تمرین
این ایده از تشخیص الگوها و در حال توسعه فرمول برای این مشکل است.
>> بنابراین ما در حال گفت در تنظیمات که یک دقیقه در حمام
معادل حدود است 12 بطری آب.
بنابراین از دو دقیقه خواهد بود معادل به 24،
و پنج دقیقه بود معادل 60 باشد.
بنابراین در حال حاضر اگر شما فکر می کنم شما آن را کردم، سپس اجازه دهید
ببینید اگر شما می توانید آمد تا با یک الگو یا فرمول
برای بیان اگر ما می گویند، N دقیقه، چند بطری آب
آیا این از نظر n بیان؟
>> باز هم، حتی اگر این ممکن است ساده در ابتدا،
بعدا در زمانی که ما برای به دست آوردن مشکلات پیچیده تر
ما در حال رفتن به خواهید برای وارد شدن عمل شناسایی
الگوهای و فرمول در حال توسعه به شکل این مسائل را.
>> در C شما به اینترنت دسترسی دارند عملیات های ریاضی استاندارد،
جمع، تفریق، ضرب، تقسیم و.
بنابراین من آن را به ترک شما هم اکنون می به شکل
چگونه برای بیان تعداد معادل بطری
که کاربر مصرف در طول دوش خود.
>> همه حق است، ما تقریبا انجام شده.
ما در بر کاربران برای ورودی خود خواسته ام، ما تضمین کرده ایم که آن را ورودی معتبر است،
و سپس ما نمیفهمد چگونه برای محاسبه معادل
تعداد بطری های که آنها مصرف می شود.
بنابراین آخرین کار این است که به خروجی تعداد معادل بطری
و امیدوارم تشویق آنها برای حفظ برخی از آب.
>> نوشتن ارزش خواهد یک دستور printf.
اگر من می خواستم به شما که من به سه حیوانات خانگی، به عنوان مثال،
من ممکن است یک دستور printf استفاده که به نظر می رسد چیزی شبیه به این.
من سه حیوانات خانگی، و یک جدید خط برای قالب بندی خوب.
>> در حال حاضر ما نمی خواهم به سادگی همه چیز کد سخت است.
می گویند که تعداد من حیوانات خانگی تغییرات در طول زمان.
سپس من قصد دارم به استفاده از متغیرهایی در دستور printf است.
بنابراین در اینجا شماره من یک عدد صحیح است.
بنابراین من قصد دارم برای ایجاد یک حفره یا سوراخ برای یک عدد صحیح با استفاده از٪ من.
من قصد دارم به ارسال رشته، و سپس پس از رشته
من ارسال یک کاما از هم و پس از آن متغیر است که من می خواهم برای چاپ.
به طوری که ارزش چاپ خواهد شد به جای آن حفره یا سوراخ،٪ من.
>> شما می توانید متغیرهایی استفاده کنید، به عنوان خوب، برای شناور با٪ F.
شما همچنین می توانید متعدد داشته متغیرهایی در یک رشته است.
برای مثال، اگر من به برخی از تعداد از سگ ها و برخی از تعدادی از گربه ها،
من دو متغیرهایی را در اینجا و سپس دو متغیر در سفارش مربوطه.
>> بنابراین در حال حاضر ما می دانیم که چگونه برای چاپ مقادیر ذخیره شده در متغیر،
بسیار آخرین چیزی که برای انجام دهید این است که اطمینان حاصل شود که ما
چاپ مقدار در قالب دقیق نشان داد در مشخصات.
با آن، ما را وادار ام کاربران و ورودی خود را تایید شده است.
پس از آن ما محاسبه کرده بودم معادل تعداد بطری های آب
که آنها در طول دوش مصرف می کنند، و ما که ارزش به آنها خروجی است.
و بنابراین، ما آب را کامل کردهاید.
>> اسم من هست [؟ Zamila،؟] و این CS50.