1 00:00:00,000 --> 00:00:00,330 2 00:00:00,330 --> 00:00:03,230 >> ลำโพง: ลองใช้โปรแกรมที่ แจ้งให้ผู้ใช้สำหรับการจำนวนเต็ม 3 00:00:03,230 --> 00:00:05,850 แต่ยังคงกระตุ้นให้พวกเขา เพื่อจำนวนเต็มจนอีก 4 00:00:05,850 --> 00:00:07,590 เลขที่เป็นบวก 5 00:00:07,590 --> 00:00:16,760 ดีขอเขียนนี้รวมถึง cs50.h, รวมถึงมาตรฐาน IO จุดชั่วโมง, int 6 00:00:16,760 --> 00:00:18,010 หลัก [โมฆะ] 7 00:00:18,010 --> 00:00:20,000 8 00:00:20,000 --> 00:00:23,200 ตอนนี้ขอเริ่มต้นจริงที่จะแจ้งให้ ของผู้ใช้สำหรับจำนวนเต็มนี้ในขณะที่การเก็บรักษาใน 9 00:00:23,200 --> 00:00:25,570 คิดว่าเราต้องการที่จะ reprompt พวกเขาจนกว่าที่ 10 00:00:25,570 --> 00:00:26,860 จำนวนเป็นบวกจริง 11 00:00:26,860 --> 00:00:30,160 >> ดังนั้นฉันจะต้องการชนิดของการวนลูปบาง สร้าง แต่ห่วงที่รันที่ 12 00:00:30,160 --> 00:00:31,200 อย่างน้อยหนึ่งครั้ง 13 00:00:31,200 --> 00:00:34,810 และจำห่วงทำในขณะที่ช่วยให้ ที่เราจะทำตรงนั้น 14 00:00:34,810 --> 00:00:36,140 ขอรหัสนี้ขึ้น 15 00:00:36,140 --> 00:00:39,210 >> Let 's แรกประกาศ int - เราจะ เรียกว่า n - ซึ่งในการจัดเก็บ 16 00:00:39,210 --> 00:00:41,030 จำนวนเต็มของผู้ใช้ 17 00:00:41,030 --> 00:00:44,250 ตอนนี้ขอให้ทำต่อไปนี้ 18 00:00:44,250 --> 00:00:51,292 printf โปรดให้ฉัน int บวก 19 00:00:51,292 --> 00:00:54,470 ตอนนี้ขอให้ได้รับที่ int ใช้ GetInt ห้องสมุด CS50 20 00:00:54,470 --> 00:00:59,110 ฟังก์ชั่นได้รับ n GetInt 21 00:00:59,110 --> 00:01:02,610 และตอนนี้เรากำลังทำทำบางสิ่งบางอย่าง แต่เรากำลังจะต้องการที่จะทำเช่นนี้ 22 00:01:02,610 --> 00:01:04,580 ในขณะที่ n คือ - 23 00:01:04,580 --> 00:01:05,480 อะไร - 24 00:01:05,480 --> 00:01:09,370 น้อยกว่า 1 ถ้าเราแน่นอน ต้องการเป็นจำนวนเต็มบวก 25 00:01:09,370 --> 00:01:11,670 >> ลองไปข้างหน้าในขณะนี้และพิมพ์ออกมา 26 00:01:11,670 --> 00:01:17,590 ถ้าทั้งหมดเป็นอย่างดีขอบคุณ สำหรับ int บวก 27 00:01:17,590 --> 00:01:19,360 อัฒภาคบันทึกแฟ้ม 28 00:01:19,360 --> 00:01:21,480 ตอนนี้ขอรวบรวมและใช้ 29 00:01:21,480 --> 00:01:25,550 >> ทำให้จุดบวกเฉือนบวก 30 00:01:25,550 --> 00:01:27,470 และตอนนี้ฉันได้รับการแจ้ง สำหรับ int บวก 31 00:01:27,470 --> 00:01:29,630 ผมขอให้ความร่วมมือกับ 1 32 00:01:29,630 --> 00:01:31,330 ขอบคุณสำหรับ int บวก 33 00:01:31,330 --> 00:01:33,650 >> ตอนนี้ขอรันโปรแกรมนี้ และไม่ให้ความร่วมมือ 34 00:01:33,650 --> 00:01:35,260 โปรดให้ฉัน int บวก 35 00:01:35,260 --> 00:01:37,300 วิธีการเกี่ยวกับเชิงลบ 1? 36 00:01:37,300 --> 00:01:37,910 น่าสนใจ 37 00:01:37,910 --> 00:01:40,460 โปรแกรมจะ reprompted แล้ว ฉัน int 38 00:01:40,460 --> 00:01:43,170 >> ขอเป็นเล็กน้อย ยากกับ 0 39 00:01:43,170 --> 00:01:46,310 ยังไม่ int บวกจึงขอ ความร่วมมือและเวลานี้ 40 00:01:46,310 --> 00:01:48,280 ให้อีกครั้งที่ 1 41 00:01:48,280 --> 00:01:49,990 ขอบคุณสำหรับ int บวก 42 00:01:49,990 --> 00:01:54,300 >> ตอนนี้มันเป็นสิ่งสำคัญที่จะต้องทราบว่าฉัน n ประกาศตัวแปรของฉันในบรรทัด 6 43 00:01:54,300 --> 00:01:56,510 ด้านนอกของวงที่ต้องทำในขณะที่ 44 00:01:56,510 --> 00:02:01,030 ผมแทนประกาศ n ภายในของฉัน ทำในขณะที่ห่วงโดยเฉพาะเกี่ยวกับการพูด 45 00:02:01,030 --> 00:02:06,230 สาย 10 ที่ฉันยังได้รับ int จาก ผู้ใช้ int n ที่จะมีเพียง 46 00:02:06,230 --> 00:02:09,904 อยู่ภายในขอบเขตของหยิก จัดฟันที่มีอยู่ในขณะนี้ 47 00:02:09,904 --> 00:02:12,320 สาย 8 และสาย 11 48 00:02:12,320 --> 00:02:16,570 >> ในคำอื่น ๆ n จะได้รับการกำหนดขอบเขตที่จะ ด้านในของวงที่ทำในขณะที่ 49 00:02:16,570 --> 00:02:20,390 แต่ปัญหาคือว่าเรายัง ต้องการที่จะใช้ในสาย n 12 50 00:02:20,390 --> 00:02:21,900 ภายในสภาพ 51 00:02:21,900 --> 00:02:26,120 ดังนั้นถึงแม้ว่าจะไม่ได้ดูเพื่อให้ สวยมากเจตนาว่า 52 00:02:26,120 --> 00:02:28,210 n มีการประกาศออกไปข้างนอก วงนี้ทำในขณะที่ 53 00:02:28,210 --> 00:02:29,838