>> SPEAKER: Chúng ta hãy thực hiện một chương trình nhắc nhở người dùng cho một số nguyên
nhưng vẫn tiếp tục khiến họ cho một số nguyên cho đến khi
số nguyên là tích cực.
Vâng, chúng ta hãy viết này, bao gồm cs50.h, bao gồm tiêu chuẩn io dot h, int
chính [trống].
Bây giờ chúng ta thực sự bắt đầu để nhắc nhở người sử dụng cho số nguyên này trong khi vẫn giữ trong
nhớ rằng chúng tôi muốn nhắc nhở lại chúng cho đến khi có
số là thực sự tích cực.
>> Vì vậy, tôi sẽ muốn một số loại vòng lặp xây dựng, nhưng một vòng lặp thực hiện tại
ít nhất một lần.
Và nhớ lại những vòng lặp do-trong khi cho phép chúng ta làm chính xác điều đó.
Hãy mã này lên.
>> Hãy đầu tiên khai báo một int - chúng tôi sẽ gọi nó là n - trong đó để lưu trữ các
số nguyên của người dùng.
Bây giờ chúng ta làm như sau.
Printf, hãy cho tôi một int tích cực.
Bây giờ chúng ta nhận được rằng int sử dụng getInt của thư viện CS50
chức năng, n được getInt.
Và bây giờ chúng tôi đang thực hiện làm một cái gì đó, nhưng chúng ta sẽ muốn làm điều này
trong khi n là -
những gì? -
nhỏ hơn 1, nếu chúng ta thực sự muốn có một số nguyên dương.
>> Chúng ta hãy đi trước bây giờ và in ra.
Nếu tất cả là tốt, nhờ cho int tích cực,
dấu chấm phẩy, lưu tập tin.
Bây giờ chúng ta biên dịch và chạy.
>> Hãy tích cực chấm dấu gạch chéo dương tính.
Và bây giờ tôi bị nhắc nhở cho một int tích cực.
Hãy để tôi hợp tác với 1.
Cảm ơn cho int tích cực.
>> Bây giờ hãy chạy lại chương trình này và không hợp tác.
Hãy cho tôi một int tích cực.
Làm thế nào về tiêu cực 1?
Thú vị.
Chương trình đã được reprompted tôi cho một int.
>> Chúng ta hãy nhẹ hơn khó khăn với 0.
Vẫn không phải là một int tích cực, vì vậy hãy hợp tác và thời gian này
cung cấp, một lần nữa, 1.
Cảm ơn cho int tích cực.
>> Bây giờ điều quan trọng cần lưu ý rằng tôi tuyên bố n biến của tôi trên dòng 6,
bên ngoài vòng lặp do-while.
Nếu tôi thay vì tuyên bố n bên trong của tôi làm-trong khi vòng lặp, đặc biệt trên, nói,
đường 10, nơi tôi cũng có được int từ người sử dụng, mà int n sẽ chỉ có
tồn tại trong phạm vi của xoăn niềng răng hiện đang có trên
dòng 8 và dòng 11.
>> Nói cách khác, n sẽ được scoped để bên trong là vòng lặp do-while.
Nhưng vấn đề là chúng tôi cũng muốn sử dụng n trong dòng 12
bên trong của tình trạng này.
Vì vậy, mặc dù nó không giống như vậy đẹp, đó là rất nhiều chủ ý
n được khai báo bên ngoài này vòng lặp do-while.