[Powered by Google Translate] LEXI ROSS: حسنا، مرحبا للجميع. مرحبا بكم في supersection CS50 الأولى. سيكون هذا الأسبوع فقط من supersections. بعد هذا، فسوف يكون الذهاب الى القسم الخاص منتظمة مع تعيين TF. ولكن هذا الاسبوع، ونحن نفعل ذلك في قليل من مختلف تنسيق، على الرغم من أن الشكل الفعلي، وكيف انها سوف تذهب لمدة ساعة ونصف المقبلة أو نحو ذلك، ستكون جميلة على غرار ما عليك أن تكون رؤية لل بقية الفصل الدراسي. ذلك ما نحن بصدد القيام به هو البدء من خلال الذهاب على جزء من مجموعة القسم مشكلتك. إذا كان الأمر كذلك كنت قد قرأت أكثر من مجموعة P، والتي من المؤمل أن يكون لديك، سترى أن هناك جزء يسمى "مقطع من وتهدف الأسئلة "، وهذه لأن يكون قد انتهى أكثر المقاطع في الخاص بك. بحيث يكون لديك ميزة بأن تكون هنا في أن تحصل على يذهب أكثر من هذه الأسئلة أكثر المفاهيمي مقرا لها. وبعد أن تفعل ذلك، ونحن في طريقنا للذهاب على الماضيين أسئلة القسم، والتي هي أكثر الغوص في ترميز نوع الأسئلة. لذلك نحن ذاهبون في الواقع أن يكون لك عدد قليل من الرجال اتخاذ دقيقة لكل سؤال، في محاولة لحلها بنفسك، و ثم ونحن في طريقنا للعمل معا باستخدام CS50 جديدة مساحات أداة ويذهب أكثر من الأجوبة حتى يكون لديك كل رمز الصحيح للمراجعة. حتى بضع الإعلانات. لا ننسى أن هناك ساعات العمل كل ليلة هذا الأسبوع في أننبرغ 8 حتي 11، بذلك تأخذ الاستفادة من تلك. وأيضا، لا تبدأ ع تعيين وقت متأخر جدا في الأسبوع. بدء الليلة أو ليلة الغد على أبعد تقدير. سوف نأسف لذلك إذا كنت تنتظر طويلا لبدء واجهت القضايا. حتى تأخذ نصائحنا وتبدأ بالتأكيد في وقت مبكر. سوف يكون هذا وسيلة جيدة للبدء مع هذه الأسئلة القسم. لذلك أنا يكسي، من جانب الطريق. أنا TF. وهذا هو دان، الذي هو أيضا TF. DAN BRADLEY: يا شباب. LEXI ROSS: وانه ذاهب للحصول على بدأت الأسئلة. DAN BRADLEY: حسنا. لذلك أنا ذاهب ليعرض فقط مترجم الزوجين قليلا القضايا التي نحن بصدد الحديث عن ومجرد الذهاب من خلال نوعا من الأفكار المفاهيمية التي نحن بحاجة فعلا لتشغيل الرمز، سواء في الأجهزة أو مع نوع من لدينا وهمية الأجهزة المنزلية، وتشغيل CS50 والمسافات. لذلك دعونا نرى فقط إذا كان أي شخص لديه جمهور في أي فكرة حول ما نتحدث عنه. فما هي مكتبة في سياق مدونة؟ أي شخص لديه أي فكرة؟ حسنا. الحلو. AUDIENCE: مثل الأسهم من الوظائف التي شخص آخر برمجة بالفعل أن نتمكن من بناء؟ DAN BRADLEY: بالضبط. حتى مكتبة هو تقييم الوظائف التي شخص آخر ومبرمجة مسبقا أننا لا يجب أن إعادة تنفيذ أنفسنا. لذلك لدينا أشياء مثل مكتبة I / O القياسية، cs50.h المكتبة، التي هي الأشياء التي في العالم، في الإنترنت، جعلت من الموظفين الذي يجعل لدينا كما يعيش أكثر سهولة المبرمجون. إذا كيف يمكنك طباعة الأمور إلى الشاشة؟ ليس لدي فكرة، هل printf ذلك بالنسبة لي. انه شيء شخص آخر جعلت هذا هو بالفعل ممتاز ويعمل بشكل جيد جدا. حسنا. ذلك لاستخدام المكتبات، من ناحية أخرى، ومع ذلك، لديك للقيام فعلا بعض الأشياء الإضافية مع التعليمات البرمجية. بحيث يكون لديك لاستخدام مثل هذه الامور تشمل #. ماذا تفعل ذلك؟ ما هو الدور الذي أن اللعب عندما يكون لديك في هذا البرنامج؟ AUDIENCE: وهو يتيح لك الاستفادة من أي الوظائف التي هي [غير مسموع] مكتبة ببساطة عن طريق استخدام تعريفات التي لديها بالفعل [غير مسموع] المكتبة. DAN BRADLEY: حسنا. فإنه يتيح لك سحب وظائف المكتبة في التعليمات البرمجية، ولكن هو فعل ذلك بطريقة ليست بالضبط نفس مثل -lcs50، والتي سوف نحصل عليها في دقيقة واحدة. فإنه يتيح فقط مترجم نعرف أن مهلا، هناك هذه الوظائف التي سوف تأتي في التعليمات البرمجية. تكون على علم أنه إذا لم يتم بشكل كامل وصفوه في التعليمات البرمجية هذا أمامك، وهناك بعض من وظيفة المكتبة التي يتم الانتقال إلى العناية بها. حتى في حالة لل printf، والتي سوف نذهب أكثر من بضعة أوقات اليوم، هو المعيار I / O المكتبة. حتى حين كنت لا تعرف أي مكان printf في قانون بلدي من أي وقت مضى، على معيار I / O يعتني ذلك بالنسبة لي، وسأفعل # تشمل سوف stdio.h، وسحب في هذه الوظائف التي I لم تحدد أي وقت مضى. فما هو الفرق إذن بين هذا وتشمل # و-lcs50؟ ماذا تفعل عندما lcs50-I تمريرها إلى مترجم، مثل ضجيج؟ أي شخص لديه أي فكرة؟ حسنا. نعم؟ AUDIENCE: وهو يتيح لك الوصول إلى مكتبة CS50؟ DAN BRADLEY: وهو يتيح لك الوصول إلى مكتبة CS50 في أنه يحكي مترجم، ضجيج، التي مهلا، هذا هو المكان تذهب في الواقع للحصول على هذه الوظائف. وبالتالي فإن تضمين # يقول إن هناك هذه المهام في مكان ما. ويقول lcs50-، انتقل إلى هذا المكان في جهاز الكمبيوتر الخاص بك - هذا هو مكتبة CS50 - وسحب ما يصل رمز الفعلية لهذه الوظائف. هل هذا معقول، والجميع؟ لذلك فان هذه هي كل الأشياء التي هي لمساعدة المترجم الخاص بك جنبا إلى جنب مع جعل تشغيل التعليمات البرمجية في الواقع. سؤال سريع. لا يعرف الناس ما هو مترجم؟ جيد معنى؟ انها في الأساس مع قانون مكتوب لديك، تحويله إلى ثنائي، تحويل إلى رمز الجهاز، لذلك يمكن فهم جهاز الكمبيوتر الخاص بك فعلا. ودون مزيد من اللغط، ونحن في طريقنا للذهاب إلى أكثر تمارين الفعلية ترميز رفاق والحصول على بعض المتعة غرق في أسنانك، ويكسي سوف يذهب أكثر من ذلك. LEXI ROSS: حسنا. رهيبة. لذلك نحن في طريقنا للذهاب أكثر من الأسئلة هنا. لذلك أول واحد هو في الواقع، يمكنك أن ترى، انها قليلا صغيرة هنا، ولكن أساسا انها تطلب منك كتابة برنامج لاتخاذ بعض مدخلات المستخدم. لست متأكدا لماذا هناك مربع أسود هناك. انها غامضة. وينبغي أن يكون على ما يرام، وإن كان. لذلك يريد منك أن تأخذ إدخال المستخدم في مئوية، تحويل هذا إلى فهرنهايت، ونقول للمستخدم ثم ما درجة الحرارة سيكون في فهرنهايت. حتى تستطيع أن ترى عينة الإدخال / الإخراج تسلسل هنا. مدخلات المستخدم - بعد مئوية، ويشير إلى جريئة إدخالات المستخدم. وبالتالي فإن المستخدم مدخلات 100، ومخرجات البرنامج فهرنهايت، 212،0. وهذا تمييز مهم في هذا البرنامج هو أن نكون ستكون لدينا مكان واحد فقط عشري، لذلك سنرى كيفية القيام ذلك أيضا. وذلك شيء آخر هو أن نلاحظ أن نستخدمه a.out لأن ضجيج، ومترجم، تلقائيا أسماء الثنائية في ملفات a.out إلا إذا قمت بتحديد ذلك مع العلم معينة لإعطاء ذلك باسمه، ولكن الآن نحن ذاهبون فقط للاستخدام افتراضيا، a.out. لذلك دعونا نلقي الواقع بضع دقائق وحاول الكتابة خارج بعض التعليمات البرمجية لهذا أنفسكم. لذلك فمن 4:15. حتى في 4:20، ونحن نذهب إلى العودة و- يا حق،. مسافات. بارد. هذا هو نوع من مثل ما نسميه رمز هيكل عظمي في ذلك انها هيكل عظمي، ولكن لديك لملء في اللحوم من برنامج لجعل تشغيل فعلا. حتى تستطيع أن ترى في تضمين # توجيهات الى هناك لتشمل CS50 وstdio و. أشرت في تعليق الصيغة الفعلية لتحويل مئوية إلى فهرنهايت، في حال كنت لا تذكر من ارتفاع المدرسة العلمية أو غيرها. ثم وهذا هو مجرد هيكل عظمي ل وظيفة الفعلي الرئيسي. لذلك كل ما يجري هنا للذهاب هنا. ومن أجل الحصول على هذه المساحة في الواقع - لذلك يمكن الوصول إليها باستخدام هذه المساحات CS50 URL، الذي دان هو أريد أن أكتب على لوحة، وسوف يملي كذلك. DAN BRADLEY: cs50.net/spaces-- LEXI ROSS: / qWLc - أنا آسف، ذ. DAN BRADLEY: Y؟ LEXI ROSS: لا، لا، لا، لا. هذا شيء طيب. qYLcYWfg. لذلك يجب أن أرى الجميع نوع من أسماء ظهرت هنا. رهيبة. هذا يبدو رائعا. يعني الناس ينضمون إلى الفضاء. حتى إذا كنت لم حصلت على فرصة للعب في جميع أنحاء مساحات حتى الآن، وهذا هو في الواقع ما كنت على وشك أن تستخدم مع TFS الخاص بك في القسم على جميع فصل دراسي. كيف يعمل هو نوع من الجميع يكتب الخاصة بها يمكن رمز، ولا أحد يراها حتى تضغط على حفظ زر، والذي أنا والإشارة إلى الآن. لذلك أنا ذاهب للضغط على حفظ، وإذا ذهبت إلى جميع اسمي، التي يجب أن تكون قادرا على رؤية ذلك في الناس في هذا الفضاء، وهو يكسيس بيريل روس. فكيف انها سوف تبدو والنقر على اسمي، و وأنت تسير لرؤية مراجعة 5، التي هو أحدث مراجعة. نسخ مراجعة فقط 5 الى الفضاء الخاص بك عن طريق النقر عليه. حسنا. لذلك دعونا نذهب من خلال هذه المشكلة معا، وأنا ابن في طريقها فعلا لكتابة التعليمات البرمجية هنا على الشاشة. يمكنك تكبير قليلا. ثم مرة واحدة انتهيت، يمكنك نسخ بلدي آخر مراجعة في الفضاء الخاص بك، إذا كنت تريد أن ترى الحل النهائي. الآن، فضاءات لديها القدرة بالنسبة لي للذهاب ونرى في أي من التعليمات البرمجية التي قمت اللاعبين قد كتبت، ولكن فقط لأنه مثل قسم كبير وليس لدينا حقا نفس نوع من القدرات ومناقشة أصغر القسم، ونحن في طريقنا للذهاب فقط من خلال وانا فقط لكتابة التعليمات البرمجية. ولكن بالتأكيد وقف لي مع الأسئلة في أي لحظة. ونحن في طريقنا للذهاب من خلال ذلك النوع من خطوة خطوة لجعل متأكد من أننا نفهم كل جزء من ما يجري هنا. يمكن للجميع رؤية هذا النص هنا؟ لا أحد يريد أن أكبر؟ إذن ما هو أول شيء نحن ذاهبون الى القيام به هنا؟ أساسا جيدا، حيث أننا نريد للحصول على مدخلات من المستخدم، ونحن نريد أن يكون نوع من تجربة جيدة لل المستخدم، ونحن نريد فعلا أن نقول لهم ما تبحث عنه. لذلك دعونا طباعة بالضبط ما كنا نريد تشكيل المستخدم. فقط حتى لا تهتم رفع يدك، حشرجة الموت فقط تشغيله. ما هو الأمر لطباعة شيء ما على الشاشة؟ AUDIENCE: printf. LEXI ROSS: ممتاز. حسنا، printf ذلك. AUDIENCE: مهلا، يكسي؟ [غير مسموع]؟ LEXI ROSS: بالتأكيد. printf ذلك، كما رأينا في كثير من الأحيان في المحاضرة، هو قيادة لطباعة شيء إلى دفق إخراج قياسي. لذلك نحن نريد أن تطلب من المستخدم إدخال درجة الحرارة في درجة مئوية. والآن، ونحن نريد فعلا أن يتخذ الإدخال التي يطلقونها لنا وتخزينها في متغير. حتى لقد تعلمنا قليلا عن أنواع. يمكن للشخص يتذكر ما نوع كنا نريد لمتغير مع منزلة عشرية في ذلك؟ AUDIENCE: تعويم. LEXI ROSS: تعويم. نعم، ممتاز. انها تطفو. ذلك. وكيف نحن ذاهبون ل- تلميح كبير - الحصول على تطفو من المستخدم؟ AUDIENCE: GetFloat. LEXI ROSS: نعم. بارد. ويمكن للمستخدم أن يحتمل يعني ومحاولة لإعطاء لنا رقم سالب، ولكن دعونا لا تقلق بشأن ذلك لهذا المشكلة الآن. وأنت تسير لتقلق بشأن ذلك أكثر قليلا على الخاص الواجبات المنزلية على مجموعة المشكلة. لذلك دعونا نفترض أنها تعطي لنا عدد لا بأس به، ونحن الآن فعلا إلى تحويل عدد عشري من مئوية إلى فهرنهايت. لذلك دعونا التشاور صيغة لدينا هنا، وخلق دعونا ل جديد متغير والذي يطلق عليه فهرنهايت. درست الإملائي. انه نوع من الجنون، وأنا أعلم. ودعونا نعتمد على ترتيب العمليات لنوع من القيام في العمل هنا، ولكن سنستخدم الأقواس لمجرد أن يكون مطول تماما وواضحة. حتى 9 مرات مئوية مقسوما على 5. انا ذاهب للتصغير قليلا لذلك هذا يمكن أن يصلح على سطر واحد، ولكنني سوف تكبير مرة أخرى لأولئك الذين لا يستطيعون رؤية، أبعد في الظهر. آسف لذلك. المؤشر قضايا غريبة. بالإضافة إلى 32. حسنا، هل لديها أية أسئلة حول كيفية أضع في الصيغة، أو أي قضايا مع ذلك؟ نعم. AUDIENCE: هل نحن بحاجة لوضع printf قبل تعويم مئوية، تطفو خطوط النصي فهرنهايت؟ لا يهم النظام الذي هم فيه؟ LEXI ROSS: لذا فإن السؤال هو، هل نحن بحاجة إلى printf قبل ان نطلب من الواقع لتعويم؟ الجواب هو أن نقوم به. وبهذه الطريقة، أن المؤشر الذي يحصل المستخدم على مدخلاتها سوف تطفو تحدث بعد ج المطبوعة، أليس كذلك؟ وكان من المنطقي إذا كنت تعتقد منطقيا عن مثل كنت طالبا للمستخدم سؤالا، وكنت ثم كنت تلقي الجواب. لذلك فإنه يطبع ج، ومن ثم هناك المؤشر، ثم يمكن للمستخدم اكتب في القيمة، كما سنرى في وقت لاحق عندما كنا التجريبي. نعم؟ AUDIENCE: لماذا نستخدم تعويم وليس ضعف؟ LEXI ROSS: إذن مزدوج، أساسا، كاسم يعني، يعطينا ضعف كمية الدقة كما عوامة. ولكن عادة في C، في هذه الدورة، لعدد من الأسباب، ونحن في طريقنا لاستخدام العوامات. وهذا هو حقا كل دقة نحتاج فقط لل نوع من التحويلات درجة الحرارة الأساسية. عادة، هم أكثر الزوجي المستخدمة في لغة جافا، العوامات هي أكثر شيوعا في جميع C. رهيبة، أليس كذلك. DAN BRADLEY: أكثر واحد. LEXI ROSS: أكثر واحد. نعم؟ AUDIENCE: أين كنت وضعت على شريط المسافة؟ مثل، (غير مسموع) شريط الفضاء (غير مسموع)؟ هل يهم؟ LEXI ROSS: أوه، لا. لذلك لا يهم. أود أن الواقع قد وضعت مساحة أخرى هنا. ولكن ما يهم هو أنك تتفق في جميع أنحاء التعليمات البرمجية. حتى إذا كنت قررت استخدام نمط واحد من التباعد، للتأكد من يبقيه في جميع أنحاء التعليمات البرمجية كله، أو قد تحصل نمط خصم نقطة. حتى الاتساق هو مفتاح الحل. DAN BRADLEY: اعتقد انه كان يتحدث عن أن الفضاء. LEXI ROSS: أوه، كنت تتحدث عن أن الفضاء؟ من C الفعلية؟ AUDIENCE: نعم. LEXI ROSS: أوه، لذلك هذا مجرد لتبدو، أليس كذلك؟ حتى بهذه الطريقة عندما كنا تشغيل التعليمات البرمجية، إذا لم يكن لدينا هذا الفضاء هنا، إذا كان هذا يبدو، فإن المستخدم بدء الكتابة في العدد وسيكون من ممرود وصولا ضد القولون بعد C، وسوف تبدو قليلا أفضل إذا كان هناك مسافة. ويمكنك أن ترى أن أفضل قليلا مرة واحدة ونحن في الواقع تشغيل هذه التعليمات البرمجية، فإنه عندما نصل الانتهاء. رهيبة. نعم، سؤال واحد. AUDIENCE: هل يجب علي وضع الفاصلة العشرية بعد واحد من [غير مسموع]؟ LEXI ROSS: إذن لم تقم بذلك، بسبب ترتيب العمليات. لأن ذلك هو بالفعل فهرنهايت تعويم، كما هو مئوية، لا تحتاج للادلاء صراحة أي من هذه أرقام أخرى كما يطفو، وإن كان في غيرها الظروف، عندما كنت تتعامل مع رجات، يجوز لك لديك لوضع نقطة للادلاء صراحة على أنها تطفو. نعم؟ AUDIENCE: كنت أتساءل فقط إذا كان الأمر في رأس المال مثل هذه الأوامر GetFloat؟ LEXI ROSS: نعم، سؤال جيد. لذا فإن السؤال هو، لا يهم القيمة في أوامر مثل GetFloat؟ الجواب هو نعم، لا. حتى GetFloat، كما كان يصف دان في وقت سابق، ومكتبة وكتب وظيفة في مكتبة CS50، وأنها العاصمة G، F. العاصمة حتى إذا كنت لا تكتب مع هذه العواصم هناك، والمترجم لن يفهم ما كنت تعمل في اشارة الى. حسنا. نعم؟ AUDIENCE: هي حجة باطلة لالرئيسي دائما؟ LEXI ROSS: نعم، هذا سؤال آخر كبير. لذلك كان رمز التي نسختها من بلادي الفضائية عن طريق الخطأ بعض الحجج أكثر. لذا فإن السؤال هو، هو حجة على الوظيفة الرئيسية الفراغ دائما، وهو ما يعني أساسا لا شيء؟ الجواب هو لا. قد تلاحظ أن الشفرة التي تم نسخها من قبل بلدي كان ما قد تبدو مراجعة مثل أي شيء حقا أن يجعل بمعنى الآن، بعض * شار، argv، argc. لا تقلق بشأن ذلك في الوقت الراهن، ولكن عليك معرفة وقت لاحق على يفعلون تحدث فرقا. ولكن إذا كنت لا تستخدم هذا النوع من وظيفة إضافية التي ستتعرف فيما بعد، باطلة على ما يرام تماما. حسنا. وليس لدينا خطوة أخرى، وهي أننا نريد أن في الواقع تظهر للمستخدم ما هو تحويل درجة الحرارة. ذلك مرة أخرى، ونحن في طريقنا لاستخدام printf، ودعونا نقول واو، فقط لأجل الاتساق في. والآن ونحن في طريقنا للقيام بشيء قليلا صعبة. لذلك نحن ذاهبون الى استخدام العلم، أو نوع خاص من تدوين، لنقول printf لطباعة فقط مكان واحد عشري. ويحدث لا أحد يعرف ما الذي يجري للبحث أود، قبل أن اكتب بها؟ نعم؟ AUDIENCE: و 0.2٪؟ LEXI ROSS: نعم، نعم. في الواقع كان الأمر كذلك، فإنه من وثيقة حقا. 0.01f لو .01٪، ثم علينا أن نتذكر أن تدرج حجة أخرى إلى printf، والذي هو المتغير نفسه، وهو ن. خطوة واحدة الماضي. يمكن للشخص أن يتذكر ما هو في وظيفتنا الرئيسية؟ نعم، هناك ما يصل. AUDIENCE: العودة؟ LEXI ROSS: بالضبط. ذلك لأن هذا هو الباحث الرئيسي في العوائد، نريد أن العودة أيضا في كثافة العمليات. DAN BRADLEY: النسبة يجب أن تكون على الجانب الآخر. LEXI ROSS: حسنا. آسف يا شباب. كان ذلك خطأ. لذلك يأتي في المئة قبل 0.01. لذلك ل٪ 0.01 و. تلك هي نوع من الصعب أن نتذكر. كثير من الناس، مثلي، مجرد البحث عنها كلما نستخدمها. نعم، هناك ما يصل. AUDIENCE: لماذا هو 0.01 وليس 0.2 أو 0.1؟ LEXI ROSS: لا أعرف، في الواقع. هل تعرف؟ DAN BRADLEY: والسبب انها 0،01 في مقابل 0.02 في أو 0.2، أو 0.1، هو إجراء تعسفي إلى حد ما الطريقة التي مبرمج مصممة أصلا. AUDIENCE: وهذا ليس ما قصدته. أنا لا أطلب السبب. السبب (غير مسموع) لماذا. لدي كما هو مكتوب 0.2، وأنه يسلم اثنين - DAN BRADLEY: نعم. لذلك كنا الرغبة واحد فقط. AUDIENCE: أوه، حسنا. لذلك أنت يمكن أن ثم 0،01. DAN BRADLEY: وربما أيضا العمل 0،1. 0،01 يعمل كذلك. LEXI ROSS: أوه، ال 0 قد تكون لاظهار صفر، إذا انها أقل من واحد. DAN BRADLEY: نعم، أعتقد أن هذا هو الحق. لذلك فإن 0،01 تظهر الصفر إذا لم يكن لديك أي شيء من شأنها أن نذهب الى هناك بشكل طبيعي. حتى لو كنت، مثلا، وضع في 100 لمئوية، أنه سيكون يخرج إلى 212 فهرنهايت عادة في مثل بالضبط 212. إذا كان لديك 0.01، وسوف تظهر 212،0، كما عارض إلى 212 فقط. LEXI ROSS: وهذا الحق. حتى قراءته يقول أساسا printf، طباعة العلامة العشرية، وطباعة 0 إذا لزم الأمر. إن لم يكن، طباعة على المركز الأول العشرية. DAN BRADLEY: وسنقوم استكشاف بعض من هذه عندما نكون بالفعل بتشغيل التعليمات البرمجية. LEXI ROSS: نعم. AUDIENCE: حتى أضع 0.1. فإنه يطبع يزال الصفر والخمسين. DAN BRADLEY: إنه لا يزال يطبع صفر في؟ AUDIENCE: نعم. DAN BRADLEY: صاحبة الجلالة، حسنا. LEXI ROSS: كول. حسنا. المزيد من الأسئلة على هذا الرمز قبل أن ترجمة وتشغيل؟ لا أحد يرى أي البق هنا، أولا وقبل كل شيء؟ أي شخص يرى شيء ينبغي أن يكون هنا؟ لو كان هذا لديك مجموعة المشكلة، ماذا سيكون هنا ليست هناك الآن؟ نعم، عظيم. لذلك لم أكن تشمل تعليق لأنني تسليمها شفويا، ولكن إذا كنت أكتب هذا في مجموعة المشكلة، وأود بالتأكيد تريد وضع تعليق للإشارة إلى ما أنا به، أساسا، في البرنامج. وعليك نوع من التعود على ذلك، وأنت تتحرك من خلال الفصل الدراسي، وكمية مناسبة من التعليق. كنت لا تريد أن تكون مطول جدا وخطوط ووضع خطوط من التعليقات لكل من خطوط من التعليمات البرمجية الخاصة بك، ولكنك أيضا لا تريد أن تكون لا يكفي مطول وترك القارئ في محاولة لمعرفة ما هيك التعليمات البرمجية يقوم به. حسنا، باردة. دعونا نحاول تشغيل هذه التعليمات البرمجية. حسنا، انا ذاهب للتصغير قليلا. بارد. لذلك ستلاحظ أن هناك زر التشغيل هنا. دعونا انقر فوق تشغيل. لذلك ستلاحظ هنا، تماما كما في المواصفات عن مشكلة تعيين، هناك. / a.out. a.out هو اسم الملف القابل للتنفيذ الثنائي، الذي هو كلمة طويلة لملف واحد فقط يتألف من التعليمات البرمجية الثنائية التي جهاز الكمبيوتر الخاص بك يعمل بنظام التشغيل فعليا. وذلك كنا نتوقع، لدينا هنا C. لذلك ندعو إلى وجود عدد. AUDIENCE: 23. LEXI ROSS: 23. DAN BRADLEY: استغرق وقتا طويلا لديك برنامج لتشغيل. فقط تشغيله مرة أخرى. LEXI ROSS: أوه، يا سيئة. حسنا. مساحات من الصعب إرضاءه هو في بعض الأحيان. أنه يريد منك أن تفكر على قدميك. حسنا، 23. رهيبة. لا نعتقد أن هذا الجميع؟ بارد، لأنها تعمل. حسنا. دعونا نحاول أكثر زوجين. دعونا نحاول حالة حافة هنا. في علم الحاسوب، عندما نتحدث عن حالات الحافة، نعني حالات لبرنامج لتشغيل التي هي نوع من على جدا حواف المدخلات معقولة أو أن زوايا معينة من الاختبار المنطق في البرنامج، وهذا أكثر منطقية عندما كنا قيام برامج أكثر تعقيدا. دعونا نحاول 0. رهيبة. ونحن جميعا نعرف هذا. بارد. أي أسئلة أخرى حول هذا قبل أن أنتقل إلى البرنامج التالي؟ حسنا، ممتاز. حتى الآن، ونحن في طريقنا لل- تريد أن مجرد استخدام جهاز الكمبيوتر الخاص بي؟ DAN BRADLEY: نعم، هذا من السهل بما فيه الكفاية. كل الحق، والذهاب حتى للذهاب والتحدث عن جعل النسب المئوية. لذلك نحن أساسا، في ممارسة هذا القليل المقبل، والذهاب إلى تأخذ اثنين من المدخلات من المستخدم عدد صحيح، تأمل في الحصول على غير سالب البسط والمقام إيجابية، و أساسا تقسيمها وإخراج ما يخرج على أنه النسبة المئوية. لذلك نحن نريد لقبول فقط غير بسط الكسر والسلبية قبول القواسم الإيجابية الوحيدة، ويتساءلون لجديدة إذا لم تحصل ما تريد. كل الحق؟ بحيث تعطي الذهاب. LEXI ROSS: أوه نعم، هل تريد أن تفعل - أوه، ربما يجب على الناس نسخ قانون بلدي. DAN BRADLEY: نعم. LEXI ROSS: [غير مسموع] مسافات. AUDIENCE: لدي سؤال. إذا أنا باستخدام المسافات وأود أن أنقذ [غير مسموع] في فهرنهايت التحويل، يمكنني حفظه ثم قم بإجراء جديد - LEXI ROSS: يمكننا أن نفعل فقط فضاء جديد، أو قد فقط تريد نسخه ولصقه إلى ملف نصي أو حتى يكون لديك شيء عليه. DAN BRADLEY: سوف مجرد تغيير اسمي. LEXI ROSS: لذلك أنا فقط انقذ أحدث مراجعة tofahrenheit.c، حتى إذا كنت تذهب إلى AAAA يكسيس بيريل روس، يمكنك الذهاب في نسخ وأن آخر رمز، ومن ثم تبدأ في هذا واحد جديد، وهو ما أعتقد دان هو الذهاب الى توفير هيكل عظمي لبعض التعليمات البرمجية أيضا. حسنا. DAN BRADLEY: أحدث مراجعة لدي على الألغام، لذلك انها في هذا الوقت أعلى جدا، هو التنقيح 4، و سوف يكون لها ما تحتاج إليه للبدء. LEXI ROSS: سوف حق الكل، وأنا نسخ تلك الألغام في كذلك. DAN BRADLEY: حسنا. أعتقد أننا في طريقنا للبدء فقط تخطى هذا، إذا أي شخص مهتم. LEXI ROSS: نحن وجميع المهتمين. DAN BRADLEY: نحن ذاهبون لتبدأ فقط من خلال الإعلان بعض المتغيرات. لذلك لدينا البسط، وعلى سبيل الآن، انا ذاهب لبدء للتو مع القيمة -1، وبعد ذلك سوف أقوم بإعداد حلقة افعل الوقت. في حين - وذلك عندما لا أريد أن حلقة؟ متى أريد أن يتساءلون - نعم؟ AUDIENCE: عندما يكون أقل من أو تساوي الصفر. DAN BRADLEY: لماذا لا يكون مساويا للصفر؟ AUDIENCE: [غير مسموع]. DAN BRADLEY: نعم. ذلك لبسط، في حين انها مجرد البسط أقل من الصفر. هل هذا معقول للناس؟ نبقي حلقات في حين أن البسط أقل من الصفر، ونحن نستمر في طلب مدخلات جديدة، والحفاظ على تطالبهم إدخال أشياء جديدة. ولذا فإنني سوف يكون قليلا في printf هنا، غير سالب عدد الأسطوانات -. ثم نفعل نفس الشيء كما كان من قبل، إلا أننا نفعل GetInt، لمجرد أننا نريد أن نفعل ذلك كما النسب المئوية للرجات. حتى البسط = GetInt. حسنا، والآن عدد قليل من الأشياء. أحتاج هذا -1 هنا؟ AUDIENCE: [غير مسموع]. DAN BRADLEY: رقم لماذا لا؟ AUDIENCE: لأنك الحصول على قيمة عشوائية من المستخدم. DAN BRADLEY: بالضبط. ولكن لا أريد أن يكون الإعلان هنا؟ نعم. لماذا؟ AUDIENCE: لديك للعثور على السطح الخارجي للحلقة. خلاف ذلك، كنت لن يكون المتغير لبقية من البرنامج. DAN BRADLEY: بالضبط. النطاق. الحلو. هل هذا معقول للجميع؟ AUDIENCE: هل يمكن أن نقول إن وقت واحد أكثر من ذلك؟ DAN BRADLEY: حسنا. إذا كان الأمر كذلك كان لي أن تعلن هذه البسط داخل الحلقة، إذا كان لي هذا بدلا من البسط كونها البسط الباحث، وتخلصت من هذا تماما، والبسط تختفي. فإنه لا توجد خارج هذه الحلقة، لأن كل شيء ضمن نطاق هذه الأقواس المتعرجة. معنى؟ حسنا. ذلك لقاسم، ونحن نفعل شيئا من هذا القبيل إلى حد ما، وكثافة العمليات القاسم = - ولست بحاجة للتعادل - القيام به، وحين لفي هذه الحالة، ماذا تريد I؟ ما حالة لا أريد أن تزال حلقة على؟ AUDIENCE: أقل من أو يساوي 0. DAN BRADLEY: أقل من أو يساوي 0. القاسم <= 0. لا تنسى الفاصلة المنقوطة الخاص، والأطفال. لذلك نحن نفعل الشيء نفسه كما كان من قبل، وإيجابية printf القاسم، ونحصل على كثافة العمليات من هنا. هناك نذهب. GetInt. حسنا. ثم في النهاية، ونحن نريد لطباعة بعض مئوية. من أجل القيام بذلك، فماذا لدينا سلسلة تبدو وكأنها؟ printf. أي أفكار أخرى ما يمكنني القيام به هنا؟ نعم؟ AUDIENCE: ربما 0.2٪ [غير مسموع]. DAN BRADLEY: صحيح. حسنا. سأبدأ مع بت الأولى،٪٪ .02٪، ونقلت وفاصلة. وانا ذاهب لرمي خط جديد هنا، فقط لأنني مثل خطوط جديدة عندما أقوم به الأشياء. يجب أن أي نوع من التعبير الرياضية لدي هنا؟ AUDIENCE: الأقواس وتعويم. DAN BRADLEY: جيد. لماذا أريد أن يكون عليه في تعويم؟ AUDIENCE: [غير مسموع]. DAN BRADLEY: جيد، جيد. تطفو. AUDIENCE: البسط. DAN BRADLEY: البسط؟ حسنا، لذلك أفعل البسط عشري. AUDIENCE: مقسمة من قبل - DAN BRADLEY: مقسمة من قبل؟ AUDIENCE: المقام. DAN BRADLEY: هل يفعل القاسم، أو أفعل تعويم القاسم؟ AUDIENCE: القاسم فقط. DAN BRADLEY: حسنا. AUDIENCE: ويمكنك مضاعفة هذا الناتج في 100. DAN BRADLEY: وأنا أضرب هذا الرقم 100. AUDIENCE: ومن ثم قوسين حول التعبير بالكامل. DAN BRADLEY: صحيح. حسنا. تبدو جيدة؟ دعونا نحاول ذلك. -50. جيد، 50. 0، و 100، و 50٪. عملت بها تماما مثل أردنا. هذا الرمز لا معنى للإنسان؟ أنا ذاهب لحفظه حتى تتمكن من الحصول على نسخة منه. نعم؟ AUDIENCE: لماذا لا تحتاج إلى وضع (غير مسموع)؟ DAN BRADLEY: أين؟ AUDIENCE: مثل، عندما تقول القاسم يساوي [غير مسموع]. DAN BRADLEY: عندما يكون لدي هنا؟ لماذا لدي الباحث قبل ذلك؟ AUDIENCE: لأن الآخر لديه كثافة المعروض عليه. DAN BRADLEY: حسنا، لذلك لم يكن في حلقة، أليس كذلك؟ لذلك أعلن هذا الباحث القاسم فوق حلقة، وأنا لم يكن لديك في حلقة لأنني سيكون معلنا أنه حفنة من الأوقات، وانه لن يقوم فعليا الى أي مكان آخر في البرنامج. LEXI ROSS: نعم، الشيء المهم هو أن نتذكر أن المتغيرات تحتاج فقط إلى أن تعلن مرة واحدة. تخيل ذلك مثل إدخال متغير جديد إلى العالم عن طريق استدعاء INT أو تعويم أو غيرها، و بمجرد إعلانها، كل ما عليك القيام به لتغيير ذلك هو مجرد دعوة من قبل اسمها: القاسم، أو X، Y أو. تحتاج فقط إلى الكلمة فعلا لكثافة العمليات مرة واحدة فقط. DAN BRADLEY: نعم. AUDIENCE: هل يمكن ان توضح الفرق بين د٪ و٪ و وإذا قمت بتعريف من أي وقت مضى المتغير كما عشري؟ DAN BRADLEY: إذن د٪ و٪ وهنا؟ LEXI ROSS: إذن د الواقع يشير إلى أرقام فقط، وليس عشري، وهو نوع من الخلط. ليس هناك نوع يسمى عشري البيانات الفعلية، وعند تريد طباعة عدد صحيح، كنت أشير إلى أنها د٪، أو ٪، أيا كان د. F هو لتعويم، والتي كنت اعتقد انها سيكون لي، ولكن هذا في الواقع بالنسبة الباحث د. DAN BRADLEY: صحيح؟ AUDIENCE: إذن في البرنامج الآخر، لماذا لم نفعل فقط نفس الشيء عندما كنت تقول فهرنهايت؟ لماذا لم نضع، مثل -؟ DAN BRADLEY: في أسفل هنا؟ هل يمكن أن يكون. كان يمكن أن يكون مشروعا تماما. أود القيام به على هذا الطريق، مثل فصل أشخاص آخرين من ذلك إلى خطوط مختلفة من التعليمات البرمجية. وفي كلتا الحالتين يعمل بشكل جيد. ما الأمر؟ AUDIENCE: هل يمكن ان توضح ما٪٪ [غير مسموع]؟ DAN BRADLEY: حسنا، وبالتالي فإن بالمئة، بالمئة. الحق، كنت أريد أن يذهب أكثر من ذلك. يسمى في المئة أولا حرف الهروب، وفقط يقول الشيء وراء ذلك هو ليس في الواقع التعليمات البرمجية. حتى هذه النسبة الأولى، الحق، و٪ 0.02 و، و كل تلك .02٪ يعني شيء إلى printf بوصفها وظيفة. ٪٪، أردت فقط أن الواقع مجرد طباعة علامة في المئة. لذلك أنا لا أقول هناك أي شيء المهم وراء ذلك. أنا فقط أقول أن هناك علامة النسبة المئوية وراء ذلك. يرجى طباعة علامة النسبة المئوية. حتى في المئة، ثم آخر في المئة. AUDIENCE: هل يمكن أن تظهر ما ستبدو إذا كان لديك تطفو على أساس خط آخر؟ DAN BRADLEY: أوه نعم، بالتأكيد. حتى أنا يطلب مني لاظهار ما ستبدو لو كنت كان هذا البسط تعويم، كل هذا الرياضيات، على خط آخر. المائة حتى تطفو = - وأود أن تخلص من هذا وضعت للتو في المئة. وانها تفعل الشيء نفسه بالضبط، أنا فقط لديك متغير آخر. AUDIENCE: [غير مسموع]. DAN BRADLEY: انتقل لأسفل إلى ماذا؟ AUDIENCE: حتى أستطيع أن أرى [غير مسموع]. DAN BRADLEY: ما لا يمكن أن ترى؟ AUDIENCE: عذرا، كنت [غير مسموع]. DAN BRADLEY: نعم. AUDIENCE: حتى إذا نحن استبدال حرف الهروب، لنفترض أننا نريد أن يكون علامة الدولار بدلا من ذلك، لمجرد سبيل المثال، علامة الدولار وراء المئة؟ DAN BRADLEY: كلا. انها مجرد الدولار، مجرد التوقيع دولار واحد، وذلك لأن الدولار علامة لا يعني أي شيء إلى printf. السؤال هو، هل أنا بحاجة إلى حرف هروب ل رموز مثل علامة الدولار؟ AUDIENCE: نوع من ذلك ذات الصلة، هل هناك أي حالات أخرى أن يجب أن نعلم متى ما يشبه المئة قد يعني شيئا علامة (غير مسموع)؟ LEXI ROSS: نعم. ليس بالضرورة علامة النسبة المئوية، ولكن انظر مائل، كيف لدينا رد فعل عنيف نهاية هنا؟ دعونا نقول اننا نريد فعلا رد فعل لطباعة، كنا للفرار من ذلك - وهذا هو الذهاب الى الصوت مربكة - مع آخر مائل. إذا كان الأمر كذلك كنا نريد لطباعة \ \، بما نستطيع أن فقط يجب أن اكتب ذلك، أو مقابل رسوم إضافية مائل، وآخر الهروب. وآخر، إذا كنا نريد لطباعة اقتباس - لذلك أساسا، أي شيء يدل على هذا النوع من شيء خاص ضمن سلسلة، ونحن نريد من الفرار. لذلك دعونا نقول أننا نريد فعلا أن يكون لها اقتباس هنا، نود أن تريد أن تفعل \ ". AUDIENCE: لذلك فمن عادة مائل؟ DAN BRADLEY: انها عادة ما تكون مائل. LEXI ROSS: نعم. لسبب ما هنا، انها علامة النسبة المئوية. AUDIENCE: (غير مسموع)؟ DAN BRADLEY: هذا الرجل؟ هذا هو فقط أن أقول، الشيء الذي يجري هنا هو تقسيم الذهاب الى أن تعامل على أنها تطفو من أجل تقسيم. حتى في حالة من 50 مقسوما على 100، إذا لم يكن لدي تطفو هناك، فإنه سيكون مجرد 0. هذا كل ما من شأنه أن يخرج، لأن 50 مقسومة على 100، إذا كنت لا بما في ذلك أي عشرية، هي 0 - ويتم اقتطاع كل شيء فقط بعد العلامة العشرية الخروج. AUDIENCE: أم، لماذا لا نضع ذلك من قبل القاسم أيضا؟ DAN BRADLEY: إذن السبب في أننا لا وضعها أمام القاسم لأنه عندما كنت تقسيم شيء من عدد صحيح، وأنها تعمل على ما يرام. وجود عدد أكبر على الجزء السفلي لا يغير شيئا. يمكنك القسمة على الأعداد الصحيحة على ما يرام. انها فقط لا يهم حقا. هل يمكن، فإنه لن يغير شيئا. AUDIENCE: حتى إذا كنت تريد ثلاث خانات عشرية من شأنه، كنت وضعت في المائة 0،03؟ DAN BRADLEY: صحيح. وكنت وضعت٪ 0.03 إذا كنت تريد ثلاث خانات عشرية. AUDIENCE: وهل الأوامر، ما هو الفرق بين وأن تفعل بينما في القمة؟ DAN BRADLEY: وهذا يعني أن افعل حين مقابل حلقة في حين هما إلى حد ما مماثلة الأوامر. والفرق الوحيد هو تشغيل التعليمات البرمجية مرة واحدة، تشغيل التعليمات البرمجية داخل حلقة واحدة قبل الوقت اتخاذ أي الاختيار الفعلي. لذلك أيضا السبب أستطيع أن أقول دون اعطاء القاسم عددا. إذا كان الأمر كذلك قلت كثافة العمليات القاسم، ثم حين أن (القاسم <= 0)، يمكن للأبدا حتى تشغيل داخل التعليمات البرمجية. انها سوف تجعل هذا الاختيار من قبل - حتى هنا. حتى إذا كان لي هذه الحلقة بينما هنا، وأود أن يكون لديك القاسم يساوي، ويقول، -2 عدد أقل أو بعض من أو يساوي 0 لذلك فإنه في الواقع محاولة تشغيل التعليمات البرمجية داخل الأولى. ذلك بشكل عام، وتريد أن تستخدم حلقة افعل حين بدلا من حلقة في حين عندما كنت طالبا لإدخال المستخدم لأن تشغيل التعليمات البرمجية مرة واحدة، يسأل عن شيء للمستخدم سوف أعطيك هو الحل الأفضل عموما، في مقابل لمجرد الثقة مهما كنت وضعت في لتبدأ. AUDIENCE: ويتبع دائما القيام به من خلال بعض الوقت. ويتبع هل بعض قطعة من التعليمات البرمجية التي قمت: DAN BRADLEY تريد تنفيذ، ومن ثم حين أن بعض الشرط. LEXI ROSS: أعتقد أنه من مثل نوع واحد من الأوامر تفككت إلى قسمين. انها تفعل حين، وليس مثل ها هي القيام به، ومن ثم أنا ابن الذهاب لإضافة بعض الوقت، انها مجرد افعل الوقت. AUDIENCE: أفهم السبب كنت تستخدم علامات النسبة المئوية اثنين، ولكن يمكن لك أن تشرح لي لماذا علينا أن لديك (غير مسموع)؟ DAN BRADLEY: حسنا، لذلك علامة مئوية واحدة تقول فقط printf، وهنا هو الأمر الذي أريدك أن ملء مع بعض الأرقام. لذلك أنا أريد منك أن ملء مع منزلتين عشريتين وعلى تطفو، وستجد في نهاية تعويم لل الأمر، فمن هذه النسبة. هل هذا معقول؟ AUDIENCE: صحيح. DAN BRADLEY: حسنا. AUDIENCE: هل هناك شيء عن حلقة افعل حين أن إذا لم يتم الوفاء بالشرط، إذا كنت تحصل على السلبية لعدد البسط الخاص بك، فإنه سوف تبقي فقط سوف يسأل والحفاظ يطلب المستخدم؟ DAN BRADLEY: نعم. إذا كان الأمر كذلك لم يتم الوفاء بها حالة بينما في نهاية وحين افعل، وأنها سوف تعمل مرة أخرى إلى البداية. انها مجرد حلقة. لذلك فمن مثل حلقة في حين أن الشرط لم يكن الوفاء على. تشغيله واحد فقط المزيد من الوقت. نعم. AUDIENCE: حتى إذا كنت تفعل ذلك، يمكنك، على حين الخاص بك، وضع شرطين في؟ DAN BRADLEY: يمكنك. ذلك يعتمد ما كنت طالبا. حتى تتمكن من وضع شرطين في حلقة بينما إذا كان لديك كل ما في نوع من مشغل منطقية، والتي يبدو قبيحة، ولكنها في الاساس هذا المقام هو أقل من أو تساوي الصفر، إما العودة صحيحة أو خاطئة، أليس كذلك؟ انها إما أقل من أو تساوي الصفر أم لا. حتى تتمكن من القيام العوامل المنطقية الأخرى التي سوف يقولون انه في حين هذا صحيح أيضا أو أثناء هذا أيضا زائفة. لذلك فمن الأمور مثل البسط وأكبر من صفر، أليس كذلك؟ هذا السؤال، سوف هذه الحلقة فقط، بينما القاسم أقل من الصفر وكان لديك البسط إيجابية. AUDIENCE: وأنت تفعل يستخدم المعامل اثنين، أليس كذلك؟ DAN BRADLEY: اثنان يستخدم المعامل. LEXI ROSS: نحن سوف تغطي أن أكثر لاحقا. AUDIENCE: ماذا لو لا يضع شخص ما بطريقة إيجابية القاسم؟ لو وضعوا في البسط سلبية، هل يمكن أن تدفعهم ، ويقول، وضعها في البسط غير سلبية ولها أمر لذلك؟ DAN BRADLEY: هل يمكنك. AUDIENCE: والآن تقول فقط غير سالب البسط. ما ستستخدم لذلك؟ DAN BRADLEY: وهكذا كنت قد لاذا كان الشرط، مثل ذلك إذا البسط أقل من الصفر. LEXI ROSS: كنت ربما كنت ترغب فقط في تقسيمها إلى أكثر الخطوات، أليس كذلك؟ لذلك في المرة الأولى التي وضعت في المدخل، نستطيع أن نقول مجرد إعطاء لنا البسط أو غيرها. ومن ثم إذا كانت تفعل الشيء الخطأ، وهذا قد يكون صحيحا لحلقة من الوقت، بدلا من أن يكون تفعل بعض الوقت، لأن لدينا أول مرة لدينا GetInt، ثم حين أن مدخلات هو سيء، ونحافظ طالبا منهم تقديم المزيد من المدخلات مع نوع مختلف من النص، مثل أن لا يعمل أو يقدم لنا غير سالب البسط بدلا من ذلك، هذا النوع من الشيء. DAN BRADLEY: نعم؟ AUDIENCE: كيف امسح الاشياء التي [غير مسموع] محطة؟ LEXI ROSS: واضح. DAN BRADLEY: نعم، لا يمكنك كتابة فيه. LEXI ROSS: في الواقع، هذه ليست محطة حقيقية. كان السؤال كيف يمكن مسح هذه الأشياء الى هناك؟ الجواب هو انها ليست محطة حقيقية، ولكن دعونا نقول لكم في محطة حقيقية. مسح. أوه، انها القط. DAN BRADLEY: (غير مسموع)؟ فهو أن واحد، أليس كذلك؟ LEXI ROSS: لا، هذا كل ما عندي من الاشياء. DAN BRADLEY: [غير مسموع]. LEXI ROSS: هناك نذهب. DAN BRADLEY: نعم؟ AUDIENCE: هل عمل واضحة إذا كان لديك - مثل، يقول تشغيل برنامج [غير مسموع] وانها تطلب لكم لشيء ما، وأنت لا تريد. كيف لك - DAN BRADLEY: التحكم + C؟ LEXI ROSS: نعم. حتى إذا كنت تقوم بتشغيل البرنامج وهناك شيء غير تسير في بالطريقة التي تريدها لوكنت ترغب فقط في الخروج من كامل برنامج، التحكم + C. حتى لو كنت على ماك، وليس أبل + C، السيطرة + C. AUDIENCE: هل لديك الإصدار الصحيح في مراجعة في ملفك الشخصي؟ DAN BRADLEY: اعتقد انه حفظه، أليس كذلك؟ نعم. LEXI ROSS: هذا هو الفضاء. نعم. أعتقد أنه من مراجعة 11. DAN BRADLEY: نعم؟ AUDIENCE: هل C تقديم أي افتراضات بشأن ما المتغير هو إذا قمت بتعريف متغير ولكن لا تعيين لا أي شيء لأنه على الفور؟ DAN BRADLEY: لذلك سوف تقبل فقط رجات في تلك البقعة. لذلك إذا كنت تعلن ذلك - AUDIENCE: إذا أنا فقط لم الباحث القاسم منقوطة، هل نفترض أنه يساوي صفر أو رقم أي -؟ DAN BRADLEY: كلا. حتى إذا كنت لا تعيين، ويقول، وكثافة العمليات القاسم إلى أي قيمة، يمكن أن يكون أي شيء. انها الذاكرة القديمة التي كانت في ذلك الموقع. لذلك يمكن أن تكون سلبية 2 مليار يمكن أن يكون إيجابيا يمكن 2 مليار ويكون في اي مكان بين بين. إذا كان الأمر كذلك كنت تشغل في الواقع شيء، تأكد من أن تعيين قيمة المتغيرات. هذا، فإنه لا يهم لأننا على الفور تعيين القيمة، ولكن بصفة عامة، نعم. أي أسئلة أخرى؟ LEXI ROSS: يمكننا أيضا تأخذ فقط في هذه المسائل العامة نقطة على مواد محاضرة، ص مجموعة المواد، أي شيء كنت قد قد يتساءل عنه، هذا هو الوقت المناسب لطرح تلك. AUDIENCE: حتى في المواضيع الإرشادية، Zamyla ذكر وظيفة الجولة. هل لديك مانع التوسع في كيفية تنفيذ ذلك؟ LEXI ROSS: بالتأكيد، وكيفية تنفيذ ذلك؟ AUDIENCE: قالت أنها كانت الجولة. LEXI ROSS: أوه نعم. لذلك فقط حتى لدينا كل الرمزي نفسه والاشياء، عموما يعني تنفيذ الكتابة فعليا من الصفر. ولذا فإنني لا أعتقد أنها كان يتحدث عن نوع من الكتابة وظيفة الجولة. وقالت انها ربما يعني فقط كيفية استخدامها. يعني تنفيذ نوع من مثل خلق. عموما كان الأمر كذلك، الوقت الذي نريد استخدام الدالة الجولة هو أنا يعني، نوعا ما، على سبيل المثال، إذا كنت ترغب في جولة. هل يمكن ان تعطيني سياق أكثر قليلا على ما هي وكان المشكلة؟ AUDIENCE: لتجنب عدم الدقة من الكسور العشرية بجعلها عدد عشري. LEXI ROSS: نعم. وبالتالي فإن المسألة مع يطفو التي كانت لدينا نوع من ألمح إلى هو أنه بسبب الطريقة مخزنة في الجهاز، انهم ليسوا 100٪ دقة في الطريقة التي قد يعتقد وآلة حاسبة الخاص تخزينها. انه من الصعب بالنسبة لي أن تظهر مثالا من دون معرفة ما وكان من سياق. أنا لا أعرف، يمكنك التفكير في شيء، دان؟ DAN BRADLEY: حتى إذا كنت طالبا ل، ويقول، وأرقام أكبر من 10 وكنت تستخدم العوامات، وكنت إضافة واحد إلى تعويم كل مرة، فإنه في بعض الأحيان الانتظار حتى كنت قد حصلت إلى 12 قبل أن أقول هذا هو في الواقع عدد أكبر من 10. يطفو على بعض القضايا الخطيرة فقط بين 32 و33 منزلة عشرية التي سوف تذهب، لذلك قد 9.9999999، أو قد يكون 10.0000001، أليس كذلك؟ أنه لا يميز حقا بين الاثنين، لذلك إذا كنت انتظار الأشياء أكبر من أو يساوي 10، قد لا نصل الى هناك في ما هو في رأيك التكرار 10. قد تحصل هناك في 11th. LEXI ROSS: أساسا، نعم. عندما كنت على حلقات الكثير من العوامات، وهذا عندما عدم الدقة يحدث. AUDIENCE: أعتقد، وذلك أساسا، انها مثل على ع تعيين، فإنه يريد منك أن تطفو على مدار قيمة، وإذا كنت وضعت في 4.24 لمقدار التغير تحتاج الى الوراء، إذا كان لديك فقط 100 مرة، وأنها سوف تغير فعلا في 423 - DAN BRADLEY: في بعض الأحيان، نعم. AUDIENCE: لذلك اعتقد انها مجرد مثل، كيف كنت تستخدم الجولة وظيفة في الرمز الفعلي لتجعل من ذلك أنه لا يفعل ذلك؟ DAN BRADLEY: حتى إذا كنت التقريب 424 بضرب ذلك في 100 وجعله عددا صحيحا، فإنه سوف أحيانا جعله 423 بسبب عدم الدقة التي. وهكذا الأشياء التي يمكنك القيام به هو مجرد إضافة 0.0000003. AUDIENCE: ولكن أعتقد، في الواقع، انهم يريدون لنا استخدام هذه الجولة. DAN BRADLEY: الدالة ROUND؟ ربما هناك وظيفة الرياضيات، شيء ما في مكتبة الرياضيات. AUDIENCE: # تشمل الرياضيات. DAN BRADLEY: # تشمل ، وهذا لا ربما وظيفة الجولة. AUDIENCE: تماما مثل الجولة () -؟ LEXI ROSS: أساسا، لأنك تريد تقريبه إلى أقرب المائة. DAN BRADLEY: دعونا سحب ما يصل صفحات الرجل. لذلك أداة قوية، إذا كنت لا تعرف - كنت سحب ما يصل محطة - هو إذا ذهبت إلى رجل الرياضيات. LEXI ROSS: كول. حتى تستطيع أن ترى، لذلك الرجل القصير لدليل، وليس الرجل، و فإنه يسمح لك للبحث عن مزيد من المعلومات حول أي إعطاء وظيفة أو المكتبة التي يمكن التعامل معها. لذلك أنا كتبته مجرد رجل في الرياضيات. اسمحوا لي تكبير. DAN BRADLEY: يمكننا محاولة رجل الجولة أيضا. LEXI ROSS: بالتأكيد. DAN BRADLEY: وهذا سوف قائمة من - سوف الرياضيات رجل قائمة كل ما هو في مكتبة الرياضيات، التي سنقوم تشمل. نعم، لدينا أيضا جولة. LEXI ROSS: لذلك أنا فقط لم الجولة الرجل. يمكنك ان ترى هنا في خلاصة، تقول تشمل # ، لذلك هذا هو نوع من مثل cs50.h، stdio.h. ويبدو انها مثقلة فعلا، وهذا يعني فإنه يأخذ أنواع مختلفة من الحجج، لذلك كنت على مدار يمكن الزوجي أو العوامات. DAN BRADLEY: جولة مقابل roundf. LEXI ROSS: Roundf. لم يذكر Zamyla roundf مقابل الجولة؟ AUDIENCE: في معاينة، كان مجرد جولة (). DAN BRADLEY: حسنا، حتى انها ربما تم استخدام مزدوج، ثم، في مقابل عدد عشري. حسنا، لذلك كنت تتضاعف بنسبة 100 ثم المحيطة بها، و كنت الحصول على رقم الأقرب إليه، على ما أعتقد. LEXI ROSS: إذن وظيفة الجولة إرجاع لا يتجزأ أقرب إلى الحالات X التقريب في منتصف الطريق بعيدا عن القيمة 0، بغض النظر عن اتجاه التقريب الحالي. أساسا كان الأمر كذلك، ما كنت تريد أن الجولة مرة واحدة فقط كنت في قيمة عددية، لذلك كنت ضرب من قبل 100 وبعد ذلك جولة. يفعل ذلك أكثر منطقية؟ AUDIENCE: لاستخدام هذه الوظيفة في ملف C، لا تحتاج إلى وضع تعويم الجولة، مثل إذا كان يتم استدعاء المتغير الخاص س، هل وضع الجولة (تعويم) س، ومن ثم قوسين ل، أو يمكن كنت وضعت للتو جولة، وس ثم بين قوسين؟ DAN BRADLEY: حتى إذا كنت تحاول استخدام هذه الوظيفة في الواقع، كنت تأخذ ذلك س، س يتم تعويم، أو كيف تم تعريفه؟ AUDIENCE: Q هو عشري. DAN BRADLEY: حتى إذا تم التصريح عن عدد عشري س، وكنت تأخذ فقط الجولة، ومن ثم إعطائها س. قد يكون لديك ليعلن على أنها مزدوجة في هذه الحالة. LEXI ROSS: نعم، إلا إذا كنت ترغب في استخدام roundf. AUDIENCE: يمكنني أن مجرد استخدام roundf، ومن ثم ف تهمك؟ DAN BRADLEY: لا، لا تهمك، فقط س. AUDIENCE: عذرا، لا تهمك، في الأقواس. DAN BRADLEY: في الأقواس، نعم. LEXI ROSS: آسف أن كان قليلا مربكة. أي أسئلة أخرى؟ DAN BRADLEY: نعم؟ AUDIENCE: جولات فقط حتى الجولة إلى أعداد صحيحة؟ LEXI ROSS: نعم. DAN BRADLEY: نعم، جولات فقط جولة إلى أعداد صحيحة. AUDIENCE: حتى إذا كنت تريد أن يكون شيئا الدقيقة التي بحاجة إلى أن تكون (غير مسموع) مضروبا في 100 ومن ثم مقسومة على 100 مرة أخرى إذا كنت تريد -؟ LEXI ROSS: حتى إذا كنت تريد أن تحصل عليه في شكل عشري؟ AUDIENCE: حسنا المثال، على سبيل المثال، [غير مسموع] لك لديك 1.25، ومن ثم [غير مسموع] 1.24، إذا كنت تريد أن تبقي كما أن 1.25، تفعل تتضاعف بنسبة 100 التي، على مدار عليه، وبعد ذلك تقسيم بنسبة 100 مرة أخرى للحصول على 1،25؟ LEXI ROSS: نعم. لذا فإن السؤال هو، منذ التقريب، مثل الصفحة رجل يقول: جولات إلى أقرب قيمة لا يتجزأ، يعني ذلك أن أحد يريد أن تتضاعف بنسبة 100، نفذ ما التقريب، وتقسيم بنسبة 100 مرة أخرى ل، ويقول، والحصول على الصحيح دولار وقيمة سنتا؟ والجواب هو -؟ DAN BRADLEY: رقم أعني، إذا كنت مجرد الحصول على قيمة تعويم، إذا قمت بتشغيل مع تعويم قيمة من 1.25، هذا كيف سيكون تفسير. حتى إذا كنت اضربها في 100 وتقسيم ثم من قبل 100، فإنها ما تزال مستمرة إلى أن تفسر على أنها 1.25، أو ربما ... 1،249 .. 999. LEXI ROSS: أعتقد أن السؤال كان مثل، هل تتضاعف، ثم استخدم جولة، ثم تقسيم، لذلك فمن مثل - DAN BRADLEY: نعم. ما زلت لا أعتقد أنه يغير أي شيء، وإن كان. وأعتقد أنه ما زال. LEXI ROSS: لأن الدور لا - أنه يستخدم الأعداد الصحيحة. حتى إذا كنت في محاولة لتقريب 1.25، تحصل فقط 1. لذلك أعتقد أن من أجل الحصول على مثل الدقة إضافية، اذا كان هذا ما كنت تتحدث عن. AUDIENCE: حتى في حالات ما تستخدمون الجولة، بعد ذلك؟ DAN BRADLEY: حتى في هذه الحالة، إذا كنت تريد، ويقول، وعدد من سنت من 1.25 دولار، وكنت مضاعفة بنسبة 100، جولة، والحصول على 125، وترك الأمر كما أنه، كما سنتا، بدلا من محاولة تحويله مرة أخرى إلى دولارات وسنتات. LEXI ROSS: أوه نعم، نعم، بالتأكيد. AUDIENCE: لماذا تحتاج إلى أن جولة (غير مسموع)؟ DAN BRADLEY: حتى إذا كنت اضربها في 100 وثم تحويل فورا إلى عدد صحيح، والذي هو أكثر شكل مفيد، وهذا عند التعامل مع هذا عدم الدقة، أليس كذلك؟ لذلك قد يكون من 124.999999، وحتى إذا كنت ثم تحويل ذلك إلى عدد صحيح، فإنه يسقط كل شيء فقط من هذا أدناه العلامة العشرية. AUDIENCE: لذلك سأعطيك [غير مسموع]. DAN BRADLEY: بالضبط، بدلا من 125، والذي هو لماذا تريد تقريب. AUDIENCE: عذرا، هل يمكن تكرار ما قلته لك لا ينبغي في مقابل ما لا ينبغي أن تفعل؟ DAN BRADLEY: حسنا. وذلك ما يجب عليك فعله هو إذا كنت تبدأ مع 1.25، تتضاعف من قبل 100، وتقريب ثم هذا العدد كله، أن 125 أو 124.9999، والحصول على هذا إلى أقرب عدد صحيح. AUDIENCE: حتى إذا كنت مستديرة، أن يضعه إلى أقرب عدد صحيح؟ DAN BRADLEY: نعم. AUDIENCE: هل هناك طريقة للحد من ذلك، إذا كنت تسأل عن تعويم أن إدخالها، هل هناك طريقة للحد من عدد عشري الأماكن التي يمكن إدخال عدد عشري إلى؟ LEXI ROSS: عدم استخدام تنفيذ CS50 ل. أعني، كيف يمكنك الاعتماد كبيرة يتم إعطاء مدخلات فإن المستخدم، ولكن هذا يتطلب تطبيق جديد من GetFloat، وحتى لا داعي للقلق بشأن ذلك. DAN BRADLEY: حتى إذا كانوا، كما يقول، ومدخلات 1،256، هل يمكن فقط استخدام 1.25، أو هل يمكن أن تفعل 1.26. وفي كلتا الحالتين، وأعتقد أن تنفيذ يقول لك يمكن - AUDIENCE: يمكنك فقط لأنها قد مدار - DAN BRADLEY: ما تشاء، نعم، ما دام لديك نوع من التقريب. أي شيء آخر؟ ليس من الضروري أن يكون حول التقريب. LEXI ROSS: نعم؟ AUDIENCE: وإذا أردنا أن تحقق لمعرفة ما إذا كان لدينا أسلوب متاحة مناسبة أو أفضل أسلوب أنه يمكن أن يكون، هو أن هذا النوع من الشيء كنا في تنشئة القسم، أو في ساعات العمل، أو هو أن هذا النوع من الشيء يمكننا أضف القطاع الخاص على الشيء، على المناقشة، ومن ثم طلب المشورة في؟ LEXI ROSS: إذن لم نفعل ذلك، في ساعات العمل أو على CS50 مناقشة، فإننا سوف يست في الواقع مجموعة الصف ع الخاص مقدما للأسلوب، ولكن أعتقد على الأرجح الأكثر مفيدة وشيء يمكن القيام به هو النظر في الأمثلة، وأنت يجب أن تكون قادرة على العثور على هذا في التعليمات البرمجية القسم، والتي ينبغي أن تكون وزعت عبر الإنترنت، فضلا عن شرائح المحاضرات، هناك يجب أن تكون الأمثلة من التعليمات البرمجية. ولكن إذا كانت لديك أسئلة معينة حول فرد مسألة أسلوب، ويشعر بالتأكيد حر أن يسأل أنه في CS50 مناقشة، وساعات العمل، أو على الوقت الخاص بك. ولكن إذا كان هو أكثر من نظرة العامة في قانون بلدي، فمن الأفضل أن نوع من الأمثلة ومحاولة استخدام التعليمات البرمجية لتناسب على ذلك. وأعتقد أن هناك دليلا على نمط - DAN BRADLEY: هناك دليل الاسلوب. دليل أسلوب رائع. أنه يعلم لك كل ما تحتاجه، وأنها تغطي جميلة كل ذلك بكثير سبيل المثال عرفها الإنسان، أو على الأقل يعرف لي. أي شيء آخر؟ حسنا. بارد، رجال. LEXI ROSS: لقد يوم عظيم. DAN BRADLEY: شكرا على حضوركم.