Viết chương trình cộng hai số nguyên và in tổng của chúng chỉ in ra tổng mà không có chuỗi nào khác
Bộ xử lý của máy tính, chuyên thực hiện các lệnh, có khả năng thực thi — trong một máy tính hiện đại — hơn một tỷ lệnh (mã máy) trong một giây Trong phần này, chúng ta sẽ làm quen với việc viết mã chương trình thường lặp lại với sự trợ giúp của vòng lặp Hãy thúc đẩy bản thân sử dụng các vòng lặp. Dưới đây, bạn sẽ tìm thấy một ví dụ về chương trình yêu cầu người dùng nhập năm số và tính tổng của chúng
Nó thực hiện công việc, nhưng không thanh lịch. Điều gì sẽ xảy ra nếu chương trình phải đọc một trăm, hoặc có lẽ là một nghìn số và in ra tổng của chúng? Vấn đề có thể được giải quyết bằng một vòng lặp theo dõi cả tổng và số lần đầu vào đã được đọc. Chương trình in tổng của năm số bây giờ trông như sau
Tiếp theo chúng ta sẽ làm quen với vòng lặp Vòng lặp và Vòng lặp vô hạnMột vòng lặp bao gồm một biểu thức xác định xem có nên lặp lại mã trong vòng lặp hay không, cùng với một khối chứa mã nguồn sẽ được lặp lại. Một vòng lặp có dạng sau
Bây giờ chúng ta sẽ sử dụng giá trị 1 làm biểu thức của vòng lặp. Bằng cách này, quá trình thực thi của vòng lặp luôn được tiếp tục khi chương trình đến điểm quyết định có nên lặp lại hay không. Điều này xảy ra khi việc thực thi chương trình lần đầu tiên đến biểu thức vòng lặp và cả khi nó đến cuối khối của vòng lặpViệc thực hiện vòng lặp tiến hành từng dòng một. Kết quả chương trình sau tôi có thể lập trình vô số lần
Một chương trình chạy vô tận không tự kết thúc. Trong NetBeans, có thể tắt nó bằng cách nhấp vào nút màu đỏ nằm ở bên trái của cửa sổ đầu ra kết thúc một vòng lặpVòng lặp có thể bị phá vỡ bằng lệnh 'break'. Khi một máy tính thực thi lệnh 'break', quá trình thực thi chương trình sẽ chuyển sang lệnh tiếp theo sau khối vòng lặp Ví dụ dưới đây là một chương trình in các số từ một đến năm. Lưu ý cách biến được sử dụng trong vòng lặp được xác định trước vòng lặp. Bằng cách này, biến có thể được tăng lên bên trong vòng lặp và thay đổi sẽ tồn tại giữa nhiều lần lặp lại của vòng lặp
đầu ra mẫu 1 2 3 4 5 Sẵn sàng Thoát khỏi vòng lặp xảy ra khi người dùng nhập một đầu vào được chỉ định hoặc bất cứ khi nào một phép tính được thực hiện trong vòng lặp kết thúc với kết quả mong muốn. Các loại chương trình này chứa cả một vòng lặp được sử dụng để xác định một phần sẽ được lặp lại và cũng là một biểu thức điều kiện được sử dụng để kiểm tra xem điều kiện để thoát khỏi vòng lặp đã được đáp ứng hay chưa. Người dùng cũng có thể được yêu cầu nhập liệu trong một vòng lặp. Các biến thường được sử dụng trong vòng lặp (chẳng hạn như Trình đọc máy quét) được xác định trước vòng lặp, trong khi các biến (chẳng hạn như giá trị được đọc từ người dùng) dành riêng cho vòng lặp được xác định bên trong vòng lặp. Trong ví dụ bên dưới, chương trình hỏi người dùng có thoát khỏi vòng lặp hay không. Nếu người dùng nhập chuỗi "y", việc thực thi chương trình sẽ chuyển sang lệnh sau khối vòng lặp, sau đó quá trình thực hiện chương trình kết thúc
Chương trình trong ví dụ hoạt động như sau. Đầu vào của người dùng được đánh dấu màu đỏ đầu ra mẫu Lối ra? . Hãy tiếp tục. Lối ra? . Hãy tiếp tục. Lối ra? Đang tải Trong ví dụ trước, chương trình đọc đầu vào kiểu chuỗi từ người dùng. Chương trình cũng có thể được thực hiện với các loại biến khác. Chương trình dưới đây yêu cầu số từ người dùng cho đến khi người dùng nhập số không
Đầu ra của chương trình có thể như sau đầu ra mẫu Nhập một số, 0 để thoát 5 Bạn nhập 5 Nhập một số, 0 để thoát -2 Bạn nhập -2 Nhập một số, 0 để thoát 0 Xong, cảm ơn bạn Đang tải Quay lại Bắt đầu Vòng lặpKhi quá trình thực thi kết thúc vòng lặp, quá trình thực thi sẽ bắt đầu lại từ đầu vòng lặp. Điều này có nghĩa là tất cả các lệnh trong vòng lặp đã được thực hiện. Bạn cũng có thể quay lại phần đầu từ những vị trí khác ngoài phần cuối bằng lệnh 0. Khi máy tính thực hiện lệnh 0, quá trình thực thi chương trình chuyển sang đầu vòng lặpVí dụ dưới đây minh họa việc sử dụng lệnh 0. Chương trình yêu cầu người dùng nhập số dương. Nếu người dùng nhập số âm hoặc số 0, chương trình sẽ in thông báo "Số không phù hợp, thử lại", sau đó quá trình thực thi quay lại đầu vòng lặp. Trong ví dụ trước, chương trình đọc đầu vào kiểu chuỗi từ người dùng. Các chương trình tương tự với các loại đầu vào khác nhau cũng có thể. Trong ví dụ bên dưới, người dùng được yêu cầu nhập số cho đến khi họ nhập số không 1Chương trình trong ví dụ trên được lặp lại vô tận do lệnh 9 được sử dụng để thoát khỏi vòng lặp không được sử dụng. Để thoát khỏi vòng lặp, phải thêm lệnh 9 vào nóTrong ví dụ bên dưới, chương trình được sửa đổi theo cách mà người dùng được yêu cầu nhập số dương. Nếu người dùng nhập một số âm, chương trình sẽ thông báo cho họ rằng số đó không phù hợp và quay lại đầu vòng lặp. Nếu số bằng 0, chương trình thoát khỏi vòng lặp 4Đang tải giao diện : Đăng nhập để xem bài kiểm tra Đang tải Trong bài tập trước, bạn đã tạo một chương trình yêu cầu người dùng nhập các số. Nếu người dùng nhập số âm, chương trình sẽ thông báo cho họ rằng số đó không phù hợp và nếu người dùng nhập số 0, chương trình sẽ thoát. Một giải pháp khả thi cho bài tập là như sau 5Chương trình có thể được thực hiện bằng cách sửa đổi câu lệnh if thành một dạng khác. Trong ví dụ bên dưới, các điều kiện đã được kết hợp để thay thế các câu lệnh if riêng biệt 0Ví dụ nào trước đây rõ ràng hơn? Hãy xem xét sự rõ ràng của các chương trình trước thông qua một ví dụ. Dưới đây, chương trình yêu cầu người dùng nhập một số. Nếu số âm, người dùng được thông báo rằng số đó không phù hợp và việc thực thi chương trình sẽ chuyển sang đầu vòng lặp. Nếu số bằng 0, chương trình thoát khỏi vòng lặp. Trong các trường hợp khác, chương trình in bình phương của số, i. e. , số đó nhân với chính nó 1Chương trình này cũng có thể được thực hiện bằng cách kết hợp các câu lệnh if. Trong trường hợp đó, việc triển khai sẽ như sau 2Hãy kiểm tra các chương trình trước với ý kiến. Trước mỗi câu lệnh đều có chú thích nhằm giải thích những gì đang xảy ra trong chương trình. Dưới đây là một chương trình được viết với các câu lệnh if riêng biệt 3Lưu ý rằng mọi câu lệnh if đều có một nhiệm vụ rõ ràng Khi chúng tôi nhận xét về một chương trình có chứa các câu lệnh if kết hợp, các nhận xét sẽ có dạng sau 4Chúng tôi nhận thấy rằng rất khó để xác định một nhiệm vụ đơn lẻ, rõ ràng cho khối 7. Trong quá trình thiết kế và thực hiện một chương trình, nên nhắm đến một tình huống trong đó mọi phần của chương trình đều có một nhiệm vụ rõ ràng và duy nhất. Chủ đề này lặp đi lặp lại trong suốt khóa họcTính toán với vòng lặpVòng lặp được sử dụng trong tính toán nhiều thứ khác nhau. Ví dụ: các chương trình xử lý số lượng giá trị do người dùng nhập không xác định sẽ sử dụng các vòng lặp. Các loại chương trình này thường in ra một số loại thống kê về các số đã được đọc hoặc các đầu vào khác sau vòng lặp kết thúc Để chương trình in ra thông tin từ việc thực hiện vòng lặp sau vòng lặp, thông tin phải được lưu và sửa đổi trong suốt vòng lặp Nếu biến được sử dụng để lưu trữ dữ liệu được đưa vào trong vòng lặp, thì biến đó chỉ khả dụng trong vòng lặp đó và không có nơi nào khác Hãy lập chương trình đếm và in ra số đơn vị do người dùng nhập vào. Trước tiên hãy tạo một phiên bản không hoạt động và kiểm tra hoạt động của các khối 5Chương trình trước đó không hoạt động vì biến 8 được đưa vào trong vòng lặp và một nỗ lực được thực hiện để sử dụng nó sau vòng lặp ở cuối chương trình. Biến chỉ tồn tại bên trong vòng lặp. Nếu câu lệnh in 9 nằm trong vòng lặp, chương trình sẽ hoạt động nhưng không theo cách mong muốn. Hãy kiểm tra điều này tiếp theo 6Ví dụ trên hoạt động, nhưng không phải theo cách chúng tôi hy vọng. Dưới đây là đầu ra ví dụ của chương trình đầu ra mẫu Chèn một số (0 lần thoát) 5 Tổng số một. 0 Chèn một số (0 lần thoát) 1 Tổng số. 1 Chèn một số (0 lần thoát) 1 Tổng số một. 1 Chèn một số (0 lần thoát) 2 Tổng số một. 0 Chèn một số (0 lần thoát) 0 Nếu bạn muốn sử dụng một biến sau một vòng lặp, thì nó cần được đưa vào trước vòng lặp Trong ví dụ bên dưới, chương trình tính tổng các số một được nhập vào. Các đầu vào được đọc cho đến khi người dùng nhập số 0, sau đó chương trình in tổng số các số đã nhập. Chương trình sử dụng biến 8 để theo dõi các số 7Dưới đây là một ví dụ đầu ra của chương trình đầu ra mẫu Cho một số (kết thúc bằng 0). 1 Cho một số (kết thúc bằng 0). 2 Cho một số (kết thúc bằng 0). 1 Cho một số (kết thúc bằng 0). -1 Cho một số (kết thúc bằng 0). 0 Tổng số cái. 2 Đang tải Đang tải Các chương trình được viết trong các bài tập trước đã đọc đầu vào từ người dùng và theo dõi số lượng của một số loại số nhất định. Trong bài tập tiếp theo, tổng các số được yêu cầu không khác nhiều — lần này, thay vì theo dõi số lượng giá trị đã nhập, bạn thêm số do người dùng nhập vào tổng Đang tải Đôi khi bạn cần sử dụng nhiều biến. Ví dụ dưới đây cho thấy một chương trình đọc số từ người dùng cho đến khi người dùng viết 0. Sau đó, chương trình in số lượng các số dương và số âm đã cho và tỷ lệ phần trăm của các số dương từ tất cả các số đã cho |