Sign in
or
Register
Courses
Textbook
Compiler
Contests
Topics
Courses
C ++. الأساسيات
(C ++) الروتينات الفرعية: الإجراءات والوظائف - 1
Module:
(C ++) الروتينات الفرعية: الإجراءات والوظائف - 1
Problem
9
/12
المتغيرات المحلية والعالمية
Theory
Click to read/hide
المتغيرات المحلية والعالمية h5> غالبًا ما يكون من الضروري استخدام متغيرات إضافية سيتم استخدامها فقط في الروتين الفرعي. تسمى هذه المتغيرات
محلية strong>
(أو محلية) ولا يمكن معالجتها إلا ضمن الروتين الفرعي الذي تم إنشاؤها فيه.
نبسب ؛
نطاق المتغير المحلي strong> هو الكتلة المتعرجة بين قوسين حيث يتم الإعلان عنها div>
البرنامج الرئيسي في C ++ هو أيضًا روتين فرعي ، لذا فإن جميع المتغيرات المعلنة داخل
main ()
هي متغيرات محلية.
لا تعرف الإجراءات الفرعية الأخرى أي شيء عن المتغيرات المحلية للروتينات الفرعية الأخرى.
وبالتالي ، من الممكن قصر نطاق (نطاق) المتغير فقط على الروتين الفرعي حيث يكون مطلوبًا بالفعل. في البرمجة ، تسمى هذه التقنية
encapsulation & nbsp؛
-
إخفاء متغير من التغيير من الخارج.
إذا كان من الضروري التصريح عن متغير يكون مرئيًا في أي مكان في البرنامج (في أي روتين فرعي) ، فسيتم الإعلان عن هذه المتغيرات خارج جميع الإجراءات الفرعية (انظر البرنامج 3 من الجدول أدناه).
تسمى هذه المتغيرات
عمومية strong>
.
في C ++ ، عند بدء تشغيل البرنامج ، يتم تعيين جميع المتغيرات العامة تلقائيًا على صفر ( strong> تأخذ المتغيرات المنطقية القيمة false
).
حلل ثلاثة برامج:
<الجسم>
1) في هذا البرنامج ، المتغير i محلي. يتم التصريح عن متغير محلي داخل روتين فرعي
2) هنا ، حتى لو كان هناك متغير i في البرنامج الرئيسي (بقيمة 7) ، سيتم إنشاء متغير محلي جديد i بقيمة 5. & nbsp؛
عند تشغيل هذا البرنامج ، ستعرض الشاشة القيمة 75
3) يحتوي هذا البرنامج على
متغير شامل i.
يمكن تغيير قيمته داخل روتين فرعي وداخل البرنامج الرئيسي
سيعمل الإجراء مع المتغير العام i وسيتم تعيين قيمة جديدة له تساوي 2. يتم عرض القيمة 2
على الشاشة
اختبار باطل () { نبسب ؛ int أنا = 5 ؛ كوت & lt؛ & lt؛ أنا؛ }
اختبار باطل () { نبسب ؛ int أنا = 5 ؛ نبسب ؛ كوت & lt؛ & lt؛ أنا؛ } رئيسي() { int أنا = 7 ؛ نبسب ؛ كوت & lt؛ & lt؛ أنا؛ نبسب ؛ امتحان()؛ }
# تضمين & lt؛ iostream & gt؛ استخدام اسم للمحطة؛ إنت أنا اختبار باطل () { نبسب ؛ أنا = 2 ؛ } رئيسي() { امتحان()؛ كوت & lt؛ & lt؛ أنا؛ }
Problem
اكتب إجراء باستخدام المعلمة
n
التي تعرض شجرة عيد الميلاد بتاج ارتفاع
n
.
يجب أن يحتوي البرنامج الرئيسي على إدخال قيمة المتغير
n
واستدعاء الإجراء.
نبسب ؛
نبسب ؛
أمثلة h6>
#
إدخال
الإخراج
<الجسم>
1
5
<قبل> نبسب ؛ نبسب ؛ ا نبسب ؛ على & nbsp ؛ أوو نبسب ؛ اوووو على & nbsp ؛ ooooooo ooooooooo
1000
ms
256 Mb
Rules for program design and list of errors in automatic problem checking
Teacher commentary