Biến cục bộ và biến toàn cục
Các biến được giới thiệu trong chương trình chính được gọi là toàn cầu (hoặc chia sẻ).
Bạn có thể truy cập các biến toàn cục từ bất kỳ chương trình con nào.
Thông thường cần phải giới thiệu các biến bổ sung sẽ chỉ được sử dụng trong chương trình con. Các biến như vậy được gọi là
cục bộ (hoặc cục bộ). Bạn chỉ có thể làm việc với chúng bên trong chương trình con mà chúng được tạo ra. Các quy trình còn lại không "biết" gì về chúng.
Như vậy, có thể giới hạn phạm vi (scope) của một biến chỉ cho chương trình con ở những nơi thực sự cần thiết. Trong lập trình, kỹ thuật này được gọi là
đóng gói - ẩn biến không bị thay đổi từ bên ngoài.
Phân tích ba chương trình:
<đầu>
Mô tả |
Chương trình |
điều>
1) Trong chương trình này, biến i là cục bộ. Nếu không có biến i trong chương trình chính thì chúng ta sẽ nhận được thông báo lỗi. Và nếu có một biến như vậy (thì đó là biến toàn cục), thì giá trị của nó sẽ được hiển thị trên màn hình. |
|
kiểm tra chắc chắn():
in(i)
2) Ở đây, ngay cả khi có một biến toàn cục i , thì một biến cục bộ mới i sẽ được tạo với giá trị là 2 và 2 sẽ xuất hiện trên màn hình. |
|
kiểm tra chắc chắn():
tôi = 2
in(i)
3) Trong chương trình này, có một biến toàn cục i có giá trị là 15. Giá trị của nó có thể được thay đổi bên trong chương trình con, vì điều này cần phải khai báo rõ ràng rằng nó là biến toàn cục ( sử dụng lệnh global ).
Quy trình sẽ làm việc với biến toàn cục i và nó sẽ được gán giá trị mới là 2. Giá trị 2 được hiển thị. |
|
kiểm tra chắc chắn():
toàn cầu tôi
tôi = 2
# chương trình chính
tôi = 15
in(i)
Problem
Viết thủ tục với tham số
n
xuất ra cây thông Noel có vương miện có chiều cao
n
. Chương trình chính phải chứa giá trị đầu vào của
biến n
và lời gọi thủ tục.
Ví dụ
<đầu>
# |
Đầu vào |
Đầu ra |
điều>
1 |
5 |
|
o
ooo
ooooo
ooooooo
ooooooooo