Docstoc

البرمجة بلغة فيجوال بيسك - مستوى أول

Document Sample
البرمجة بلغة فيجوال بيسك - مستوى أول Powered By Docstoc
					                          ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬




                                                      ‫إعداد‬
                                         ‫م. املهدي احممد جربيل‬
                                         ‫بكالوريوس هندســـــــــــــة إلكرتونية‬
                                          ‫طالب ماجستري باألكادميية الليبية‬




‫47945171981200 :‪Phone‬‬
‫‪E-Mail: Almahdi.jabriel@yahoo.com‬‬




     ‫نسخة جمانية للجميع‬                     ‫(1)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                    ‫كلمة املؤلف‬


‫بسم اهلل الرمحن الرحيم, والصالة والسالم على خامت األنبياء‬
                            ‫واملرسلني سيدنا حممد وعلى آله وصحبه, أما بعد:‬


‫فإني أسأل اهلل عز وجل أن أكون وفقت يف ترتيب هذه الورقات اليت‬
‫كانت ليست أكثر من تبيان بسيط لكل من هو مبتدئ يف تعلم لغة فيجوال‬
‫بيسك وراعيت ذلك برتتيب الفصول واألبواب, حتى تكون مسرية الفهم‬
                                                                 ‫وسهلة االستيعاب.‬


        ‫وأسأل اهلل أن تكون فيها الفائدة واملعلومة الواضحة لكل مطلع‬
                          ‫وأن تكون يف ميزان حسناتنا...‬


          ‫اللهم اغفر لي ولوالدي وللمؤمنني يوم يقوم احلساب‬
                  ‫اللهم اغفر ألمواتنا وشهدائنا وحينا أمجعني‬
            ‫والصالة والسالم على رسول اهلل حممد خري األنام‬


‫م. املهدي جربيل‬




‫نسخة جمانية للجميع‬                      ‫(2)‬             ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                                 ‫مقدمــــــة:‬
‫ترجع بداية لغة بيسك إىل سنة (1961م) حيث مت جتهيزها على يد األستاذين (‪)Kurtz‬‬
                                                                ‫و(‪ )Kenny‬يف كلية دارمثوت.‬
                         ‫مسيت (‪ )BASIC‬اشتقاقا من جمموعة الكلمات التالية:‬
              ‫‪Beginners All-purpose Symbolic Instruction Code‬‬
                                                   ‫أي لغة متعددة األغراض للمبتدئني.‬


                                     ‫أنظمة (إصدارات) لغة بيسك (‪:)BASIC‬‬

                                  ‫‪IBM BASIC‬‬
    ‫تعمل حتت نظام ‪DOS‬‬            ‫‪QUICK BASIC‬‬
                                  ‫‪GW BASIC‬‬
                                 ‫‪TURBO BASIC‬‬
    ‫تعمل حتت ‪Windows‬‬             ‫‪VISUAL BASIC‬‬


‫ععت ن ععام (‪ )DOS‬م ععا ع ععدا ا(ص ععدار ( ‪VISUAL‬‬     ‫مجي ععع األن م ععة الس ععابقة تعم ععل‬
                    ‫ت ن ام نوافذ (‪ )Windows‬مبختلف إصداراته.‬               ‫‪ )BASIC‬الذي يعمل‬


                                    ‫ملاذا فيجوال بيسك (‪)VISUAL BASIC‬؟:‬
                                                ‫نستخدم فيجوال بيسك لألسباب التالية:‬
                             ‫إمكانية استخدام اللغة العربية يف ا(دخال وا(خراج.‬                ‫1.‬
                                                ‫ت ن ام نوافذ.‬      ‫تعمل هذه اللغة‬            ‫2.‬
‫ا(مكانات املتعددة لن ام نوافذ مع فيجوال بيسك واليت ال تتوفر يف باقي ا(صدارات‬                 ‫3.‬
                                                   ‫ت ن ام (‪.)DOS‬‬         ‫اليت تعمل‬




‫نسخة جمانية للجميع‬                        ‫(3)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                              ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬



                             ‫الباب األول: أساسيات الربجمة‬
                                                                                               ‫ما هو الربنامج؟‬
‫ه ععو عب ععارة ع ععن جمموع ععة م ععن األوام ععر والتعليم ععات مكتوب ععة بإح ععد لغ ععات الربجم ععة وال ععيت‬
                                                                                ‫بتنفيذها يتحقق غرض معني.‬

                                             ‫ما هو املقصود بلغة الربجمة؟ وهل ختتلف على البشر؟‬
‫تهدف لغة الربجمة إىل التخاطب معع اللعة أو اساسعوب, يف حعني لغعات البشعر تهعدف علعى‬
                                                                           ‫ختاطب البشر مع بعضهم البعض.‬

                                                                                             ‫ما هي لغة اآللة؟‬
‫هي لغة برجمة ال يوجد بها إال رمزان اثنان فقط هما الصفر والواحد (1, 1) وهي أول لغة‬
                                                                                      ‫برجمة يف عامل اساسوب.‬
‫كما أنها هي اللغة األساسية اليت يفهمها جهاز اساسعوب (ملعاذا؟؟؟) والسعبب يف ذلعك هعو‬
‫إمكانية متثيعل هعذين العرقمني متثعيال فيزيائيعا آلكعن اللعة معن التععرف عليعه, وآلكعن متثيعل ذلعك‬
                              ‫بدائرة كهربائية مغلقة (متثل 1), أو دائرة كهربائية مفتوحة (متثل 1).‬

                                                                                                ‫ما هو املرتجم؟‬
‫ويعل برنععام مكتعوب بلغععة معا (مثعل فيجععوال بيسعك) إىل لغععة‬              ‫هعو الربنعام املسععلول ععن‬
                                                                                                              ‫اللة.‬
                                                                                  ‫وآلكن متثيله بالشكل التالي:‬

      ‫نرنامو نناة ا لة‬                              ‫املرتجم‬                           ‫نرنامو نناة نرجمة‬
                                                  ‫وظيفة املرتجم‬
                                                                                             ‫أنواع املرتمجات:‬
                                                                       ‫يوجد هنالك نوعني من املرتمجات هما:‬
                                                                                                     ‫س‬
                                                                                     ‫1. املف ّر (‪:)Interpreter‬‬
‫هووو نرنووامو يبوووم نرتمجووة الكنووامو املماووو نناووة مووا آلل نرنووامو نناووة ا لووة وتووام عمنيووة‬
                                                                      ‫الرتمجة فيه مجنة مجنة (ترمجة فورية).‬
                                                                                                 ‫ر‬
                                                                                    ‫2. املص ّف (‪:)Compiler‬‬
‫هووو نرنووامو يبوووم نرتمجووة الكنووامو املماووو لاووة مووا آلل نرنووامو نناووة ا لووة وتووام عمنيووة‬
                                                                     ‫الرتمجة فيه دفعة واحدة (ترمجة كنية).‬


‫نسخة جمانية للجميع‬                                      ‫(4)‬                    ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬


                                                          ‫ما هو نوع املرتجم يف لغة فيجوال بيسك؟‬
                             ‫س‬
‫يصنف املرتجم يف لاة فيجوال نيسك مون النووا املف ّور(‪ )Interpreter‬وميمون مححظوة‬
 ‫ذلك عند حصول خطأ يف كاانة نرنامو يف لاة فيجوال نيسوك حيوو ونلومل مراسور ريوياا لوو‬
                                                       ‫الماانة آلل النو األمحر مل ا آلل وجود خطأ.‬

                                                          ‫ما هي املهام اليت يقوم بتنفيذها املرتجم؟‬
                                              ‫يعمل املرتجم عنى تنفيذ مهماني أرياريياني هما:‬
                                                             ‫1. ترمجة نرنامو نناة ما آلل لاة ا لة.‬
                                 ‫2. اكالاف األخطاء الناوية يف الكنامو وآلعحم املساخدم نها.‬

                                                                                        ‫أنواع األخطاء:‬
                                                                  ‫تصنف األخطاء يف الكنامو آلل نوعني:‬
                                                                       ‫1. خطأ لاوي (‪:)Syntax error‬‬
‫هووو خطووأ نوودة نايجووة ملخالفووة ةواعوود الناووة وعووادة مووا يووام اكالوواف موون ةروول الكنووامو‬
                                                                                                      ‫املرتجم.‬
                                                                   ‫2. خطأ منطبي (‪:)Logical error‬‬
‫هو خطأ يمالفه الكنامو املرتجم ولمن يمالفه املسواخدم (املوكمو) ناجرنوة الكنوامو‬
                                                          ‫واخاراره نرعض الريانات املاوةع ناائو معاجلاها.‬
                         ‫لغات الربجمة (‪:)Programming languages‬‬
                                                                                  ‫ما هي لغة الربجمة؟‬
‫هي لاة الاواصل مع جهاز احلاريو وورييط لناخاطب نني الرلر وا لة وتامو عادة من‬
                                                              ‫عدد حمدود من املفردات والبواعد الناوية.‬
                                                                         ‫أمثنة عنى لاات الكجمة:‬
                                                                         ‫- لاة نيسك (‪.)BASIC‬‬
                                                                 ‫- لاة فورترا (‪.)FORTRAN‬‬
                                                                  ‫- لاة ناريمال (‪.)PASCAL‬‬
                                                                                    ‫- لاة ريي (‪.)C‬‬
                                                          ‫- لاة (++‪ )C‬واليت هي تطوير لناة ريي.‬
                                                               ‫- لاة دلفي (تطوير لناة ناريمال).‬
                                                          ‫- لاة فيجوال نيسك (تطوير لناة نيسك).‬
                                        ‫- لاة جووووووووووووووافا وغ ها المث من الناات األخر....‬


‫نسخة جمانية للجميع‬                                  ‫(5)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬


                                               ‫ما هي أوجه االختالف بني احلاسوب واإلنسان؟‬
‫ميااز اإلنسا عن احلاريو نبدرة الافم فهو الذي يفمر لنحاريو ويرسده آلل طريبة‬
                                                                                                 ‫حل أي مسألة.‬
‫وعودم النسويا (الاخو ين‬        ‫نينما ميااز احلاريو عون اإلنسوا نالسورعة الدةوة احلسوا‬
                                                                                            ‫المر لنريانات).‬
                                                                                          ‫مالحظات هامة:‬
                                   ‫س‬
‫- حتااج مجيع لاات الكجمة آلل نرنامو مرتجم (مف ّر أو مصرف) لرتمجة نراجمهوا آلل لاوة‬
                                                                            ‫ا لة ما عدا لاة ا لة.‬
‫- يف حالة وجود خطأ لاوي يف الكنامو فإ تنفيذه ياوةف آلل أ يام آلصحح اخلطوأ املوجوود‬
                ‫فيه عمس اخلطأ املنطبي الذي آل وجد عادة ما يام ةرول تنفيذ الكنامو.‬


                                                                                  ‫خطوات إعداد برنامج:‬

‫اوووواج يف حنووووها آلل‬      ‫اوووواج آلل احلاريووووو أو مووووا هووووي املسووووائل الوووويت‬              ‫ماووووى‬
                                              ‫ااج آلل كاانة نرنامو‬                   ‫أو ماى‬           ‫احلاريو‬
                                                 ‫جهاز احلاريو آلة مفيدة خاصة يف اجملاالت الاالية:‬
                                                                      ‫و‬
                                    ‫احلسانات املط ّلة واملامررة واليت ال حتامل اخلطأ.‬                   ‫1.‬
           ‫معاجلة الريانات الضخمة مثل ترتيرها أو الرحو عن معنومة معينة فيها...اخل.‬                      ‫2.‬
                                                        ‫االتصاالت ونبل املعنومووووووووووووووووووات.‬     ‫3.‬
                                                                        ‫خت ين الريووووووووووووانات.‬     ‫4.‬


                                         ‫اخلطوات الواجب إتباعها عن إجناز عمل برجمي ما:‬
                 ‫حتديد املسألة: يبصد نها حتديد معطيات الكنامو والناتو املساهدف.‬                         ‫1.‬
‫تصميم احلل: أي كاانة خوارزمية احلل وهي اخلطوات والعمنيات اليت نإتراعها نصول‬                             ‫2.‬
                                                                            ‫آلل احلل املطنو .‬
‫كاانة الكنامو نإحد. لاات الكجمة: هي عرارة عن ترمجة اخلوارزمية املماونوة نناوة‬                           ‫3.‬
                  ‫املكمو (العرنية مثح) آلل لاة يفهمها احلاريو مثل (فيجوال نيسك).‬
                                            ‫جترنة الكنامو وتنفيذه عنى جهاز احلاريو .‬                    ‫4.‬
‫يف حالووة حوواح الكنووامو ناوةووف وآلال (أي فلوول تنفيووذ الكنووامو) فووح نوود موون مراجعووة‬            ‫5.‬
                                      ‫وتصحيح اخلطأ يف اخلطوات السانبة من نداياها.‬




‫نسخة جمانية للجميع‬                                ‫(9)‬                     ‫إعداد/ م. املهدي احممد جربيل‬
                             ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬



                     ‫اخلوارزميــــــــــــــــــــــات (‪)Algorithms‬‬
                                                                                     ‫ما هي اخلوارزمية؟‬
            ‫هي عرارة عن جمموعة من اخلطوات اليت تؤدي عند تنفيذها آلل احلل املطنو .‬
                                                                 ‫ملاذا مسيت اخلوارزمية بهذا االسم؟‬
‫يف‬     ‫مسيووت اخلوارزميووة نهووذا االريووم نسوورة لنعوواى حمموود نوون موريووى اخلوووارزمي الووذي عووا‬
                                                                          ‫البر الااريع ونرغ يف عنم اجلك.‬

                                                                    ‫مالحظات هامة عن اخلوارزميات:‬
                                                            ‫عند آلعداد خوارزمية جيب االناراه آلل الاالي:‬
                                           ‫لمل خوارزمية نداية (انوووووودأ) ونهاية (تووووووةف).‬          ‫1.‬
                              ‫نساخدم يف اخلوارزميات األمر (اةووووووووورأ) إلدخال املعطيات.‬              ‫2.‬
                        ‫نساخدم يف اخلوارزميات األمر (أكاب) إلخراج املطنو حسانه.‬                         ‫3.‬
     ‫والرم (/) كعحمة ةسمة.‬             ‫نساخدم يف اخلوارزميات الرم (‪ )‬كعحمة لنضر‬                        ‫4.‬
                                                  ‫مثال ‪ :‬أكاب خوارزمية لبراءة عدد وطراعة ترنيعه‬
                                                                                                        ‫احلل:‬
                                                                                        ‫املعطيات: العدد (أ).‬
                                                         ‫= أ × أ.‬     ‫املطنو : طراعة ترنيعه ( ) حيو:‬
                                                                                        ‫اخلوارزمية املطنونة:‬
                                                                                           ‫اندأ.‬        ‫1.‬
                                                                              ‫اةووورأ العدد (أ).‬        ‫2.‬
                                                                          ‫= أ ‪ ‬أ.‬     ‫احسب:‬            ‫3.‬
                                                                                  ‫أكاب ( ).‬             ‫4.‬
                                                                                         ‫توةف.‬          ‫5.‬
                                      ‫مثال ‪ :‬أكاب خوارزمية لبراءة عددين وآلجياد حاصل مجعهما‬
                                                                                                        ‫احلل:‬
                                                         ‫املعطيات: العدد األول (س) العدد الثاني (ص).‬
                                                     ‫املطنو : حسا اجملموا (م) حيو: م = س + ص.‬




‫نسخة جمانية للجميع‬                                   ‫(7)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                          ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬


                                                                                ‫اخلوارزمية املطنونة:‬
                                                                                  ‫انوودأ.‬     ‫1.‬
                                                                 ‫اةرأ العدد األول (س).‬        ‫2.‬
                                                                ‫اةرأ العدد الثاني (ص).‬        ‫3.‬
                                                                 ‫احسب: م = س + ص.‬             ‫4.‬
                                                                            ‫أكاب (م).‬         ‫5.‬
                                                                                 ‫توةف.‬        ‫9.‬

                        ‫املخطط االنسيابي (‪)Flow-chart‬‬
                                                                      ‫ما هو املخطط االنسيابي؟‬
‫هو عرارة عن جمموعة من األسمال اهلندريية ترنط نينها أريهم لاوضيح عمل اخلوارزمية.‬
‫ومياوواز هووذا املخطووط نوضوووا أكثوور موون اخلوارزميووة وخاصووة يف توضوويح عموول احلنبووات‬
                                                                                 ‫واللروط املنطبية.‬
                                        ‫األشكال األساسية املستخدمة يف املخطط االنسيابي:‬
                                    ‫1. اللمل الريضاوي: يساخدم لنرداية (اندأ) والنهاية (توةف).‬


                                    ‫2. املساطيل: يساخدم لنعمنيات احلاريرية وتعيني ةيم املاا ات.‬



                                      ‫3. ماوازي األضحا: لنبراءة والماانة (أو لإلدخال واإلخراج).‬




                                           ‫4. سمل املعني: يساخدم لنمبارنات والعمنيات املنطبية.‬




‫5. الوودائرة: تسوواخدم لاوضوويح نبوواط توصوويل املخطووط االنسووياني وغالرووا يف حالووة املخططووات ذات‬
                                                                                  ‫األحجام المر ة.‬


        ‫9. السهم: يساخدم لناوصيل فيما نني األسمال اهلندريية السانبة وتوضيح مسار املخطط.‬




‫نسخة جمانية للجميع‬                              ‫(8)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬


 ‫مثال ‪ :‬أكاب خوارزمية احلل وارريم املخطط االنسياني لبراءة طوول وعورم مسواطيل وحسوا‬
                                                                                        ‫مساحاه‬
                                                                                          ‫احلل:‬
                                                                                    ‫املعطيات:‬
                                                     ‫طول املساطيل (ط) عرم املساطيل (ا).‬
                                                                                        ‫املطنو :‬
                                                ‫حسا مساحة املساطيل (م) حيو: م = ط × ا.‬
                                                                          ‫اخلوارزمية املطنونة:‬
                ‫ابدأ‬
                                                                            ‫اندأ.‬        ‫1.‬
                                                                  ‫اةرأ (ط) و (ا).‬        ‫2.‬
            ‫اقرأ (ط), (ع)‬
                                                              ‫احسب: م = ط ‪ ‬ا.‬           ‫3.‬
                                                                 ‫أكاب ةيمة (م).‬          ‫4.‬
         ‫احسب: م=ط ‪ ‬ع‬                                                     ‫توةف.‬         ‫5.‬


                                                                          ‫املخطط االنسياني:‬
           ‫أكتب ( م )‬



               ‫توقف‬

                                                                          ‫مالحظات هامة:‬
‫1. ارياخراج املخطط االنسوياني يوام مون خوارزميوة احلول أي حاوى لوو كوا املطنوو يف املثوال‬
‫أرريم املخطط االنسياني فبط فإنه يفضل لاحيف الوةوا يف اخلطأ أ يام عمل اخلوارزمية‬
                                                                                ‫أوال.‬
                             ‫2. ميمن الوصول آلل خوارزمية احلل آلذا توفر املخطط االنسياني.‬
         ‫مثال ‪ :‬أكاب خوارزمية احلل وارريم املخطط االنسياني حلسا ماوريط أرنعة أعداد‬
                                                                                          ‫احلل:‬
                                                                                    ‫املعطيات:‬
                                                            ‫أرنعة أعداد (ل) (ك) (ا) (ط).‬
                                                                                        ‫املطنو :‬
                                           ‫حسا املاوريط (م) حيو: م = (ل + ك + ا + ط)/4.‬




‫نسخة جمانية للجميع‬                           ‫(6)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬


                                                                                  ‫اخلوارزمية املطنونة:‬
                  ‫ابدأ‬
                                                                                ‫اندأ.‬       ‫1.‬
                                                        ‫اةرأ (ل) (ك) (ا) (ط).‬               ‫2.‬
         ‫اقرأ (ل), (ك), (ع), (ط)‬
                                                ‫احسب : م = (ل + ك + ا + ط)/4.‬               ‫3.‬
                                                                   ‫أكاب ةيمة (م).‬           ‫4.‬
     ‫احسب: م= (ل+ك+ع+ط)/4‬                                                     ‫توةف.‬         ‫5.‬


                                                                                  ‫املخطط االنسياني:‬
              ‫أكتب ( م )‬



                 ‫توقف‬


 ‫مثال ‪ : ‬أكاب خوارزمية احلل وارريوم املخطوط االنسوياني حلسوا الضوريرة السونوية عنموا نوأ‬
‫الضووريرة (51%) موون الوودخل السوونوي آلذا زاد هووذا الوودخل عوون 1114 دينووار وآلال فإنووه يعفووى موون‬
                                                                                                 ‫الضريرة‬
                                                                                                   ‫احلل:‬
                                                                        ‫املعطيات: الدخل السنوي (د).‬
                                                             ‫املطنو : حسا الضريرة (م) حيو:‬
                                      ‫عندما (د >= 1114 دينار).‬                          ‫م = 51% × د‬
                                                ‫عندما (د < 1114 دينار).‬                          ‫م=1‬
‫نححظ هنا أ هنالك ةيمة لنضريرة (م) ورييام اخايوار آلحود. هواتني البيمواني ننواءا عنوى‬
                                        ‫ةيمة الدخل السنوي (د) آلذا زاد عن 1114 دينار أو ةل عنها.‬
                                                                                  ‫اخلوارزمية املطنونة:‬
                                                                                    ‫اندأ.‬         ‫1.‬
                                                                                ‫اةرأ (د).‬         ‫2.‬
            ‫آلذا كانت (د >= 1114) فاحسب: م = 5111 ‪ ‬د وآلال اجعل م = 1.‬                           ‫3.‬
                                                                      ‫أكاب ةيمة (م).‬              ‫4.‬
                                                                                   ‫توةف.‬          ‫5.‬




‫نسخة جمانية للجميع‬                              ‫(11)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                              ‫ابدأ‬

                                                                                  ‫املخطط االنسياني:‬
                                             ‫اقرأ (د)‬




                             ‫ال‬               ‫هل‬                     ‫نعم‬
                                           ‫د >= 0004‬


                   ‫اجعل: ض= 1‬                                      ‫احسب: ض= 5111 ‪ ‬د‬




                                           ‫أكتب ( ض)‬



                                             ‫توقف‬


‫مثال ‪ :‬أكاب خوارزمية احلل وارريم املخطط االنسياني لبراءة درجات طالب يف عودد مون املوواد‬
                         ‫الدراريية وآلجياد جمموعة عنما نأ عدد املواد تام ةراءته يف اخلوارزمية‬
                                                                                               ‫احلل:‬
                                                        ‫املعطيات: عدد املواد ( ) درجات املواد (د).‬
                                                                      ‫املطنو : حسا اجملموا (م).‬
‫مححظة: نححظ هنوا أ عودد املوواد غو معنووم لوذلك د اريواخدام مواا ( ) ليحسوب عودد تنوك‬
‫املواد ويف مثل هذه احلاالت جيب اريواخدام مواا (عوداد ا) يبووم عاانعوة عودد الودرجات الويت د‬
                                                  ‫ةراءتها وتاوةف البراءة نعد أ تصرح (ا = ).‬
                                                                                 ‫اخلوارزمية املطنونة:‬
                                                                                       ‫1. اندأ.‬
                                                                       ‫2. اةرأ عدد املواد ( ).‬
                                                                 ‫3. اجعل (ا = 1) عداد املواد.‬
                                                                    ‫4. اجعل (م = 1) اجملموا.‬
                                                                             ‫5. اةرأ الدرجة (د).‬
                                                                           ‫9. احسب: م = م + د.‬
                                                                           ‫7. احسب: ا = ا + 1.‬
                                            ‫8. آلذا كانت (ا < ) ارجع آلل اخلطوة (5).‬
                                                                       ‫6. اكاب اجملموا (م).‬
                                                                                      ‫11. توةف.‬


‫نسخة جمانية للجميع‬                         ‫(11)‬                    ‫إعداد/ م. املهدي احممد جربيل‬
                          ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                  ‫ابدأ‬

                                                                            ‫املخطط االنسياني:‬
                                 ‫اقرأ (ن)‬



                              ‫اجعل: ع= 1‬
                               ‫م=1‬


                                 ‫اقرأ (د)‬



                            ‫احسب: م = م + د‬
                            ‫ع = ع+1‬


              ‫نعم‬                                      ‫ال‬
                                  ‫هل‬
                                 ‫ع<ن‬

                                                        ‫أكتب ( م)‬



                                                            ‫توقف‬
                                                                             ‫مالحظة هامة:‬
‫د ارياخدام مواا ومسينواه ناريوم عوداد ونالاوالي فوإ العوداد هوو مواا يوام حتديود ةيموة‬
‫نداية وةيمة زيادة وةيموة ياوةوف عنودها واهلودف الرئيسوي منوه هوو تمورار عمنيوة معينوة عودد مون‬
                    ‫املرات لاحيف احلجم المر والا مبرول يف اخلوارزميات واملخططات والكامو.‬
‫مثال ‪ :‬ارريم املخطط االنسياني لبراءة ةيمة وطراعة كنمة "موجب" آلذا كانت البيمة أكك من‬
                              ‫أو تساوي الصفر وكنمة ريالب آلذا كانت البيمة أصار من الصفر‬
                                                                                         ‫احلل:‬
                                                                    ‫املعطيات: ةيمة عددية (س).‬
       ‫املطنو : طراعة كنمة (موجب) آلذا كانت (س >=1) وكنمة (ريالب) آلذا كانت (س<1).‬
                                                                           ‫اخلوارزمية املطنونة:‬
                                                                              ‫1. اندأ.‬
                                                                        ‫2. اةرأ (س).‬
                           ‫3. آلذا كانت (س >=1) اكاب "موجب" وآلال اكاب "ريالب".‬
                                                                            ‫4. توةف.‬


‫نسخة جمانية للجميع‬                            ‫(21)‬             ‫إعداد/ م. املهدي احممد جربيل‬
                         ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬


                                                                         ‫املخطط االنسياني:‬
                                           ‫ابدأ‬



                                         ‫اقرأ (س)‬




                             ‫ال‬             ‫هل‬               ‫نعم‬
                                         ‫س >= 0‬

               ‫أكتب "سالب"‬                                     ‫أكتب "موجب"‬




                                           ‫توقف‬


‫مثال ‪ :‬أكاب خوار زمية احلل وارريوم املخطوط االنسوياني لطراعوة األعوداد ا صوورة نوني (1 -‬
                                                                                        ‫11)‬
                                                                                       ‫احلل:‬
                      ‫ابدأ‬                                    ‫املعطيات: األعداد (1 -11).‬
                                                     ‫املطنو : طراعة هذه األعداد تصاعديا.‬
                ‫اجعل: ع = 1‬                                              ‫اخلوارزمية املطنونة:‬
                                                                           ‫1. اندأ.‬
                    ‫أكتب (ع)‬                                       ‫2. اجعل (ا = 1).‬
                                                                     ‫3. أكاب (ا).‬
                                                            ‫4. احسب: ا = ا + 1.‬
              ‫احسب: ع = ع + 1‬
                                     ‫5. آلذا كانت (ا <=11) ارجع آلل اخلطوة (3).‬
                                                                          ‫9. توةف.‬
 ‫نعم‬                  ‫هل‬
                    ‫ع<= 01‬

               ‫ال‬

                     ‫توقف‬




‫نسخة جمانية للجميع‬                        ‫(31)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                         ‫الباب الثاني: أساسيات لغة بيسك‬

‫يانوواول هووذا الرووا نعووض أرياريوويات لاووة الكجمووة فيجوووال نيسووك والوويت موون أهمهووا أنووواا‬
                    ‫الثوانت واملاا ات ناإلضافة آلل نعض األوامر واإليعازات األرياريية يف لاة نيسك.‬
                                                                   ‫ما هو الثابت (‪)Constant‬؟:‬
 ‫هو البيمة اليت تربى كما هي (ال تاا ) خحل عمنية أو أثناء تنفيوذ الكنوامو وهوو آلموا أ‬
                                            ‫يمو ثانت عددي مثل: 321 أو ثانت حريف مثل: "عني".‬
                                                  ‫الثانت‬

                      ‫حريف‬                     ‫كسري‬                          ‫صحيح‬
‫‪ ‬الثانت الصحيح: هو البيمة العددية اليت ال حتاوو. عنوى عحموة علورية (أي ال حتاووي عنوى‬
                                                 ‫ج ء كسري) مثل: 32 18 - 54 ... اخل.‬
‫‪ ‬الثانت المسري: هو البيمة العددية اليت حتاوي عنى عحمة علورية مثول: 213 114 -‬
                                                                                   ‫617 ... اخل.‬
‫‪ ‬الثانووت احلووريف: هووو البيمووة احلرفيووة الوويت تربووى كمووا هووي خووحل عمنيووة مووا ويوضووع نووني‬
                 ‫عحميت الانصيص " " مثل: "حممد" "‪ ... "3114" "41" "Ahmed‬اخل.‬
                                                                    ‫ما هو املتغري (‪)Variable‬؟:‬
                                          ‫هو اريم موةع يف ذاكرة احلاريو لاخ ين ةيمة ما.‬
                                                    ‫املاا‬

                      ‫حريف‬                     ‫كسري‬                          ‫صحيح‬
                          ‫‪ ‬املاا الصحيح: هو املاا الذي ياعني له ةيمة ثانت عددي صحيح.‬
                       ‫‪ ‬املاا المسري: هو املاا الذي ياعني له ةيمة ثانت عددي كسري.‬
                                     ‫‪ ‬املاا احلريف: هو املاا الذي ياعني له ةيمة ثانت حريف.‬




‫نسخة جمانية للجميع‬                                 ‫(41)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                      ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                        ‫طرق حتديد نوع املتغري يف لغة فيجوال بيسك:‬
                                                                ‫توجد هنالك طريباا :‬
 ‫أ. الطريبة األول: نوضع عحمة ممي ة عنى ميني اريم املاا حيو يساطيع املرتجم متيي نوا املواا‬
                                                                       ‫كما يف اجلدول الاالي:‬
                          ‫الرم‬                  ‫النوا‬
                          ‫%‬                    ‫الصحيح (‪)Integer‬‬
                          ‫&‬              ‫الصحيح الطويل (‪)Long‬‬
                          ‫!‬               ‫ي المفرد (‪)Single‬‬‫الكسر‬
                          ‫#‬         ‫ي المضاعف (‪)Double‬‬‫الكسر‬
                         ‫@‬                    ‫العملة (‪)Currency‬‬
                          ‫$‬                       ‫النضيد (‪)String‬‬
                                                                                          ‫مثل:‬
                                                         ‫-ماا صحيح.‬        ‫%‪Count‬‬
                                                                ‫%‪- K‬ماا صحيح.‬
                                                        ‫#‪- V‬ماا كسري مضاعف.‬
                                                          ‫!‪ – tax‬ماا كسري مفرد.‬
                                                            ‫$‪ - name‬ماا حريف.‬
                                                          ‫$‪ - address‬ماا حريف.‬
     ‫وكما يني:‬     ‫. الطريبة الثانية: ناحديد نوا املاا يف نداية الكنامو أو ةرل ارياخدام املاا‬
                                 ‫‪Dim var as Type‬‬
                                                                                         ‫حيو:‬
                              ‫‪ :Dim‬كنمة حمجوز اخاصارا لنمنمة (‪.)Dimension‬‬
                                               ‫مثل: ‪ ... x, y, k‬اخل.‬   ‫‪ :var‬اريم املاا‬
 ‫‪ :Type‬نوا املاا (صحيح (‪ )Integer‬كسري (‪ )Single‬حريف (‪ ... )String‬اخل).‬
                                                                                          ‫مثل:‬
                 ‫)اإلعح عن ماا من نوا صحيح( ‪Dim x as Integer‬‬
              ‫)اإلعح عن ماا من نوا احلريف( ‪Dim Name as String‬‬
              ‫)اإلعح عن ماا من نوا المسري( ‪Dim tax as Single‬‬




‫نسخة جمانية للجميع‬                         ‫(51)‬                ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                              ‫مالحظة هامة:‬
 ‫يف حالة ى يام حتديد نوا املاا نإحد. الطريباني السوانباني ريويام اريواخدام النووا املور‬
‫هلذا املاا (‪ )variant‬والذي يصونح لامثيول أي نووا مون أنوواا املواا ات السواة السوانبة ييوو يوام‬
        ‫حتديد نوا هذا املاا أثناء تنفيذ الكنامو ننوا أول ةيمة يام وضعها أو ختصيصها لنماا .‬
                                                                      ‫شروط تسمية املتغري:‬
                             ‫يلرتط لبرول اريم املاا املساخدم يف الكنامو أ يمو كالاالي:‬
                                      ‫أ يردأ اريم املاا يرف وليس نرةم أو رم .‬             ‫1.‬
‫أ ال يمو االريم أحد المنمات ا جوزة يف لاة فيجووال نيسوك مثول: ( ,‪If, print‬‬                ‫2.‬
                                                                 ‫‪ ... end, sub‬اخل).‬
‫أ ال ناوي االريم عنى رم من رموز العمنيات الرياضية أو نعض الرموز اخلاصة مثل:‬               ‫3.‬
                                           ‫-... اخل) نارياثناء الرم (_).‬   ‫(\ + ?‬

                                                                        ‫العبارات احلسابية:‬
‫ميمن أ تامو العرارة احلسانية من ثانت واحد أو ماا واحد أو جمموعة من املاا ات‬
                                                                ‫والثوانت والرموز احلسانية مثل:‬
                                          ‫‪A+B‬‬
                                       ‫2/01 + 2/23‬
                                       ‫‪5/C + 3 + B‬‬
                                        ‫أسبقية (أولوية) تنفيذ العمليات احلسابية:-‬
                      ‫جهاز احلاريو ينا م ناألولوية الاالية يف تنفيذه لنعمنيات احلسانية:‬
                                                                           ‫1. األةواس.‬
                                                                              ‫2. األس.‬
                                           ‫3. الضر والبسمة (من اليسار آلل اليمني).‬
                                                ‫4. اجلمع والطرح (من اليسار آلل اليمني).‬
                                 ‫مثال‪ :‬ما هو ناتو تنفيذ العرارة احلسانية الاالية: 2^2 * 3‬
                                                                                          ‫احلل:‬
                                   ‫* 3‬           ‫2‬    ‫2 ^‬
                                                      ‫1‬

                                                      ‫4‬

                                            ‫2‬

                                           ‫21‬



‫نسخة جمانية للجميع‬                          ‫(91)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                                       ‫مالحظة:‬
           ‫رم الدائرة يل آلل ترتيب تنفيذ العمنية واملساطيل يل آلل ةيمة تنك العمنية.‬
                                   ‫مثال‪ :‬تارع تنفيذ العرارة احلسانية الاالية: 2 ^ 3 ^ 2 ^ 2‬
                                                                                           ‫احلل:‬
                       ‫2‬           ‫^‬       ‫2‬        ‫3 ^‬          ‫^‬   ‫2‬
                                   ‫1‬

                                   ‫4‬

                                                ‫2‬

                                               ‫49‬
                                                            ‫3‬

                                                           ‫9614‬

                          ‫مثال‪ :‬تارع تنفيذ العرارة احلسانية الاالية: )2/01 ( + 4*4/3^4‬
                                                                                           ‫احلل:‬
           ‫4‬    ‫^‬     ‫3‬        ‫/‬       ‫4‬        ‫*‬      ‫4‬     ‫01( +‬         ‫/‬    ‫)2‬
                 ‫2‬                                                         ‫1‬
                ‫49‬                                                         ‫5‬
                          ‫3‬

                          ‫91‬
                                           ‫4‬

                                           ‫49‬
                                                             ‫5‬

                                                            ‫69‬




‫نسخة جمانية للجميع‬                              ‫(71)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                         ‫األوامر األساسية يف لغة فيجوال بيسك‬
                                                                            ‫1. مجلة التعيني (‪:)Let‬‬
‫هي أمر من أوامر لاة نيسك ععنى (اجعل) وهو أمر اخاياري وليس ضروري ويعمل عنى‬
                              ‫تعيني ةيمة أو ناتو عرارة آلل ماا ما ويمو ناللمل العام الاالي:‬
                                     ‫‪Let‬‬      ‫ةيمة أو ماا = اريم املاا‬
                                                                                                   ‫مثل:‬
‫2 / 01 = ‪Let x‬‬
‫51 = ‪Let y‬‬
‫3 * )‪Let B = (x – y‬‬
                                                               ‫2. مجلة النهاية (التوقف) (‪:)End‬‬
‫تعمل هوذه اجلمنوة عنوى آليبواف تنفيوذ الكنوامو ييوو لون يوام تنفيوذ أي مجنوة نعودها وهي‬
                                                               ‫تعمل عمل األمر (توةف) يف اخلوارزمية.‬


                                                             ‫3. مجلة الطباعة (الكتابة) (‪:)Print‬‬
 ‫تعموول هووذه اجلمنووة عنووى طراعووة أو آلخووراج نووواتو تنفيووذ الكنووامو عنووى اللاسووة وتمووو‬
                                                                                 ‫ناللمل العام الاالي:‬
                                  ‫ةيمة أو ماا أو عرارة حسانية ‪Print‬‬
                                                                                                   ‫مثل:‬
‫01 ‪Print‬‬
‫5 + 2 / ‪Print x‬‬
‫"الصف الثالو ثانوي" ‪Print‬‬


‫كمووا أنووه ميموون أ يطرووع أكثوور موون ةيمووة أو موواا نووأمر واحوود فبووط وذلووك ناريوواخدام‬
‫فاصنة عادية (,) أو منبوطة (;) وآلذا اناهوى هوذا األمور نفاصونة عاديوة (,) أو منبوطوة (;) فوإ ذلوك‬
 ‫يعين أ أمر الطراعة الاالي ريويمو يف نفوس السوطر ييو آلذا كانوت الفاصونة عاديوة ريوامو‬
             ‫الطراعة ماراعدة وآلذا كانت الفاصنة منبوطة فإ الطراعة ريامو ماحصبة مثل:‬

‫5,4,3,2,1 ‪Print‬‬                                              ‫يف حالة فاصنة عادية‬
                                       ‫1‬        ‫2‬        ‫3‬        ‫4‬        ‫رييمو ناتو الطراعة: 5‬

‫5;4;3;2;1 ‪Print‬‬                                              ‫يف حالة فاصنة منبوطة‬
                                                                 ‫رييمو ناتو الطراعة: 5 4 3 2 1‬


‫نسخة جمانية للجميع‬                               ‫(81)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                         ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
‫مثووال ‪ :‬أكاووب نرنووامو حلسووا مسوواحة ةطعووة أرم عنووى سوومل مسوواطيل طولووه (9152 موورت)‬
                                                                           ‫وعرضه (5143 مرت)‬
                                                                                         ‫احلل:‬
                                      ‫العرم (‪. 3415 = )W‬‬         ‫املعطيات: الطول (‪2519 = )L‬‬
                                          ‫املطنو : حسا مساحة ةطعة األرم (‪ )A‬حيو:‬
                                        ‫‪A=L*W‬‬
                                                                   ‫الكنامو املطنو :‬
                         ‫6.52 = ‪Let L‬‬
                         ‫5.43 = ‪Let W‬‬
                         ‫‪Let A = L * W‬‬
                         ‫"مساحة قطعة األرض" , ‪Print A‬‬
                         ‫‪End‬‬

                                                            ‫4. توثيق الربنامج (‪:)Remarks‬‬
                                        ‫يهدف توثيق الكنامو آلل كاانة مححظات عن:‬
                                                              ‫الارم من الكنامو.‬          ‫1.‬
                                                                  ‫كاتب الكنامو.‬          ‫2.‬
                                                            ‫سرح ماا ات الكنامو.‬          ‫3.‬
                                                        ‫سرح طريبة عمل الكنامو.‬           ‫4.‬
                                                             ‫تاريخ كاانة الكنامو.‬        ‫5.‬
                                                           ‫معنومات أخر. خمانفة.‬          ‫9.‬

                                                      ‫ميمن ارياخدام الاوثيق نإحد. طريباني:‬
                                                            ‫- نارياخدام األمر (‪ )Rem‬مثل:‬
               ‫هذا الكنامو حلسا مساحة ةطعة أرم مساطينة اللمل ‪Rem‬‬
                                                     ‫- نارياخدام عحمة الانصيص املفرد مثل:‬
                  ‫هذا الكنامو حلسا مساحة ةطعة أرم مساطينة اللمل '‬
                                                                             ‫مالحظة هامة:‬
‫نول هوي عثانوة اجلمول املياوة فهوي‬   ‫كح عرارتي الاوثيق ال يام تنفيذه مون ةرول احلاريوو‬
                                             ‫تفيد فبط يف معرفة سيء ما حول الكنامو أو عمنه.‬




‫نسخة جمانية للجميع‬                          ‫(61)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
          ‫مثال ‪ :‬أكاب نرنامو حلسا عدد األيام يف 52 رينة عنما نأ السنة 51593 يوما‬
                                                                                ‫احلل:‬
                                                     ‫املعطيات: عدد السنوات (‪.25 = )y‬‬
                                         ‫املطنو : حسا عدد األيام يف السنوات حيو:‬
                                 ‫5.563 * ‪d = y‬‬
                                                                   ‫الكنامو املطنو :‬
                     ‫هذا البرنامج لحساب عدد األيام ‪Rem‬‬
                     ‫52 = ‪Let y‬‬
                     ‫5.563 * ‪d = y‬‬
                     ‫"عدد األيام" , ‪Print d‬‬
                     ‫‪End‬‬
               ‫مثال ‪ :‬أكاب نرنامو حلسا حجم كرة نصف ةطرها (43ريم) عنما نأ :‬
                                ‫حجم المرة = (4 ط نق3 ÷ 3) وأ : ط = 4113 تبريراً.‬
                                                                                ‫احلل:‬
                                   ‫ط (‪. 3114 = )P‬‬        ‫املعطيات: نصف البطر (‪34 = )R‬‬
                                           ‫املطنو : حسا حجم المرة (‪ )V‬حيو:‬
                               ‫3/3‪V = 4 * P * R‬‬
                                                             ‫الكنامو املطنو :‬
                     ‫هذا البرنامج لحساب حجم الكرة ‪Rem‬‬
                     ‫43 = ‪R‬‬
                     ‫41.3 = ‪P‬‬
                     ‫3/3‪V = 4 * P * R‬‬
                     ‫"حجم الكرة" , ‪Print V‬‬
                     ‫‪End‬‬




‫نسخة جمانية للجميع‬                     ‫(12)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                        ‫الباب الثالث: تنفيذ برنامج بيسك املرئي‬

‫ريوويام الاعوورم يف هووذا الرووا آلل نيوووة نيسووك واملمونووات األرياريووية يف نوافووذه والوظووائف‬
                                                                                  ‫األرياريية املاضمنة هلا.‬
                                                                             ‫تشغيل بيئة بيسك املرئي:‬
                                                       ‫يام تلايل نرنامو نيسك املرئي كالاالي:‬
                                                                                        ‫1. من ةائمة اندأ:‬
        ‫ةائمة اندأ ‪ ‬الكامو ‪Microsoft visual Basic 5.0  Microsoft visual Basic ‬‬


                                                                                   ‫2. من ريطح املماب:‬
‫نووالنبر املوو دوج عنووى أيبونوووة االخاصووار اخلاصووة نفيجوووال نيسوووك آل وجوودت عنووى ريوووطح‬
                                                                                                     ‫املماب.‬
                                                                    ‫عندها تظهر النافذة املرينة.‬
        ‫سريط البوائم البياريي‬                                                 ‫آلطار امللروا‬
                                             ‫سريط األدوات‬




                                       ‫آلطار النموذج‬



              ‫صندوق األدوات‬


                                                           ‫آلطار اخلصائص‬




                         ‫سمل يرني النافذة الرئيسية لكنامو فيجوال نيسك‬




‫نسخة جمانية للجميع‬                                 ‫(12)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                 ‫مكونات نافذة فيجوال بيسك:‬
                                                         ‫تامو هذه النافذة من األج اء الاالية:‬
                                                         ‫- صندوق األدوات (‪.)Tool box‬‬
                                                   ‫- آلطار النموذج (‪.)Form window‬‬
                                         ‫- آلطار اخلصائص (‪.)Properties window‬‬
                                            ‫- سريط البوائم البياريي (‪.)Main menu‬‬
                                                         ‫- سريط األدوات (‪.)Tools bar‬‬
                                                 ‫- آلطار امللروا (‪.)Project window‬‬


                                                               ‫1. صندوق األدوات (‪:)Tool box‬‬
            ‫ناوووي هووذا الصووندوق عنووى جمموعووة موون أزرار الوواحمم الوويت تسوواعد يف‬
                                                    ‫تصميم واجهة املساخدم أو واجهة الكنامو.‬


                                                                                 ‫من أهم هذه األزرار:‬
                                                                         ‫:‬         ‫- ال ر (‪)Label‬‬
                            ‫يساخدم يف كاانة توضيح املخرجات عنى نافذة الكنامو.‬
                                                                   ‫:‬         ‫- ال ر (‪)Text Box‬‬
            ‫يووام نواريووطاه رريووم آلطووار مسوواطيل اللوومل يوضووع فيووه نووص معووني يف‬
                                                                              ‫اإلدخال أو يف اإلخراج.‬
                                                     ‫:‬         ‫- ال ر (‪)Command Button‬‬
                                              ‫يساخدم الريابرال األوامر من املساخدم.‬
                                                          ‫2. آلطار النموذج (‪:)Form window‬‬
                                                         ‫وهو ميثل الواجهة اليت يام فيها‬
                                                         ‫الافاعل نني الكنامو واملسواخدم حيوو‬
                                                         ‫تام عمنية آلدخال الريانوات وآلخراجهوا يف‬
                                                         ‫هووووذه النافووووذة ولووووذلك تسوووومى نواجهووووة‬
                                                                   ‫املساخدم (‪.)User interface‬‬




‫نسخة جمانية للجميع‬                        ‫(22)‬                    ‫إعداد/ م. املهدي احممد جربيل‬
                      ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                 ‫3. آلطار اخلصائص (‪:)Properties window‬‬
                      ‫يووام عوون طريووق هووذا اإلطووار حتديوود خصووائص أي أداة يووام رمسهووا‬
                      ‫احلجوم ... اخل ويوجود‬        ‫عنى آلطار النموذج مثل تاي اريوم األداة النوو‬
                                                                          ‫عادة ميني أريفل اللاسة.‬




                                                  ‫4. سريط البوائم البياريية (‪:)Main menus‬‬
       ‫ااج هلا يف آلعداد وتنفيذ نرنامو نيسك املرئي ومنها:‬        ‫حد يف هذا اللريط األوامر اليت‬




                                                                             ‫أ. ةائمة منف (‪:)File‬‬
                                                       ‫وحتاوي عنى األوامر اهلامة الاالية:‬
                            ‫* األموور (‪ )New project‬لنروودء يف ملووروا أو نرنووامو أو تطريووق‬
                                                                                               ‫جديد.‬
                                          ‫‪ ‬األمر (‪ )Open project‬لفاح ملروا خم .‬
                                            ‫‪ ‬األمر (‪ )Save Form‬لاخ ين النافذة فبط.‬
                            ‫‪ ‬األمر (‪ )Save Form as‬لاخ ين النافذة فبط ناريم آخور‬
                                                                          ‫أو يف موةع آخر.‬
                            ‫‪ )Save‬لاخووو ين امللووووروا نالماموووول‬      ‫‪ ‬األموووور (‪project‬‬
                                                                       ‫(النافذة والكنامو).‬
                            ‫‪ ‬األموور (‪ )Save project as‬لاخو ين امللووروا نالماموول‬
                                                               ‫ناريم آخر أو يف موةع آخر.‬




‫نسخة جمانية للجميع‬                          ‫(32)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                         ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                         ‫. ةائمة حترير (‪:)Edit‬‬
                                                                        ‫ومن أهم أوامرها:‬
                                                              ‫‪ ‬أمر البطع (البص) (‪.)Cut‬‬
                                                                     ‫‪ ‬أمر النسخ (‪.)Copy‬‬
                                                                    ‫‪ ‬أمر النصق (‪.)Paste‬‬
                                                         ‫‪ ‬أمر اإللااء (احلذف) (‪.)Delete‬‬
                                                                     ‫‪ ‬أمر الرحو (‪.)Find‬‬



                                                                           ‫ج. ةائمة تنفيذ (‪:)Run‬‬
                                   ‫ااج هلذه البائمة عند آلجراء تنفيذ لنكنامو وتلمل:‬
                                                       ‫‪ ‬األمر (‪ )Start‬لردأ تنفيذ الكنامو.‬
                                                       ‫‪ ‬األمر (‪ )End‬إلنهاء تنفيذ الكنامو.‬
                                                  ‫‪ ‬األمر (‪ )Restart‬إلعادة تنفيذ الكنامو.‬


                              ‫ناإلضافة آلل جمموعة أخر. من البوائم حتاوي وظائف خمانفة.‬


                                                                 ‫5. سريط األدوات (‪:)Tool bar‬‬




‫ناوووي هووذا اللووريط عنووى جمموعووة موون األزرار املخاصوورة لنوصووول آلل األواموور كووث ة‬
                                                                                 ‫االرياخدام مثل:‬
                                                                    ‫- زر الاخ ين (احلفظ).‬
                                                                  ‫- زر نداية تنفيذ الكنامو.‬
                                                                  ‫- زر آلنهاء تنفيذ الكنامو.‬
                                                                                ‫- زر النسخ.‬
                                                                                ‫- زر البص.‬
                                                                               ‫- زر النصق.‬




‫نسخة جمانية للجميع‬                            ‫(42)‬                ‫إعداد/ م. املهدي احممد جربيل‬
                          ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                            ‫9. آلطار امللروا (‪:)Project window‬‬
                                                                       ‫توفر هذه النافذة زرين هما:‬
                                        ‫- زر عورم الكنوامو (‪ :)View code‬لعورم سوفرة‬
                                                                                          ‫الكنامو.‬
                                        ‫- زر عرم النافوذة (‪ :)View object‬لعورم نافوذة‬
                                                                              ‫أو منوذج الكنامو.‬


                                                    ‫كيف يام تنفيذ الكنامو عنى جهاز احلاريو :‬
                                                       ‫ةرل تنفيذ الكنامو جيب عمل الاالي:‬
                                                    ‫كاانة الكنامو نالمامل عنى ورق.‬                   ‫1.‬
             ‫تلايل جهاز احلاريو ثم نلال نرنامو فيجوال نيسك ونفاح منف جديد.‬                           ‫2.‬
                                                          ‫ننبر نبرا م دوجوا عنوى نافوذة‬              ‫3.‬
                                                          ‫النمووذج عنوودها تظهوور نافووذة‬
                                                          ‫حتريوووووور الكنووووووامو اخلاصووووووة‬
                                                          ‫نماانوووة الكنوووامو أو الاعوووديل‬
                                                          ‫فيووووه كمووووا يف الصووووورة ص‬
                                                                                        ‫(78).‬
                                                          ‫نبوول الكنووامو موون الورةووة آلل‬          ‫4.‬
                                                                         ‫النافذة املذكورة.‬

                                                                                       ‫مالحظات هامة:‬
                                   ‫توجوود خاصووية يف مرنووع اخلصووائص ناريووم ( ‪Auto‬‬                 ‫1.‬
                                   ‫‪ )Redraw‬نبوم نااي ها من (‪ )False‬آلل (‪)True‬‬
                                   ‫حاووى يوواممن الكنووامو موون الماانووة عنووى النافووذة‬
                                   ‫مراسوورة وذلووك فبووط يف حالووة وجووود أموور الطراعووة‬
                                                                     ‫(‪ )Print‬يف الكنامو.‬
                ‫ال حاجة لماانة األمر (‪ )End‬ألنه موجود أصح نصياة (‪.)End sub‬‬                           ‫2.‬
‫لانفيووذ الكنووامو ننبوور ال و ر (‪ )Run‬موون ةائمووة الانفيووذ أو سووريط األدوات أو نضوواط‬            ‫3.‬
                                                         ‫املفااح (5‪ )F‬من لوحة املفاتيح.‬
                 ‫يف حالة ما يراد تعديل أو تطوير الكنامو فإنه جيب آليباف تنفيذه أوال.‬                 ‫4.‬
‫يف حالة وجود أخطاء آلمحئية أثناء كاانة الكنامو يفضل تصوحيحها أوال ةرول اللوروا‬                       ‫5.‬
                                                 ‫يف الانفيذ أو االنابال آلل مجنة أخر..‬


‫نسخة جمانية للجميع‬                              ‫(52)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                      ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                          ‫ختزين الربنامج:‬
                           ‫تأتي هذه املرحنة يف العادة نعد كاانة الكنامو وتام كما يني:‬
                        ‫النبر عنى البائمة (‪ )File‬وخناار منها (‪.)Save project‬‬         ‫1.‬
                               ‫نماب اريم النافذة املناريب ثم ننبر ال ر (‪.)save‬‬       ‫2.‬
                                                  ‫نماب اريم الكنامو املناريب.‬        ‫3.‬
                                                       ‫النبر عنى ال ر (‪.)save‬‬        ‫4.‬


                                                                                 ‫مالحظات:‬
                            ‫‪ ‬جيب أ يام آليباف تنفيذ الكنامو ةرل اللروا يف الاخ ين.‬
                 ‫‪ ‬يفضل تسمية الكامو نأمساء ذات عحةة ناهلدف منها ليسهل تذكرها.‬


                                                     ‫امتدادات (ملحق) ملفات الربنامج:‬
                          ‫نعد خت ين امللروا يامو لدينا منفني ناالمادادين الااليني:‬
                              ‫- االماداد (‪ )frm‬يضاف آلل اريم منف النموذج (النافذة).‬
                             ‫- االماداد (‪ )vbp‬يضاف آلل اريم منف الكنامو (اللفرة).‬
‫وآلضافة هذين االمادادين آلل منفات امللروا تام نلمل تنبائي من ةرل نرنامو فيجوال نيسك.‬




‫نسخة جمانية للجميع‬                       ‫(92)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                             ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                          ‫الباب الرابع: إدخال وإخراج البيانات‬

‫يهوودف هووذا الرووا آلل تبووديم نعووض األدوات الوويت متموون املسوواخدم موون آلدخووال وآلخووراج‬
                                  ‫الريانات نلمل عام ونالاالي يمو الكنامو ذا صفة عمنية أكك.‬
                                                                      ‫أوال: دالة اإلدخال (‪:)Inputbox‬‬
‫تعمل هذه الدالة عنى آلدخال ةيمة ألي ماا يف الكنامو أثناء وةت تنفيذ الكنامو ومتانوك‬
                                                                                        ‫اللمل العام الاالي:‬
                                   ‫)"رريالة مناريرة"(‪V = InputBox‬‬
                                                                                                          ‫حيو:‬
                                                                                       ‫‪ : V‬ماا يف الكنامو.‬
                                                                                                           ‫مثل:‬
                            ‫)"أدخل طول ضنع املساطيل"(‪L = InputBox‬‬
                                                                             ‫يناو عنها ظهور النافذة الاالية:‬




                                                                                            ‫مالحظة هامة:‬
‫جيووب االناروواه آلل حتديوود نوووا املوواا يف هووذه الدالووة وآلال فإنووه ريوويعامل كموواا موون النوووا‬
                                                                              ‫احلريف (‪ )string‬وليس املر .‬
                                                      ‫مثال ‪ :‬أكاب نرنامو لبراءة عدد وطراعة ترنيعه‬
                                                                                                          ‫احلل:‬
                                                                                ‫املعطيات: عدد (‪.)n‬‬
                                                                       ‫املطنو : طراعة ترنيعه (‪.)a‬‬
                                                                                            ‫الكنامو املطنو :‬
                          ‫()‪Private Sub Form_Load‬‬
                          ‫("أدخل العدد")‪n% = InputBox‬‬
                          ‫%‪a% = n% * n‬‬
                          ‫"تربيع العدد هو" , %‪Print a‬‬
                          ‫‪End Sub‬‬

‫نسخة جمانية للجميع‬                                   ‫(72)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
       ‫مثال ‪ :‬أكاب نرنامو لبراءة طول وعرم مساطيل وحسا وطراعة مساحاه وحميطه‬
                                                                                     ‫احلل:‬
                                  ‫املعطيات: طول املساطيل (‪ )x‬عرم املساطيل (‪.)y‬‬
                                 ‫املطنو : حسا املساحة (‪ )a‬وا يط (‪ )c‬حيو:‬
                                      ‫‪a=x*y‬‬
                                   ‫2 * )‪c = (x + y‬‬
                                                                ‫الكنامو املطنو :‬
                     ‫()‪Private Sub Form_Load‬‬
                     ‫("أدخل الطول")‪x! = InputBox‬‬
                     ‫("أدخل العرض")‪y! = InputBox‬‬
                     ‫!‪a! = x! * y‬‬
                     ‫2 * )!‪c! = (x! + y‬‬
                     ‫"مساحة المستطيل" , !‪Print a‬‬
                     ‫"محيط المستطيل" , !‪Print c‬‬
                     ‫‪End Sub‬‬
‫مثال ‪ :‬أكاب نرنامو حلسا ةيمة ال كاة عنى مرنغ مالي عنما نأ نسرة ال كاة هي (512%)‬
                                                                                     ‫احلل:‬
                                                          ‫املعطيات: مرنغ مالي (‪.)x‬‬
                                        ‫املطنو : حسا ةيمة ال كاة (‪ )y‬حيو:‬
                                  ‫001 / 5.2 * ‪y = x‬‬
                                                                 ‫الكنامو املطنو :‬
                     ‫()‪Private Sub Form_Load‬‬
                     ‫("أدخل قيمة المبلغ المالي")‪x! = InputBox‬‬
                     ‫001 / 5.2 * !‪y! = x‬‬
                     ‫"قيمة المبلغ المالي" , !‪Print x‬‬
                     ‫"قيمة الزكاة على هذا المبلغ" , !‪Print y‬‬
                     ‫‪End Sub‬‬




‫نسخة جمانية للجميع‬                        ‫(82)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                  ‫ثانيا: مربع النص (‪:)Text Box‬‬
‫يسوواخدم مرنووع الوونص كووأداة آلدخووال أو آلخووراج لبوويم موواا ات الكنووامو وينووو عوون أموور‬
                                                                        ‫الطراعة (‪ )Print‬يف الكنامو.‬


                                                                                            ‫مححظات:‬
                                ‫‪ ‬يفضل دائما رريم مرنع النص ةرل كاانة امسه يف الكنامو.‬
                             ‫‪ ‬الصياة العامة الرياخدام مرنع النص يف اإلخراج هي كالاالي:‬
                                     ‫اريم املاا = ‪Text1.text‬‬
                                                                                                  ‫حيو:‬
                ‫‪ : Text1.text‬اخلاصية اليت عن طريبها نساطيع الماانة يف مرنع النص.‬
              ‫مثال ‪ :‬أكاب نرنامو لاحويل مساةة مبارية ناألميال آلل المينومرتات عنما نأ :‬
              ‫1 ميل = 361911 كينو مرت وذلك نارياخدام دالة اإلدخال ومرنع النص يف اإلخراج‬
                                                                                                  ‫احلل:‬
                                                ‫املعطيات: مسافة مبارية ناألميال (‪.)Miles‬‬
                                       ‫املطنو : حتويل هذه املسافة آلل كينومرتات (‪.)Km‬‬
                                                                          ‫أوال: تصميم نافذة الكنامو:‬




                                                                               ‫ثانيا: الكنامو املطنو :‬
                        ‫()‪Private Sub Form_Load‬‬
                        ‫("أدخل المسافة باألميال")‪Miles! = InputBox‬‬
                        ‫3906.1 * !‪km! = Miles‬‬
                        ‫!‪Text1.text = km‬‬
                        ‫‪End Sub‬‬




‫نسخة جمانية للجميع‬                               ‫(62)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                          ‫ثالثا: أداة الوصف (‪:)Label‬‬
‫تساخدم هذه األداة لماانة وصف نصي ملخرجات أو مودخحت نافوذة الكنوامو وهوي أداة‬
                                                                     ‫تمو مرافبة ملرنع النص يف الاالب.‬
                                                      ‫والوصف يف هذه األداة ميمن كااناه نطريباني:‬
                                                            ‫1. عن طريق النموذج (من مرنع اخلصائص):‬
                                    ‫حيوووو يوووام حتديووود أداة الوصوووف نوووالنبر عنيهوووا أوال ثوووم‬
                                    ‫الووذها آلل مرنووع اخلصووائص أمووام اخليووار (‪ )caption‬ونماووب‬
                                                                                           ‫الاوضيح املناريب.‬
                                                                                      ‫2. عن طريق الكنامو:‬
                          ‫سرط أ يام رريم األداة أوال ثم نماب السطر الاالي يف الكنامو:‬
                             ‫"الاوضيح املناريب" = ‪Label1.caption‬‬

                                                                                                   ‫مالحظة:‬
‫الرتةيم يف أمساء األدوات املدرجة عنوى نافوذة الكنوامو يواحمم نوه نرنوامو فيجووال نيسوك‬
‫نلووومل تنبوووائي وميمووون تاوووي أمسووواء هوووذه األدوات يسوووب موووا يناريوووب املوووكمو مووون اخلاصوووية‬
                                                                            ‫(‪ )Name‬يف مرنع اخلصائص.‬
‫مثووال ‪ : ‬أكاووب نرنووامو لبووراءة عووددين وطراعووة حاصوول مجعهووا ناريوواخدام مرنووع الوونص وكاانووة‬
                                                                                 ‫توضيح املخرجات املناريب‬
                                                                                                         ‫احلل:‬
                                                                   ‫املعطيات: عددين (‪.)B( )A‬‬
                                                           ‫املطنو : آلجياد حاصل مجعهما (‪.)C‬‬
                                                                               ‫أوال: تصميم نافذة الكنامو:‬




‫نححظ أنه د كاانوة الاوضويح يف أداة الوصوف واريوم النافوذة أيضوا عون طريبوة اخلاصوية‬
                                                                        ‫(‪ )Caption‬من مرنع اخلصائص.‬



‫نسخة جمانية للجميع‬                                 ‫(13)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                      ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                  ‫ثانيا: الكنامو املطنو :‬
                     ‫()‪Private Sub Form_Load‬‬
                     ‫هذا البرنامج إليجاد حاصل جمع عديين ‪Rem‬‬
                     ‫("أدخل العدد األول")‪A! = InputBox‬‬
                     ‫("أدخل العدد الثاني")‪B! = InputBox‬‬
                     ‫!‪C! = A! + B‬‬
                     ‫!‪Text1.text = A‬‬
                     ‫!‪Text2.text = B‬‬
                     ‫!‪Text3.text = C‬‬
                     ‫‪End Sub‬‬

                                        ‫ونححظ ناتو تنفيذ الكنامو كما يف النافذة الاالية:‬




‫مثال ‪ :‬تفاهم سريما يف ملروا اةاصادي نابسيم العائد نينهما ننسرة 1 : 3 أكاب نرنامو‬
               ‫لبراءة العائد وتبسيمه نينهما ارياخدم دالة اإلدخال ومرنع النص وأداة الوصف‬
                                                                                   ‫احلل:‬
                                            ‫املعطيات: عائد ملروا اةاصادي (‪.)A‬‬
                             ‫املطنو : حسا نصيب األول(1‪ )x‬والثاني (2‪ )x‬ييو:‬
                                 ‫‪x1 = 1/4 * A‬‬
                                 ‫‪x2 = 3/4 * A‬‬
                                                           ‫أوال: تصميم نافذة الكنامو:‬




‫نسخة جمانية للجميع‬                      ‫(13)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                  ‫ثانيا: الكنامو املطنو :‬
                 ‫()‪Private Sub Form_Load‬‬
                 ‫قام بكتابة هذا البرنامج المهدي جبريل ‪Rem‬‬
                 ‫ع االقتصادي")‪A! = InputBox‬‬‫("أدخل عائد المشرو‬
                 ‫!‪x1! = 1/4 * A‬‬
                 ‫!‪x2! = 3/4 * A‬‬
                 ‫ع اقتصادي" = ‪Form1.caption‬‬‫"تقسيم عائد مشرو‬
                 ‫ع" = ‪Label1.caption‬‬‫"عائد المشرو‬
                 ‫" نصيب األول" = ‪Label2.caption‬‬
                 ‫"نصيب الثاني" = ‪Label3.caption‬‬
                 ‫!‪Text1.text = A‬‬
                 ‫!1‪Text2.text = x‬‬
                 ‫!2‪Text3.text = x‬‬
                 ‫‪End Sub‬‬
‫نححظ هنا أ الاعنيق يف أداة الوصف د كااناه من خحل الكنامو وكذلك عنوا نافوذة‬
                                        ‫الكنامو والنافذة الاالية ترني ناتو تنفيذ الكنامو:‬




‫نسخة جمانية للجميع‬                     ‫(23)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                             ‫الباب اخلامس: مجل التحكم‬
‫تهدف مجل الاحمم نلمل عام آلل آلحاز العروارات املنطبيوة ويوجود سومنني أرياريوني‬
                                                               ‫هلذه اجلمل يف الفيجوال نيسك هما:‬
                                             ‫- مجنة (آلذا كا – وآلال) (‪.)If – then - else‬‬
                                                  ‫- هيمل االخايار املاعدد (‪.)Select case‬‬
                                     ‫أوال: مجلة ( إذا كان – وإال )(‪:)If – then - else‬‬
                                                     ‫تأخذ هذه اجلمنة اللمل العام الاالي:‬
                            ‫‪) then‬سرط منطبي( ‪If‬‬
                                            ‫مجنة أو أكثر‬
                            ‫‪Else‬‬
                                            ‫مجنة أو أكثر‬
                            ‫‪End if‬‬
‫يف حالووة حتبووق اللوورط املنطبووي (‪ )True‬ريوويام تنفيووذ جمموعووة اجلموول الوويت تووأتي نعوود‬
‫المنمووة (‪ )Then‬ويف حالووة عوودم حتببووه (‪ )False‬ريوويام تنفيووذ جمموعووة اجلموول الوويت تووأتي نعوود‬
                                                                                     ‫المنمة (‪.)else‬‬
                                                                                       ‫مححظة هامة:‬
‫ليس من الضروري أ حتاوي مجنة (‪ )If‬عنى (‪ )else‬ونالاالي ريامو مجنة (‪ )If‬ناللمل العوام‬
                                                                                                 ‫الاالي:‬
                            ‫‪) then‬سرط منطبي( ‪If‬‬
                                            ‫مجنة أو أكثر‬
                            ‫‪End if‬‬
                                        ‫مثال‪ :‬أكاب نرنامو يبوم نبراءة ةيماني ويطرع أككهما‬
                                                                                                 ‫احلل:‬
                                                              ‫املعطيات: ةيماني (‪.)B( )A‬‬
                                    ‫املطنو : آلجياد أكك ةيمة من نينهما (‪ )Max‬ييو:‬
                                                  ‫آلذا كانت (‪ )A>B‬آلذاً‬
                                               ‫‪Max = A‬‬
                                                                  ‫وآلال‬
                                               ‫‪Max = B‬‬




‫نسخة جمانية للجميع‬                              ‫(33)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                               ‫الكنامو املطنو :‬
                   ‫()‪Private Sub Form_Load‬‬
                   ‫هذا البرنامج إليجاد العدد األكبر من بين عديين ‪Rem‬‬
                   ‫("أدخل العدد األول")‪A! = InputBox‬‬
                   ‫("أدخل العدد الثاني")‪B! = InputBox‬‬
                   ‫‪If (A! > B!) then‬‬
                          ‫!‪Max! = A‬‬
                   ‫‪Else‬‬
                          ‫!‪Max! = B‬‬
                   ‫‪End if‬‬
                   ‫"العدد األكبر" ,!‪Print Max‬‬
                   ‫‪End Sub‬‬

                                          ‫وعنووود اخاروووار الكنوووامو نوووالبيماني (11 3) ناجوووت‬
                                                                                  ‫النافذة الاالية:‬




                                                                ‫رموز العمليات املنطقية:‬
                                      ‫ميمن حصر العمنيات املنطبية ناجلدول الاالي:‬
                                ‫املعنى‬                          ‫الرمز‬
                                            ‫أكبر من‬              ‫>‬
                                           ‫أصغر من‬               ‫<‬
                                   ‫أكبر من أو يساوي‬             ‫=>‬
                                 ‫أصغر من أو يساوي‬               ‫=<‬
                                               ‫يساوي‬             ‫=‬
                                            ‫ال يساوي‬            ‫><‬

‫مالحظة: نححظ أ معنى العمنيوات املنطبيوة أخوذ نوأ هوذه العمنيوات مماونوة نالناوة اإلحني يوة‬
                              ‫وهي الناة اليت تماب نها الكامو يف نيوة الكجمة فيجوال نيسك.‬




‫نسخة جمانية للجميع‬                        ‫(43)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
‫مثال ‪ :‬أكاب نرنامو حلسا ةيمة الضوريرة عنموا نوأ : الضوريرة = 1 آلذا كوا الودخل السونوي‬
‫أةل من 1119 دينار والضريرة = 5% من ةيمة الدخل السنوي آلذا كوا هوذا الودخل أكوك مون أو‬
                                      ‫يساوي 1119 دينار ارياخدم مرنع النص وأداة الوصف‬
                                                                                   ‫احلل:‬
                                                ‫املعطيات: دخل رينوي (‪.)income‬‬
                                      ‫املطنو : حسا ةيمة الضريرة (‪ )tax‬ييو:‬
                                ‫آلذا كانت (0006 => ‪ )income‬آلذاً‬
                         ‫001 / 5 * ‪tax = income‬‬
                                                            ‫وآلال‬
                         ‫0 = ‪tax‬‬
                                                           ‫أوال: تصميم نافذة الكنامو:‬




                                                                  ‫ثانيا: الكنامو املطنو :‬
                ‫()‪Private Sub Form_Load‬‬
                ‫هذا البرنامج لحساب ضريبة الدخل السنوي ‪Rem‬‬
                ‫("أدخل الدخل السنوي")‪income! = InputBox‬‬
                ‫‪If (income! >= 6000) then‬‬
                        ‫001/ 5 * !‪tax! = income‬‬
                ‫‪Else‬‬
                        ‫0 = !‪tax‬‬
                ‫‪End if‬‬
                ‫!‪Text1.text = income‬‬
                ‫!‪Text2.text = tax‬‬
                ‫‪End Sub‬‬




‫نسخة جمانية للجميع‬                       ‫(53)‬             ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                             ‫وعنوووود تنفيووووذ الكنووووامو وافوووورتام‬
                                                             ‫الدخل السنوي نبيمة (1119 دينوار) ناجوت‬
                                                                                               ‫النافذة الاالية:‬




  ‫أرضوية مرنوى ييوو يوام آلدخوال مسواحة الفور‬           ‫مثال ‪ :‬أكاوب نرنو امو حلسوا تمواليف فور‬
‫نوواملرت املرنووع مووع العنووم أ تمنفووة املوورت املرنووع الواحوود 11 دينووار وهنوواك خصووم (21%) آلذا كانووت‬
                                                                        ‫املاريحة أكثر من 151 مرت مرنع‬
                                                                                                          ‫احلل:‬
                                                           ‫أرضية (‪.)A‬‬        ‫املعطيات: مساحة فر‬
                                                 ‫(‪ )T‬ييو:‬           ‫املطنو : حسا تمنفة الفر‬
                                              ‫آلذا كانت (051>‪ )A‬آلذاً‬
                               ‫)21.0 – 1( )01 * ‪T = (A‬‬
                                                                ‫وآلال‬
                               ‫)01 * ‪T = (A‬‬
                                                                                            ‫الكنامو املطنو :‬
                     ‫()‪Private Sub Form_Load‬‬
                     ‫هذا البرنامج لحساب تكاليف فرش أرضية ‪Rem‬‬
                     ‫("أدخل مساحة الفرش")‪A! = InputBox‬‬
                     ‫‪If (A! >150) then‬‬
                              ‫)21.0 – 1( * )01 * !‪T! = (A‬‬
                     ‫‪Else‬‬
                              ‫01 * !‪T! = A‬‬
                     ‫‪End if‬‬
                     ‫"مساحة الفرش" = ‪Label1.caption‬‬
                     ‫"تكلفة الفرش" = ‪Label2.caption‬‬
                     ‫!‪Text1.text = A‬‬
                     ‫!‪Text2.text = T‬‬
                     ‫‪End Sub‬‬




‫نسخة جمانية للجميع‬                                 ‫(93)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                       ‫الروابط املنطقية:‬
 ‫تهدف الروانط املنطبية لرنط سرطني أو أكثر لارم تبنيص عدد املبارنات يف الكنامو‬
                                ‫وياواجد منها نوعني رئيسني يف لاة فيجوال نيسك هما كالاالي:‬
                                              ‫1. الرابط املنطقي (‪( )AND‬مبعنى "و"):-‬
  ‫يرنط نني عرارتني منطباني (1‪ )E‬و (2‪ )E‬لاناو عرارة منطبية جديدة (3‪ )E‬كالاالي:‬
                                ‫2‪E3 = E1 AND E‬‬
 ‫آلذا كانت كح العرارتني (1‪ )E2 E‬صحيحاني (‪ )True‬فإ ناتو العرارة (3‪ )E‬رييمو‬
                                  ‫صحيحا وآلال فإ ناتو العرارة رييمو غ صحيح (‪.)False‬‬
                                                                       ‫جدول عرارة (‪:)AND‬‬
                       ‫1‪E‬‬            ‫2‪E‬‬           ‫2‪E3 = E1 AND E‬‬
                       ‫‪T‬‬             ‫‪T‬‬                   ‫‪T‬‬
                       ‫‪T‬‬             ‫‪F‬‬                   ‫‪F‬‬
                       ‫‪F‬‬             ‫‪T‬‬                   ‫‪F‬‬
                       ‫‪F‬‬             ‫‪F‬‬                   ‫‪F‬‬
                                                                                        ‫مثل:‬
‫)2 > 3( ‪1. (4 > 3) AND‬‬         ‫‪ T‬‬

‫)9 > 01( ‪2. (6 < 5) AND‬‬         ‫‪ F‬‬

                                                ‫2. الرابط املنطقي (‪( )OR‬مبعنى "أو"):-‬
   ‫يرنط نني عرارتني منطباني (1‪ )E‬و (2‪ )E‬لاناو عرارة منطبية جديدة (3‪ )E‬كالاالي:‬
                                       ‫2‪E3 = E1 OR E‬‬
‫آلذا كانووت كووح العرووارتني (1‪ )E2 E‬غ و صووحيحاني (‪ )False‬فووإ نوواتو العرووارة (3‪)E‬‬
                     ‫رييمو غ صحيح وآلال فإ ناتو العرارة رييمو صحيح (‪ )True‬دائما.‬
                                                                         ‫جدول عرارة (‪:)OR‬‬
                       ‫1‪E‬‬            ‫2‪E‬‬           ‫2‪E3 = E1 OR E‬‬
                       ‫‪T‬‬             ‫‪T‬‬                  ‫‪T‬‬
                       ‫‪T‬‬             ‫‪F‬‬                  ‫‪T‬‬
                       ‫‪F‬‬             ‫‪T‬‬                  ‫‪T‬‬
                       ‫‪F‬‬             ‫‪F‬‬                  ‫‪F‬‬
                                                                                        ‫مثل:‬
‫)8 > 3( ‪1. (-5 > 0) OR‬‬        ‫‪ F‬‬

‫)9 > 01( ‪2. (6 < 5) OR‬‬        ‫‪ T‬‬


‫نسخة جمانية للجميع‬                         ‫(73)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
‫مثال ‪ : ‬أكاب نرنامو لطراعة أكك ةيمة من نني ثحثة ةيم ارياخدم مرنوع الونص وأداة الوصوف‬
                                                                      ‫يف نافذة الكنامو‬
                                                                                 ‫احلل:‬
                                                ‫املعطيات: ثحثة ةيمة (‪.)A, B, C‬‬
                                  ‫املطنو : آلجياد أكك ةيمة من نني الثحثة ييو:‬
                                           ‫آلذا كانت (‪ )A>B‬و (‪ )A>C‬آلذا‬
                                   ‫‪Max = A‬‬
                                     ‫وآلال آلذا كانت (‪ )B>A‬و (‪ )B>C‬آلذا‬
                                   ‫‪Max = B‬‬
                                                                  ‫وآلال‬
                                   ‫‪Max = C‬‬
                                                                    ‫الكنامو املطنو :‬
                ‫()‪Private Sub Form_Load‬‬
                ‫هذا البرنامج إليجاد أكبر قيمة من بين ثالثة ‪Rem‬‬
                ‫("أدخل العدد األول")‪A! = InputBox‬‬
                ‫("أدخل العدد الثاني")‪B! = InputBox‬‬
                ‫("أدخل العدد الثالث")‪C! = InputBox‬‬
                ‫‪If (A! > B!) AND (A! > C!) then‬‬
                        ‫!‪Max! = A‬‬
                ‫‪Else‬‬
                ‫‪If (B! > A!) AND (B! > C!) then‬‬
                        ‫!‪Max! = B‬‬
                ‫‪Else‬‬
                        ‫!‪Max! = C‬‬
                ‫‪End if‬‬
                ‫‪End if‬‬
                ‫"العدد األكبر" = ‪Label1.caption‬‬
                ‫!‪Text1.text = Max‬‬
                ‫‪End Sub‬‬




‫نسخة جمانية للجميع‬                      ‫(83)‬             ‫إعداد/ م. املهدي احممد جربيل‬
                         ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                   ‫ثانيا: مجلة االختيار املتعددة (هيكل االختيار) (‪:)Select case‬‬
‫ختانووف هووذه اجلمنووة اللوورطية عوون مجنووة (‪ )If‬موون حيووو عوودد الافرعووات فجمنووة (‪)If‬‬
               ‫اللرطية تامو من تفرعني فبط يف حني اهليمل االخايار ناوي عدة تفرعات.‬


                                                                                       ‫مالحظة:‬
‫ميمون آلضوافة تفور ا ناريوم (‪ )Case else‬يف مجنوة االخايووار املاعودد ييوو تموو آخوور‬
‫تفرا فإذا ى تاوافق مجيع مبارنات الفروا السانبة يام النجوء هلذا الافرا والذي عادة ما ناووي‬
                                                                      ‫عنى تنريه خلطأ يف اإلدخال.‬
                                                ‫مثال ‪ :‬أكاب نرنامو يبرأ حرف ويطرع الاالي:‬
                                                     ‫- كنمة (‪ )Red‬آلذا كا احلرف (‪.)R‬‬
                                                   ‫- كنمة (‪ )Blue‬آلذا كا احلرف (‪.)B‬‬
                                                 ‫- كنمة (‪ )Green‬آلذا كا احلرف (‪.)G‬‬
                       ‫ارياخدم مجنة االخايار مرة ومجنة (‪ )If‬مرة أخر. .‬
                                                                                             ‫احلل:‬
                                                              ‫أوال: نارياخدام مجنة (‪ )If‬اللرطية:‬
                   ‫()‪Private Sub Form_Load‬‬
                   ‫هذا البرنامج باستخدام جملة إذا كان - واال ‪Rem‬‬
                   ‫)"أدخل الحرف ‪ R‬أو ‪ B‬أو ‪C = InputBox("G‬‬
                   ‫‪If (C = "R") OR (C = "r") then‬‬
                              ‫"‪Print "Red‬‬
                   ‫‪else‬‬
                   ‫‪If (C = "B") OR (C = "b") then‬‬
                              ‫"‪Print "Blue‬‬
                   ‫‪else‬‬
                   ‫‪If (C = "G") OR (C = "g") then‬‬
                              ‫"‪Print "Green‬‬
                   ‫‪else‬‬
                              ‫"اختيار خاطئ" ‪Print‬‬
                   ‫‪End if‬‬
                   ‫‪End if‬‬
                   ‫‪End if‬‬
                   ‫‪End Sub‬‬




‫نسخة جمانية للجميع‬                            ‫(63)‬                ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                   ‫ثانيا: نارياخدام مجنة االخايار املاعدد:‬
                   ‫()‪Private Sub Form_Load‬‬
                   ‫هذا البرنامج باستخدام جملة االختيار المتعدد ‪Rem‬‬
                    ‫)"أدخل الحرف ‪ R‬أو ‪ B‬أو ‪C = InputBox("G‬‬
                    ‫‪Select case C‬‬
                    ‫"‪Case "R", "r‬‬
                                    ‫"‪Print "Red‬‬
                    ‫"‪Case "B", "b‬‬
                                    ‫"‪Print "Blue‬‬
                    ‫"‪Case "G", "g‬‬
                                    ‫"‪Print "Green‬‬
                    ‫‪Case else‬‬
                                    ‫"اختيار خاطئ" ‪Print‬‬
                    ‫‪End select‬‬
                    ‫‪End Sub‬‬
‫منوووة (‪)If‬‬   ‫يعاوووك هوووذا الكنوووامو خماصووور وأيسووور يف الااروووع مبارنوووة نالكنوووامو املماوووو‬
                                                                                                     ‫اللرطية.‬
‫مثال ‪ : ‬أكاب نرنامو لطراعوة الابودير ننواءا عنوى املعودل الوذي حتصول عنيوه الطالوب نعود أ توام‬
                                                                                            ‫ةراءته كالاالي:‬
                                                                       ‫د‬
                                              ‫- ضعيف: املع ّل أكك من صفر وأصار من 15.‬
                                                                      ‫د‬
                                     ‫- مبرول: املع ّل أكك من أو يساوي 15 وأصار من 59.‬
                                                                        ‫د‬
                                       ‫- جيد: املع ّل أكك من أو يساوي 59 وأصار من 57.‬
                                                                  ‫د‬
                                 ‫- جيد جدا: املع ّل أكك من أو يساوي 57 وأصار من 58.‬
                                                                   ‫د‬
                           ‫- ممااز: املع ّل أكك من أو يساوي 58 وأصار أو يساوي 111.‬
                                                                           ‫نارياخدام مجنة االخايار املاعدد‬
                                                                                                         ‫احلل:‬
                                                                     ‫املعطيات: معدل طالب (‪.)G‬‬
                                            ‫املطنو : طراعة الابدير نناءا عنى املرني يف املثال.‬


‫أل املعدل هو ةيمة عددية كسورية رينسواخدم أداة (‪ )Is‬لالومل مجيوع األجو اء المسورية‬
                                                                                                         ‫لنبيم.‬




‫نسخة جمانية للجميع‬                                 ‫(14)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                              ‫الكنامو املطنو نارياخدام مجنة االخايار املاعدد:‬
                  ‫()‪Private Sub Form_Load‬‬
                  ‫هذا البرنامج لطباعة تقدير الطالب بناءا على المعدل ‪Rem‬‬
                  ‫)"أدخل معدل الطالب"(‪G! = InputBox‬‬
                  ‫!‪Select case G‬‬
                  ‫05 < ‪Case Is‬‬
                             ‫"ضعيف" ‪Print‬‬
                  ‫56 < ‪Case Is‬‬
                             ‫"مقبول" ‪Print‬‬
                  ‫57 < ‪Case Is‬‬
                             ‫"جيد" ‪Print‬‬
                  ‫58 < ‪Case Is‬‬
                             ‫"جيد جدا" ‪Print‬‬
                  ‫001 < ‪Case Is‬‬
                             ‫"ممتاز" ‪Print‬‬
                  ‫‪Case else‬‬
                           ‫"معدل خاطئ" ‪Print‬‬
                  ‫‪End select‬‬
                  ‫‪End Sub‬‬

‫مثال ‪ : ‬أكاب نرنامو يبرأ ةيمواني وجيوري آلحود. العمنيوات احلسوانية عنيهوا ننواءا عنوى اخايوار‬
                          ‫املساخدم ارياخدم مرنع النص وأداة الوصف يف تصميم نافذة الكنامو‬
                                                                                        ‫احلل:‬
                                                             ‫املعطيات: ةيماني (‪.)B,A‬‬
 ‫املطنو : آلجراء آلحد. العمنيات احلسانية األرنعة عنى البيماني نناءا عنى طنب املساخدم.‬
                                                                   ‫أوال: تصميم نافذة الكنامو:‬




‫نسخة جمانية للجميع‬                          ‫(14)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                               ‫ثانيا: الكنامو املطنو :‬
         ‫()‪Private Sub Form_Load‬‬
         ‫هذا البرنامج كتب بتاريخ 8112 ‪Rem‬‬
         ‫)"أدخل القيمة األولى"(‪A! = InputBox‬‬
         ‫)"أدخل القيمة الثانية"(‪B! = InputBox‬‬
                                       ‫ر‬
         ‫)"إختر العملية الم اد عملها: + - * /"(‪C = InputBox‬‬
         ‫‪Select case C‬‬
         ‫"+" ‪Case‬‬
                    ‫!‪T! = A! + B‬‬
                    ‫"ناتج الجمع" = $‪M‬‬
         ‫"-" ‪Case‬‬
                    ‫!‪T! = A! - B‬‬
                      ‫ح" = $‪M‬‬‫"ناتج الطر‬
         ‫"*" ‪Case‬‬
                      ‫!‪T! = A! * B‬‬
                      ‫"ناتج الضرب" = $‪M‬‬
         ‫"/" ‪Case‬‬
                      ‫!‪T! = A! / B‬‬
                      ‫"ناتج القسمة" = $‪M‬‬
         ‫‪Case else‬‬
                      ‫0 = !‪T‬‬
                      ‫"اخترت عملية خاطئة" = $‪M‬‬
         ‫‪End select‬‬
         ‫"القيمة األولى" = ‪Label1.caption‬‬
         ‫!‪Text1.text = A‬‬
         ‫"القيمة الثانية" = ‪Label2.caption‬‬
         ‫!‪Text2.text = B‬‬
         ‫$‪Label3.caption = M‬‬
         ‫!‪Text3.text = T‬‬
         ‫‪End Sub‬‬




‫نسخة جمانية للجميع‬                    ‫(24)‬            ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                            ‫الباب السادس: احللقات‬

‫تهدف احلنبوات نلومل عوام آلل تمورار عمول معوني عودد مون املورات أو وفوق سورط معوني‬
                                                  ‫ياحبق هذا الامرار يام نسرعة عالية جدا.‬
                                                        ‫ومن أهم أنواا هذه احلنبات:‬
                                                 ‫حنبة (من –آلل) (‪.)For - Next‬‬            ‫1.‬
                                            ‫حنبة (نفذ – طاملا) (‪.)Do - While‬‬             ‫2.‬
                                             ‫حنبة (نفذ – حاى) (‪.)Do - Until‬‬              ‫3.‬


                                             ‫أوال: حلقة (من – إىل) (‪:)For - Next‬‬
                                             ‫متانك هذه احلنبة اللمل العام الاالي:‬


               ‫‪For i = n to m step x‬‬
               ‫عمل معني يراد تمراره (مجنة أو أكثر)‬
               ‫‪Next i‬‬
                                                                                         ‫حيو:‬
                                                        ‫‪ :i‬عداد احلنبة (دليل الدورة).‬
                                                                   ‫د‬
                                                                  ‫‪ :n‬ةيمة نداية الع ّ.‬
                                                                  ‫د‬
                                                       ‫‪ :m‬ةيمة نهاية الع ّ أو الاوةف.‬
                                                                  ‫د‬
                                                               ‫‪ :x‬ةيمة خطوة الع ّاد.‬
                      ‫مثال‪ : ‬أكاب نرنامو لطراعة األعداد ال وجية ا صورة نني (1 -15)‬
                                                                                         ‫احلل:‬
 ‫ااج هنا آلل عداد يردأ من الصفر وي داد خبطوة ةدرها (2) وياوةف عند البيمة (15).‬
                                                                            ‫الكنامو املطنو :‬
           ‫()‪Private Sub Form_Load‬‬
           ‫هذا البرنامج يطبع األعداد الزوجية من 1 إلى 15 ‪Rem‬‬
           ‫2 ‪For k = 0 to 50 step‬‬
              ‫;‪Print k‬‬
           ‫‪Next k‬‬
           ‫‪End sub‬‬




‫نسخة جمانية للجميع‬                        ‫(34)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                                       ‫ناتو تنفيذ الكنامو:‬




                                                                                                ‫مالحظة:‬
  ‫نححظ هنا أ الطراعة ماحصبة ويف ريطر واحد وهذا يرجع لنفاصنة املنبوطة املوضوعة‬
                                                                     ‫يف نهاية أمر الطراعة نداخل احلنبة.‬
                   ‫مثال‪ : ‬أكاب نرنامو حلسا مريعات حمل ملدة أريروا واحد من مريعات يومية‬
                                                                                                      ‫احلل:‬
                                                          ‫املعطيات: مريعات يومية ملدة أريروا واحد (‪.)d‬‬
                                                     ‫املطنو : حسا آلمجالي مريعات األريروا (‪.)Sum‬‬
     ‫ااج هنا آلل عداد يردأ من واحد وي داد خبطوة ةدرها (1) وياوةف عند البيمة (7).‬
                                                                                         ‫الكنامو املطنو :‬
              ‫()‪Private Sub Form_Load‬‬
              ‫ع واحد ‪Rem‬‬ ‫هذا البرنامج لحساب مبيعات محل لمدة أسبو‬
              ‫0 = !‪Sum‬‬
              ‫7 ‪For i = 1 to‬‬
                 ‫)"أدخل مريعات اليوم"(‪d! = InputBox‬‬
                 ‫!‪Sum! = Sum! + d‬‬
              ‫‪Next i‬‬
              ‫"آلمجالي مريعات األريروا" ,!‪print sum‬‬
              ‫‪End sub‬‬
                                                                                                ‫مالحظة:‬
 ‫عنوودما يمووو ةيمووة خطوووة العوود نالبيمووة (1) فووح داعووي لماانووة هووذه البيمووة يف احلنبووة‬
‫ونالاووالي فووإ ذلووك يعووين أنووه آلذا ى يووام حتديوود ةيمووة اخلطوووة يف احلنبووة (‪ )For‬ريوويعاكها فيجوووال‬
                                                                                          ‫نيسك نبيمة (1).‬




‫نسخة جمانية للجميع‬                                 ‫(44)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                      ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                       ‫مثال‪ : ‬أكاب نرنامو يبرأ درجات (‪ )n‬من الطنرة ويطرع أكك درجة‬
                                                                                   ‫احلل:‬
                                                          ‫املعطيات: درجات (‪ )n‬من الطنرة.‬
                                   ‫املطنو : آلجياد أكك درجة من نني تنك الدرجات (‪.)Max‬‬
           ‫ااج آلل ةيمة (‪ )n‬لذلك رينساخدم دالة اإلدخال لبراءتها.‬   ‫نححظ هنا أننا‬
                                                                        ‫الكنامو املطنو :‬
          ‫()‪Private Sub Form_Load‬‬
          ‫هذا البرنامج إليجاد أكبر درجة طالب ‪Rem‬‬
          ‫0 = !‪Max‬‬
          ‫)"أدخل عدد الطنرة"(‪n! = InputBox‬‬
          ‫‪For i = 1 to n‬‬
             ‫)"أدخل درجة الطالب"(‪d! = InputBox‬‬
             ‫‪if (d! > Max!) then‬‬
                     ‫!‪Max! = d‬‬
             ‫‪End if‬‬
          ‫‪Next i‬‬
          ‫"أكك درجة" = ‪Label1.caption‬‬
          ‫!‪Text1.text = Max‬‬
          ‫‪End sub‬‬
‫مثال‪ :‬أكاب نرنامو يبرأ درجات وأمساء 11 طوح ويطروع فبوط درجوات وأمسواء ذوي الابودير‬
                                                                                   ‫املمااز‬
                                                                                   ‫احلل:‬
                                                      ‫املعطيات: أمساء ودرجات 11 طح :‬
                                         ‫املطنو : طراعة أمساء ودرجات ذوي الابدير املمااز.‬
                                                                        ‫الكنامو املطنو :‬
          ‫()‪Private Sub Form_Load‬‬
          ‫هذا البرنامج إليجاد أكبر درجة طالب ‪Rem‬‬
          ‫01 ‪For i = 1 to‬‬
             ‫)"أدخل اريم الطالب"(‪Name$ = InputBox‬‬
            ‫)"أدخل درجة الطالب"(‪d! = InputBox‬‬
            ‫‪if (d! >= 85) then‬‬
                    ‫!‪Print Name$, d‬‬
            ‫‪End if‬‬
          ‫‪Next i‬‬
          ‫‪End sub‬‬


‫نسخة جمانية للجميع‬                       ‫(54)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                  ‫مثال‪ :‬أكاب نرنامو يطرع اللمل الاالي:‬
                              ‫1‬   ‫2‬   ‫6 5 4 3‬
                              ‫1‬   ‫2‬   ‫5 4 3‬
                              ‫1‬   ‫2‬   ‫4 3‬
                              ‫1‬   ‫2‬   ‫3‬
                              ‫1‬   ‫2‬
                              ‫1‬
                                                                                        ‫احلل:‬
‫ااج يف مثل هذه احلاالت آلل حنباني ماداخناني اخلارجيوة لعود السوطور والداخنيوة لعود‬
                                                                                      ‫األعمدة.‬
        ‫عدد األريطر (9) لذلك فإ حنبة السطور رياردأ نالبيمة (1) وتناهي نوالبيمة (9).‬
‫عدد األعمدة أو الرمووز يف كول ريوطر يانواةص يف كول ريوطر نرمو واحود لوذلك ريويردأ‬
    ‫نالبيمة (9) وهي عدد الرموز يف السطر األول ويناهي نالبيمة (1) وهي عدد رموز آخر ريطر.‬
                                                                            ‫الكنامو املطنو :‬
            ‫()‪Private Sub Form_Load‬‬
            ‫مثال على تداخل الحلقات ‪Rem‬‬
            ‫6=‪n‬‬
            ‫6 ‪For i = 1 to‬‬
               ‫‪For j = 1 to n‬‬
                      ‫;‪Print j‬‬
               ‫‪Next j‬‬
               ‫1–‪n=n‬‬
               ‫‪Print‬‬
            ‫‪Next i‬‬
            ‫‪End sub‬‬
                                                            ‫اللمل الناتو نعد تنفيذ الكنامو:‬




                                                  ‫آلذا كا اللمل املطنو طراعاه كما يني:‬
                              ‫1‬
                              ‫1‬   ‫2‬
                              ‫1‬   ‫2‬   ‫3‬
                              ‫1‬   ‫2‬   ‫4 3‬
                              ‫1‬   ‫2‬   ‫5 4 3‬
                              ‫1‬   ‫2‬   ‫6 5 4 3‬


‫نسخة جمانية للجميع‬                         ‫(94)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                          ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
‫هنا عدد األعمدة أو الرموز يف كل ريطر ي داد يف كول ريوطر نرمو واحود لوذلك ريويردأ‬
    ‫نالبيمة (1) وهي عدد الرموز يف السطر األول ويناهي نالبيمة (9) وهي عدد رموز آخر ريطر.‬
                                        ‫ويف حالة كا اللمل املطنو طراعاه كالاالي:‬
                                ‫*‬   ‫*‬   ‫* * * *‬
                                ‫*‬   ‫*‬   ‫* * *‬
                                ‫*‬   ‫*‬   ‫* *‬
                                ‫*‬   ‫*‬   ‫*‬
                                ‫*‬   ‫*‬
                                ‫*‬
                    ‫فإنه فبط يام تاي أمر الطراعة (;‪ )Print j‬آلل األمر (;"*" ‪.)Print‬‬
                                                    ‫مثال‪ :‬أكاب نرنامو لطراعة اللمل الاالي:‬
                                        ‫‪A‬‬       ‫‪B‬‬        ‫‪B‬‬
                                        ‫‪B‬‬       ‫‪A‬‬        ‫‪B‬‬
                                        ‫‪B‬‬       ‫‪B‬‬        ‫‪A‬‬
                                                                                                 ‫احلل:‬
‫اوواج آلل حنبوواني حنبووة لنسووطور وأخوور. ل عموودة ولموون جيووب الرحووو عوون‬     ‫هنووا أيضووا‬
                ‫عحةة منطبية يف اللمل ناإلجانة عنى السؤال: ماى يطرع (‪ )A‬وماى يطرع (‪. )B‬‬
‫يف هذا اللمل نححظ أنه كنما تساو. رةم السطر ورةوم العموود طروع الرمو (‪ )A‬وآلال‬
                                                                                ‫فإنه يطرع الرم (‪.)B‬‬
                                                                                   ‫الكنامو املطنو :‬
            ‫()‪Private Sub Form_Load‬‬
            ‫مثال على تداخل الحلقات ‪Rem‬‬
            ‫3 ‪For i = 1 to‬‬
               ‫3 ‪For j = 1 to‬‬
                       ‫‪if (i = j) then‬‬
                               ‫,"‪print "A‬‬
                       ‫‪else‬‬
                               ‫,"‪print "B‬‬
                       ‫‪end if‬‬
               ‫‪Next j‬‬
               ‫‪Print‬‬
            ‫‪Next i‬‬
            ‫‪End sub‬‬
                                                                                 ‫ناتو تنفيذ الكنامو:‬




‫نسخة جمانية للجميع‬                            ‫(74)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                        ‫ثانيا: حلقة (نفذ – طاملا) (‪:)Do - While‬‬
‫تعمل هذه احلنبة عنى تمرار تنفيذ عمل معني طاملا ياحبق سرط معوني وتأخوذ اللومل‬
                                                                                ‫العام الاالي:‬
                ‫)سرط منطبي( ‪Do While‬‬
                ‫عمل معني يراد تمراره (مجنة أو أكثر)‬
                ‫‪loop‬‬
                                                                                      ‫حيو:‬
                                         ‫(سرط منطبي): هو سرط اريامرار احلنبة.‬
                                                                ‫‪ :loop‬نهاية احلنبة.‬
                                                                                 ‫مالحظة:‬
‫ميمن حتوير هذه احلنبة لاعمل عمل حنبوة (‪ )For‬حيوو يوام تعويني مواا نبيموة مردئيوة‬
                                                      ‫لنعد وسرط اريامرار وةيمة زيادة لنعداد.‬
             ‫مثال‪ :‬أكاب نرنامو لطراعة األعداد من (1 -12) نارياخدام حنبة (نفذ – طاملا)‬
                                                                                      ‫احلل:‬
                                                                           ‫الكنامو املطنو :‬

             ‫()‪Private Sub Form_Load‬‬
             ‫مثال على حلق نفذ - حتى ‪Rem‬‬
             ‫1=‪C‬‬
             ‫)02=<‪Do While (C‬‬
               ‫;‪Print C‬‬
               ‫1+‪C=C‬‬
             ‫‪Loop‬‬
             ‫‪End sub‬‬
                                                   ‫وعند تنفيذ الكنامو تظهر النافذة الاالية:‬




 ‫عنموا نوأ‬   ‫مثال‪ : ‬أكاوب نرنوامو حلسوا ماوريوط درجوات جمموعوة طوح يف موادة احلاريوو‬
                              ‫عدد الطنرة غ معنوم وياوةف الكنامو عند آلدخال درجة ريالرة‬




‫نسخة جمانية للجميع‬                       ‫(84)‬                ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                                                     ‫احلل:‬
                                           ‫املعطيات: درجات جمموعة من الطح غ معنومي العدد.‬
                                                        ‫املطنو : املاوريط احلساني لدرجاتهم (‪.)ave‬‬
‫نححووظ هنووا أ عوودد الطنرووة غو معنوووم لووذلك ال ميموون اريوواخدام دالووة البووراءة وحاووى يووام‬
  ‫آلجياد املاوريط احلساني لدرجات الطح جيب أوال آلجياد حاصول مجوع درجواتهم ثوم عودد الطوح‬
                                               ‫ااج آلل ماا ين هما:‬      ‫الذين د مجع درجاتهم لذلك‬
                                                           ‫(‪ )n‬عداد لعد املواد اليت يام مجعها.‬
                                             ‫(‪ )sum‬ماا جلمع ةيمة مجيع الدرجات املدخنة.‬
                                                                                      ‫الكنامو املطنو :‬
             ‫()‪Private Sub Form_Load‬‬
             ‫هذا البرنامج يتوقف عند إدخال درجة سالبة ‪Rem‬‬
             ‫0 = %‪n‬‬
             ‫0 = !‪Sum‬‬
             ‫)"أدخل درجة الطالب"(‪g! = InputBox‬‬
             ‫)0=>!‪Do While (g‬‬
                ‫!‪Sum! = Sum! + g‬‬
                ‫1 + %‪n% = n‬‬
                ‫)"أدخل درجة ريالرة لناوةف"(‪g! = InputBox‬‬
             ‫‪Loop‬‬
             ‫%‪Ave! = Sum! / n‬‬
             ‫"املاوريط احلساني لدرجات الطح ",!‪Print Ave‬‬
             ‫‪End sub‬‬


                                                                                     ‫مالحظة هامة:‬
                                               ‫‪ ‬عحمة البسمة (/) تعيد ناتو كسري مثل:‬
                                          ‫5.1 = 2 / 3‬
                                   ‫‪ ‬عحمة البسمة (\) تعيد اجل ء الصحيح لناتو البسمة مثل:‬
                                           ‫1=2\3‬




‫نسخة جمانية للجميع‬                               ‫(64)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                        ‫ثالثا: حلقة (نفذ – حتى) (‪:)Do - Until‬‬
‫تعموول هووذه احلنبووة عنووى تموورار تنفيووذ عموول معووني آلل أ ياحبووق سوورط معووني لووذلك هووذا‬
                              ‫اللرط يسمى سرط توةف وتأخذ هذه احلنبة اللمل العام الاالي:‬
                 ‫)سرط منطبي( ‪Do Until‬‬
                 ‫عمل معني يراد تمراره (مجنة أو أكثر)‬
                 ‫‪loop‬‬
                                                                                                   ‫حيو:‬
                                                   ‫(سرط منطبي): هو سرط توةف احلنبة.‬
                                                                         ‫‪ :loop‬نهاية احلنبة.‬
                 ‫مع أعداد موجرة وياوةف عند آلدخال ةيمة ريالرة‬          ‫مثال‪ :‬أكاب الكنامو يبوم‬
                                                                                                   ‫احلل:‬
                     ‫املعطيات: جمموعة أعداد موجرة ياوةف آلدخاهلا عند آلدخال ةيمة ريالرة.‬
                                         ‫املطنو : آلجياد حاصل مجع األعداد املوجرة (‪.)sum‬‬
                                                                                    ‫الكنامو املطنو :‬
             ‫()‪Private Sub Form_Load‬‬
             ‫مثال على حلق نفذ - طالما ‪Rem‬‬
             ‫0 = !‪Sum‬‬
             ‫0 = !‪y‬‬
             ‫)0 < !‪Do Until (y‬‬
                 ‫!‪Sum! = Sum! + y‬‬
                 ‫)"أدخل ةيمة ريالرة لناوةف"(‪y! = InputBox‬‬
             ‫‪Loop‬‬
             ‫"جمموا البيمة املوجرة" = ‪Label1.caption‬‬
             ‫!‪Text1.text = Sum‬‬
             ‫‪End sub‬‬

                                                             ‫مالحظة حول احللقات بشكل عام:‬
     ‫1. اللرط يف حنبة (نفذ – طاملا) سرط اريامرار نينما يف حنبة (نفذ – حاى) سرط توةف.‬
 ‫2. ميمن آلعادة كاانة الكنامو املماو ينبة (نفوذ -طاملوا) ناريواخدام حنبوة (نفوذ -حاوى)‬
‫وياطنوب ذلوك كاانوة اريوم احلنبوة (‪ )Until - While‬وتاوي اللورط مون سورط توةوف آلل سورط‬
                                                                                 ‫اريامرار أو العمس.‬
 ‫3. ميمن آلعادة كاانة الكنامو من حنبوة (‪ )for‬آلل أي حنبوة سورطية والعموس غو صوحيح‬
‫حيو ميمن ارياخدام حنبوة (‪ ) for‬فبوط يف حالوة عنمنوا عودد مورات الامورار وندايوة ونهايوة العود‬
                                                                                        ‫وةيمة ال يادة.‬


‫نسخة جمانية للجميع‬                              ‫(15)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                            ‫الباب السابع: املصفوفات‬
                                                                            ‫ما هي املصفوفة؟‬
                    ‫هي جمموعة من الريانات أو العناصر ذات نوا واحد وحتت اريم واحد.‬
                  ‫كل عنصر من عناصر املصفوفة ياطنب موةع (خنية) يف ذاكرة اجلهاز.‬
‫مثل: مصفوفة أيام األريروا – مصفوفة اجلدول الدراريوي ... اخل مجيعهوا مصوفوفات ميمون‬
                      ‫خت ينها يف ذاكرة اجلهاز خت ينا مؤةاا ياحسى نعد آليباف تنفيذ الكنامو.‬
 ‫ويف هذا الرا ريناعرم لنوعني هما: مصفوفة ذات الرعد الواحد ومصفوفة ذات الرعدين.‬


                                      ‫أوال: مصفوفة البعد الواحد (‪:)One dimensional‬‬
                              ‫هي مصفوفة عناصرها آلما يف صف واحد أو يف عمود واحد.‬



        ‫مصفوفة ذات بعد واحد في صف واحد وعناصر‬
   ‫ها (5)‬
                                                         ‫خلية‬



                                                   ‫ها (5)‬‫مصفوفة ذات بعد واحد في عمود واحد وعناصر‬


                                            ‫ثانيا: مصفوفة البعدين (‪:)Tow dimensional‬‬
                                 ‫هي مصفوفة مرترة يف أكثر من عمود وأكثر من صف.‬
                                     ‫عمود‬



                                                                      ‫صف‬




       ‫مصفوفة ذات بعدين بحجم (4*5) – أي 4 صفوف و 5 أعمدة - تحتوي على 02 خلية أو عنصر‬




‫نسخة جمانية للجميع‬                          ‫(15)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                      ‫حجز مواقع املصفوفة يف الذاكرة:‬
     ‫وهي أو خطوة جيب البيام نها عند ارياعمال املصفوفة يف الكنامو ويام ذلك كما يني:‬
                                                ‫أ. حجز مواقع املصفوفة األحادية البعد:‬
                                ‫‪Dim a (n) as Type‬‬
                                                                                      ‫حيو:‬
               ‫‪ :Dim‬كنمة حمجوزة يف فيجوال نيسك اخاصار لمنمة (‪.)Dimension‬‬
                                                                 ‫‪ : a‬اريم املصفوفة.‬
                                                          ‫‪ : n‬عدد عناصر املصفوفة.‬
                                                      ‫‪ : Type‬نوا عناصر املصفوفة.‬

                                                 ‫ب. حجز مواقع املصفوفة ثنائية البعد:‬
                              ‫‪Dim a (n, m) as Type‬‬
                                                                                      ‫حيو:‬
               ‫‪ :Dim‬كنمة حمجوزة يف فيجوال نيسك اخاصار لمنمة (‪.)Dimension‬‬
                                                                 ‫‪ : a‬اريم املصفوفة.‬
                                                      ‫‪ : n‬عدد الصفوف يف املصفوفة.‬
                                                      ‫‪ : m‬عدد األعمدة يف املصفوفة.‬
                                                      ‫‪ : Type‬نوا عناصر املصفوفة.‬
                                                                                      ‫أمثنة:‬
‫.1‬    ‫‪Dim number(10) as integer‬‬
              ‫- حتج (11) مواةع لنمصفوفة (‪ )number‬من النوا الصحيح (‪.)integer‬‬

‫.2‬    ‫‪Dim cost(25) as single‬‬
                    ‫- حتج (52) موةع لنمصفوفة (‪ )cost‬من النوا المسري (‪.)single‬‬

‫.3‬    ‫‪Dim table(5,7) as string‬‬
                      ‫- حتج (53) موةع لنمصفوفة (‪ )table‬من النوا احلريف (‪.)string‬‬

‫.4‬    ‫)05(‪Dim x‬‬
                               ‫- حتج (15) موةع لنمصفوفة (‪ )x‬من النوا املر (‪.)variant‬‬

‫.5‬    ‫‪Dim V as single‬‬
                               ‫- اإلعح عن ماا ناريم (‪ )V‬من النوا المسري (‪.)single‬‬

‫نسخة جمانية للجميع‬                       ‫(25)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                             ‫قراءة وطباعة املصفوفة:‬
‫مثال‪ :‬أكاب نرنامو يبوم نبراءة (5 ) ةويم ونسوب ماوريوطها احلسواني ويطروع الفورق نوني كول‬
                                                      ‫ةيمة واملاوريط نارياخدام املصفوفات‬
                                                                                    ‫احلل:‬
                                                                  ‫ااج يف هذا املثال آلل:‬
                                                 ‫- مصفوفة (‪ )V‬عدد عناصرها (5).‬
                                                  ‫- ماا (‪ )sum‬حاصل مجع البيم.‬
                                              ‫- ماا (‪ )ave‬املاوريط احلساني لنبيم.‬
                                                                        ‫الكنامو املطنو :‬
           ‫()‪Private Sub Form_Load‬‬
                            ‫ر‬
           ‫مثال على ق اءة مصفوفة ‪Rem‬‬
           ‫‪Dim V(5) As Single‬‬
           ‫0 = !‪Sum‬‬
           ‫5 ‪For i = 1 to‬‬
               ‫)"أدخل البيمة"(‪V(i) = InputBox‬‬
               ‫)‪sum! = sum! + V(i‬‬
           ‫‪Next i‬‬
           ‫5 / !‪ave! = sum‬‬
           ‫5 ‪for i = 1 to‬‬
               ‫‪d = V(i) – ave‬‬
               ‫‪print V(i),d‬‬
           ‫‪Next i‬‬
           ‫‪End sub‬‬

                    ‫مثال‪ :‬أكاب نرنامو يبوم نبراءة أيام األريروا وطراعاها نرتتيب معموس‬
                                                                                    ‫احلل:‬
                                                                        ‫الكنامو املطنو :‬
           ‫()‪Private Sub Form_Load‬‬
           ‫ع بترتيب معكوس ‪Rem‬‬‫طباعة أيام األسبو‬
           ‫‪Dim days(7) As Single‬‬
           ‫"السرت" = )1(‪days‬‬
           ‫"األحد" = )2(‪days‬‬
           ‫"االثنني" = )3(‪days‬‬
           ‫"الثحثاء" = )4(‪days‬‬
           ‫"األرنعاء" = )5(‪days‬‬
           ‫"اخلميس" = )6(‪days‬‬


‫نسخة جمانية للجميع‬                       ‫(35)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

             ‫"اجلمعة" = )7(‪days‬‬
             ‫1- ‪for i = 7 to 1 step‬‬
                 ‫)‪print days(i‬‬
             ‫‪Next i‬‬
             ‫‪End sub‬‬
    ‫مثال‪ :‬أكاب نرنامو لبراءة أمساء وأرةام هواتف (11) أسخاص وطراعاها نرتتيب معموس‬
                                                                                                 ‫احلل:‬
                                                                                    ‫الكنامو املطنو :‬
             ‫()‪Private Sub Form_Load‬‬
                                  ‫ر‬
             ‫مثال على ق اءة وطباعة مصفوفة ‪Rem‬‬
             ‫‪Dim n(5), p(5) As String‬‬
             ‫5 ‪for i = 1 to‬‬
                 ‫)"أدخل االريم"(‪n(i) = InputBox‬‬
                 ‫)"أدخل الرةم"(‪p(i) = InputBox‬‬
             ‫‪Next i‬‬
             ‫5 ‪for i = 1 to‬‬
                 ‫)‪print n(i), p(i‬‬
             ‫‪Next i‬‬
             ‫‪End sub‬‬
 ‫مثال‪ :‬أكاب نرنامو يبوم نبراءة عدد الطنرة ععهد دراريي حسب السنة الدراريوية والاخصوص‬
‫ثووم يطرووع هووذه الريانووات يف جوودول مناريووب ونسووب عوودد الطنرووة يف كوول ريوونة دراريووية والعوودد‬
                    ‫اإلمجالي لنطنرة ناملعهد عنما نأ نظام املعهد 3 رينوات دراريية و4 ختصصات‬
                                                                                                 ‫احلل:‬
                                  ‫نداية لنا أ ناصور سمل اجلدول املراد طراعاه كالاالي:‬
  ‫اإلجمالي‬        ‫تخصص 4‬            ‫تخصص 3‬            ‫تخصص 2‬           ‫تخصص 1‬              ‫ر‬
                                                                                        ‫السنة الد اسية‬
 ‫)1( ‪Sum‬‬            ‫)1,1(‪St‬‬          ‫)2,1(‪St‬‬           ‫)3,1(‪St‬‬           ‫)4,1(‪St‬‬          ‫سنة أولى‬
 ‫)2( ‪Sum‬‬            ‫)1,2(‪St‬‬          ‫)2,2(‪St‬‬           ‫)3,2(‪St‬‬           ‫)4,2(‪St‬‬          ‫سنة ثانية‬
 ‫)3( ‪Sum‬‬            ‫)1,3(‪St‬‬          ‫)2,3(‪St‬‬           ‫)3,3(‪St‬‬           ‫)4,3(‪St‬‬          ‫سنة ثالثة‬
   ‫‪Total‬‬         ‫إجمالي عدد الطلبة‬
        ‫ااج آلل مصفوفة رئيسية (‪ )st‬لاخ ين عدد الطنرة حسب السنة الدراريية والاخصص.‬                  ‫-‬
                       ‫ااج آلل مصفوفة (‪ )sum‬لاخ ين عدد الطح حسب السنة الدراريية.‬                   ‫-‬
                                         ‫ااج آلل ماا (‪ )Total‬حلسا آلمجالي عدد الطنرة.‬              ‫-‬




‫نسخة جمانية للجميع‬                              ‫(45)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                           ‫الكنامو املطنو :‬
       ‫()‪Private Sub Form_Load‬‬
       ‫تمت كتابة هذه البرنامج في العام 8112 ‪Rem‬‬
       ‫‪Dim st(3,4), sum(3), Total As Integer‬‬
       ‫يف هذه احلنبة رييام ةراءة مصفوفة الطنرة وحسا آلمجالي الطنرة يف كل رينة ‪Rem‬‬
       ‫3 ‪for i = 1 to‬‬
           ‫0 = )‪sum(i‬‬
           ‫4 ‪for j = 1 to‬‬
                       ‫)"أدخل الطح حسب السنة والاخصص"(‪st(i,j) = InputBox‬‬
                       ‫)‪sum(i) = sum(i) + st(i,j‬‬
           ‫‪Next j‬‬
       ‫‪Next i‬‬
       ‫يف هذا اجل ء من الكنامو رييام حسا آلمجالي الطنرة ناملعهد ‪Rem‬‬
       ‫0 = ‪Total‬‬
       ‫3 ‪for i = 1 to‬‬
               ‫)‪Total = Total + sum(i‬‬
       ‫‪Next i‬‬
       ‫يف هذا اجل ء من الكنامو رييام طراعة الريانات يف سمل جدول ‪Rem‬‬
       ‫"ختصص 1","ختصص 2","ختصص 3","ختصص 4","اإلمجالي" ‪Print‬‬
       ‫3 ‪for i = 1 to‬‬
           ‫,)‪Print sum(i‬‬
           ‫4 ‪for j = 1 to‬‬
                       ‫,)‪Print st(i,j‬‬
           ‫‪Next j‬‬
           ‫‪Print‬‬
       ‫‪Next i‬‬
           ‫"آلمجالي الطنرة" ,‪Print Total‬‬
       ‫‪End sub‬‬
                               ‫عند اخارار الكنامو نبيم افرتاضية كانت نافذة النواتو كالاالي:‬




‫مثال‪ : ‬أكاب نرنوامو لاخو ين جودول االماحانوات وطراعاوه ألريوروا واحود عنوى سومل مصوفوفة‬
                                                          ‫ييو يام آلدخال الريانات كالاالي:‬
              ‫االماحا الثاني‬                   ‫االماحا األول‬            ‫اليوم‬
‫ثم طراعة هذا اجلدول نلمل مناريب‬


‫نسخة جمانية للجميع‬                         ‫(55)‬                ‫إعداد/ م. املهدي احممد جربيل‬
                      ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                                       ‫احلل:‬
              ‫ميمن متثيل جدول االماحانات وتوزيع رةم العمود والصف عنيه كالاالي:‬
                            ‫االمتحان الثاني‬     ‫االمتحان األول‬       ‫اليوم‬
                                ‫)1,1(‬               ‫)2,1(‬           ‫)3,1(‬
                                ‫)1,2(‬               ‫)2,2(‬           ‫)3,2(‬
                                ‫)1,3(‬               ‫)2,3(‬           ‫)3,3(‬
                                ‫)1,4(‬               ‫)2,4(‬           ‫)3,4(‬
                                ‫)1,5(‬               ‫)2,5(‬           ‫)3,5(‬
                                ‫)1,6(‬               ‫)2,6(‬           ‫)3,6(‬
                                                                             ‫الكنامو املطنو :‬
      ‫()‪Private Sub Form_Load‬‬
      ‫هذا البرنامج لتخزين جدول االمتحانات ‪Rem‬‬
      ‫‪Dim Table(6,3) As String‬‬
      ‫يف هذه احلنبة رييام ةراءة جدول االماحانات ‪Rem‬‬
      ‫6 ‪for i = 1 to‬‬
              ‫)"أدخل يوم االماحا "(‪Table(i,3) = InputBox‬‬
              ‫)"أدخل االماحا األول"(‪Table(i,2) = InputBox‬‬
              ‫)"أدخل االماحا الثاني"(‪Table(i,1) = InputBox‬‬
      ‫‪Next i‬‬
      ‫يف هذه احلنبة رييام طراعة جدول االماحانات ‪Rem‬‬
      ‫"جدول االماحانات" ‪Print‬‬
      ‫"اليوم"," األول"," الثاني" ‪Print‬‬
      ‫6 ‪For i = 1 to‬‬
             ‫3 ‪For j = 1 to‬‬
                       ‫,)‪Print Table(i,j‬‬
             ‫‪Next j‬‬
             ‫‪Print‬‬
      ‫‪Next i‬‬
      ‫‪End sub‬‬
                                ‫عند تنفيذ الكنامو واخاراره نرعض البيم تظهر النافذة الاالية:‬




‫نسخة جمانية للجميع‬                            ‫(95)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                       ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
‫مثال‪ : ‬أكاب نرنوامو لبوراءة أمسواء ودرجوات علورة طوح يف موادة دراريوية واحود ويطروع اريوم‬
                                 ‫ودرجة الطالب املاحصل عنى أعنى درجة نارياخدام املصفوفات‬
                                                                                      ‫احلل:‬
                                                                           ‫الكنامو املطنو :‬
       ‫()‪Private Sub Form_Load‬‬
       ‫‪Dim St(10) As String‬‬
       ‫‪Dim G(10) As Single‬‬
                                 ‫ر‬                ‫هذا الجز‬
       ‫ء من البرنامج لق اءة أسماء ودرجات الطالب ‪Rem‬‬
       ‫01 ‪for i = 1 to‬‬
               ‫)"أدخل اريم الطالب"(‪St(i) = InputBox‬‬
               ‫)"أدخل الدرجة"(‪G(i) = InputBox‬‬
       ‫‪Next i‬‬
       ‫هذا اجل ء من الكنامو لفحص أعنى درجة طالب ‪Rem‬‬
       ‫0 = !‪Max‬‬
       ‫01 ‪For i = 1 to‬‬
              ‫‪If (G(i) > Max!) then‬‬
                      ‫)‪Max! = G(i‬‬
                      ‫)‪N$ = St(i‬‬
              ‫‪End if‬‬
       ‫‪Next i‬‬
                                                                    ‫هذا الجز‬
       ‫ء من البرنامج لطباعة أسماء الطالب والدرجات وصاحب أعلى درجة ‪Rem‬‬
       ‫"االريم","الدرجة" ‪Print‬‬
       ‫01 ‪For i = 1 to‬‬
               ‫)‪Print G(i), St(i‬‬
       ‫‪Next i‬‬
       ‫‪Print‬‬
       ‫"الطالب األعنى درجة" ,$‪Print Max, N‬‬
       ‫‪End sub‬‬
                                 ‫عند تنفيذ الكنامو واخاراره نرعض البيم تظهر النافذة الاالية:‬




‫نسخة جمانية للجميع‬                        ‫(75)‬               ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
‫مثال‪ :‬آلذا كانت املصفوفة )‪ Q(k‬متثل عدد البطوع مون الصونف رةوم ‪ k‬واملصوفوفة )‪ P(k‬تورني‬
‫ريعر البطعة الواحدة من الصنف ‪ k‬أكاب نرنامو يبرأ عدد البطع اليت د نيعها مون كول صونف‬
‫وريعر البطعة ثم يطرع الريانات املدخنة وجمموا املريعات نافرتام أ عدد األصناف اليت د نيعهوا‬
                                                                                         ‫هو (21)‬
                                                                                            ‫احلل:‬
                                                    ‫هذا الكنامو ج ء من فاتورة جتارية كالاالي:‬
                ‫سعر الكمية‬      ‫سعر القطعة‬    ‫عدد القطع (الكمية)‬     ‫رقم متسلسل‬
                 ‫)‪PQ(k‬‬            ‫)‪P(k‬‬              ‫)‪Q(k‬‬                 ‫(‪)k‬‬
                    ‫:‬                ‫:‬                 ‫:‬                  ‫:‬
                 ‫‪Total‬‬         ‫اإلجمالي‬

                             ‫ريعر الممية = عدد البطع × ريعر البطعة‬
                                                                                  ‫الكنامو املطنو :‬
       ‫()‪Private Sub Form_Load‬‬
                   ‫ر‬
       ‫هذا البرنامج يمثل فاتو ة تجارية ‪Rem‬‬
       ‫‪Dim P(12), Q(12), PQ(12), Total As Single‬‬
       ‫21 ‪for k = 1 to‬‬
              ‫)"أدخل كمية الصنف"(‪Q(k) = InputBox‬‬
               ‫)"أدخل ريعر البطعة"(‪P(k) = InputBox‬‬
               ‫)‪PQ(k) = Q(k) * P(k‬‬
       ‫‪Next k‬‬
       ‫هذا اجل ء من الكنامو حلسا آلمجالي الفاتورة ‪Rem‬‬
       ‫0 = ‪Total‬‬
       ‫21 ‪For k = 1 to‬‬
               ‫)‪Total = Total + PQ(k‬‬
       ‫‪Next k‬‬
       ‫"ريعر البطعة" ,"الممية" ,"ريعر الممية" ‪Print‬‬
       ‫21 ‪For k = 1 to‬‬
               ‫)‪Print PQ(k), Q(k), P(k‬‬
       ‫‪Next k‬‬
       ‫‪Print‬‬
       ‫"آلمجالي الفاتورة" ,‪Print Total‬‬
       ‫‪End sub‬‬




‫نسخة جمانية للجميع‬                           ‫(85)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                           ‫الباب الثامن: الربامج الفرعية‬
‫تهدف الكامو الفرعيوة آلل تبسويم الكنوامو الرئيسوي آلل أجو اء عودة هوذا الابسويم لعودة‬
‫أريرا أهمها ترسيط العمل من حيو ريهولة الكجموة واالخاروار والاعوديل وآلممانيوة االريوافادة مون‬
                                                      ‫الكنامو الفرعي يف أكثر من ملروا مسابرح.‬
                       ‫ميمن تبسيم الكامو الفرعية يف لاة فيجوال نيسك آلل ثحثة أنواا:‬
                                                  ‫اإلجراء الفرعي (‪.)Sub procedure‬‬                 ‫1.‬
                                              ‫آلجراء الدالة (‪.)Function procedure‬‬                 ‫2.‬
                                           ‫آلجراء اخلاصية (‪.)Property procedure‬‬                   ‫3.‬

                                             ‫أوال: األجراء الفرعي (‪-:)Sub procedure‬‬
‫وهووو أحوود أهووم أنووواا الووكامو الفرعيووة وميمنووه أ يسووابرل ةيمووة أو أكثوور موون نرنووامو‬
             ‫االريادعاء وآلعادة ةيمة أو أكثر آلل نرنامو االريادعاء وميانك اللمل العام الاالي:‬
                               ‫)‪Sub name (V1,V2,…,Vn‬‬
                               ‫مجنة أو أكثر‬
                               ‫‪End sub‬‬
                                                                                                  ‫حيو:‬
                                             ‫‪ : Sub‬كنمة حمجوزة تل آلل نداية الكنامو الفرعي.‬
                                                                       ‫‪ : name‬اريم اإلجراء الفرعي.‬
‫)‪ : (V1,V2,…,Vn‬مووواا ات اإلدخوووال واإلخوووراج مووون وآلل الكنوووامو الفرعوووي وتسووومى أيضوووا‬
                                                                       ‫نالرارامرتات (‪.)Parameters‬‬
‫مثووال‪ :‬أكاووب نرنووامو فرعووي حلسووا مسوواحة مسوواطيل واكاووب نرنووامو االريووادعاء (الكنووامو‬
                                                                                              ‫الرئيسي)‬
                                                                                                  ‫احلل:‬
‫مدخحت هذا الكنامو الفرعي هي الطول (‪ )L‬والعرم (‪ )W‬وخمرجاته هي املساحة (‪.)A‬‬
                                                                             ‫الكنامو الفرعي املطنو :‬
                               ‫)!‪Sub Area (L!,W!,A‬‬
                                 ‫!‪A! = W! * L‬‬
                               ‫‪End sub‬‬
                                     ‫ميمن متثيل هذا الكنامو الفرعي كما يف اللمل الاالي:‬
                          ‫‪L‬‬
                                              ‫‪Area‬‬                   ‫‪A‬‬
                          ‫‪W‬‬


‫نسخة جمانية للجميع‬                               ‫(65)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                             ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                                   ‫نرنامو االريادعاء املطنو :‬
         ‫()‪Private Sub Form_Load‬‬
         ‫هذا البرنامج يمثل البرنامج الرئيسي ‪Rem‬‬
         ‫)"أدخل طول املساطيل"(‪L! = InputBox‬‬
         ‫)"أدخل عرم املساطيل"(‪W! = InputBox‬‬
         ‫)!‪Call Area (L!,W!,A‬‬
         ‫"مساحة املساطيل" = ‪Label1.caption‬‬
         ‫!‪Text1.text = A‬‬
         ‫‪End sub‬‬
                                                                                           ‫مالحظات هامة:‬
‫- مسووي نرنووامو االريووادعاء نهووذا االريووم ألنووه ناوووي عنووى العرووارة () والوويت تعموول عنووى تنفيووذ‬
  ‫اإلجراء الفرعي املرني امسه أمامها كما يسمى هذا الكنامو أيضا نالكنامو الرئيسي.‬
‫- يماب الكنامو الفرعي يف نافذة حترير الكنامو فوق أو حتت الكنوامو الرئيسوي وال يوؤثر‬
                                                     ‫ذلك يف تنفيذ اإلجراء وال الكنامو الرئيسي.‬
‫مثال‪ :‬أكاب آلجراء فرعي حلسا الضوريرة (‪ )tax‬وصوايف الودخل (‪ )net‬نوافرتام أ الضوريرة‬
                              ‫تعادل (32%) من آلمجالي الدخل (‪ )income‬واكاب الكنامو الرئيسي‬
                                                                                                              ‫احلل:‬
‫نفرتم أ اريم اإلجراء (‪ )Taxnet‬وميمن متثيل هذا الكنامو الفرعي كما يف اللمل الاالي:‬

                                                                             ‫‪tax‬‬
                        ‫‪income‬‬                     ‫‪Taxnet‬‬
                                                                             ‫‪net‬‬
                                                                                    ‫الكنامو الفرعي املطنو :‬
                 ‫)!‪Sub Taxnet (income!, tax!, net‬‬
                    ‫32.0 * !‪tax! = income‬‬
                    ‫!‪net! = income! – tax‬‬
                 ‫‪End sub‬‬
                                                                                             ‫الكنامو الرئيسي:‬
         ‫()‪Private Sub Form_Load‬‬
         ‫هذا البرنامج يمثل البرنامج الرئيسي ‪Rem‬‬
         ‫)"أدخل ةيمة الدخل"(‪income! = InputBox‬‬
         ‫)!‪Call Taxnet (income!, tax!, net‬‬
         ‫!‪Text1.text = income‬‬
         ‫!‪Text2.text = tax‬‬
         ‫!‪Text3.text = net‬‬
         ‫‪End sub‬‬


‫نسخة جمانية للجميع‬                                   ‫(19)‬                    ‫إعداد/ م. املهدي احممد جربيل‬
                      ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                        ‫عند تنفيذ الكنامو تظهر النافذة الاالية:‬




‫مثال‪ :‬أكاب الكنامو الفرعي (‪ )count‬الذي يسابرل ةيمة (‪ )k‬ثم يطرع األعداد من (1 آلل ‪)k‬‬
                                                                     ‫واكاب نرنامو االريادعاء‬
                                                                                         ‫احلل:‬
                                                                      ‫الكنامو الفرعي املطنو :‬
            ‫)%‪Sub Count(k‬‬
               ‫%‪For i = 1 to k‬‬
                    ‫;‪Print i‬‬
               ‫‪Next i‬‬
            ‫‪End sub‬‬
                                                                             ‫الكنامو الرئيسي:‬
            ‫()‪Private Sub Form_Load‬‬
            ‫هذا البرنامج يمثل البرنامج الرئيسي ‪Rem‬‬
            ‫)"أدخل عدد صحيح"(‪k% = InputBox‬‬
            ‫)%‪Call Count (k‬‬
            ‫‪End sub‬‬

                                                            ‫ثانيا: الدالة (‪-: )Function‬‬
‫نرنامو الدالة يسانم ةيمة أو أكثر من الكنامو الرئيسي ولمنه يعيد ةيمة واحدة فبط يف‬
                                                     ‫امسها ومتانك الدالة اللمل العام الاالي:‬
                     ‫‪Function name (V1,V2,…,Vn) as Type‬‬
                     ‫مجنة أو أكثر‬
                     ‫‪End Function‬‬
                                                                                         ‫حيو:‬
                                           ‫‪ : Function‬كنمة حمجوزة تل آلل نداية الدالة.‬
                                                                          ‫‪ : name‬اريم الدالة.‬
                               ‫)‪ : (V1,V2,…,Vn‬ماا ات مدخنة لندالة (نارامرتات الدالة).‬
    ‫‪ :Type‬نوا الدالة (… ,‪ )Integer, Single‬وياحدد ننوا البيمة الوحيدة اليت تعيدها الدالة.‬


‫نسخة جمانية للجميع‬                        ‫(19)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                                                         ‫مالحظات:‬
        ‫‪ ‬يف حالة ى يام حتديد نوا لندالة فإ نرنامو فيجوال نيسك رييعاكها من النوا املر .‬
                                 ‫‪ ‬اإلجراء الفرعي ليس له نوا ألنه يعيد أكثر من ةيمة أحيانا.‬
‫مثال‪ : ‬أكاب الدالة اليت تبوم يسا عدد الدةائق يف عدد مون األيوام موع العنوم أ عودد األيوام‬
                                                                              ‫يدخل يف نرنامو رئيسي‬
                                                                                                   ‫احلل:‬
                                                               ‫نفرم اريم لندالة وليمن (‪.)MDay‬‬
                                                                            ‫نرنامو الدالة (‪:)MDay‬‬
                               ‫‪Function MDay(x!) as single‬‬
                                 ‫06 * 42 * !‪MDay = x‬‬
                               ‫‪End Function‬‬
                                                                                    ‫الكنامو الرئيسي:‬
                          ‫()‪Private Sub Form_Load‬‬
                          ‫هذا البرنامج يمثل البرنامج الرئيسي ‪Rem‬‬
                          ‫)"أدخل عدد األيام"(‪M! = InputBox‬‬
                          ‫"عدد الدةائق" ,)!‪Print MDay (M‬‬
                          ‫‪End sub‬‬
                                                                                           ‫مالحظة:‬
‫نححووظ أنووه د اريووادعاء الدالووة نوواملاا (‪ )M‬والووذي يباننووه املوواا (‪ )x‬يف الدالووة ويعاووك‬
‫املاا (‪ )x‬ماا داخني معرف يف داخل الدالة (‪ )MDay‬فبط حيو تنسخ ةيموة املواا (‪ )M‬آلل‬
                                                      ‫املاا (‪ )x‬وتنفذ الدالة وتعيد ةيماها يف آلمسها.‬
‫مثال‪ :‬أكاب الدالة (2‪ )Max‬اليت توجد أكك عدد من نني عددين وارياعمنها يف آلجياد أكك‬
                                                                                 ‫عدد من نني 5 أعداد‬
                                                                                                   ‫احلل:‬
                                                                             ‫نرنامو الدالة (2‪:)Max‬‬
                          ‫)!‪Function Max2(x!, y‬‬
                                ‫‪If (x! > y!) then‬‬
                                       ‫!‪Max2 = x‬‬
                                ‫‪Else‬‬
                                       ‫!‪Max2 = y‬‬
                                ‫‪End if‬‬
                          ‫‪End Function‬‬




‫نسخة جمانية للجميع‬                              ‫(29)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                                                       ‫نرنامو الرئيسي:‬
                          ‫()‪Private Sub Form_Load‬‬
                          ‫هذا البرنامج يمثل البرنامج الرئيسي ‪Rem‬‬
                          ‫0 = !‪m‬‬
                          ‫5 ‪for k = 1 to‬‬
                               ‫)"أدخل ةيمة عددية"(‪a! = InputBox‬‬
                               ‫)!‪m! = Max2(m!, a‬‬
                          ‫‪Next k‬‬
                          ‫!‪Text1.text = m‬‬
                          ‫‪End sub‬‬
                                               ‫مثال‪ :‬هل ميمن كاانة املثال ‪ ‬نارياخدام الدالة‬
                                                                                                     ‫احلل:‬
‫نعم أل اإلجراء الفرعي املساخدم يعيد ةيمة واحدة فبط وهذا ال ياعارم مع الدالوة الويت‬
                                                                   ‫تعيد ةيمة واحدة فبط هي األخر..‬
                                                                 ‫وميمن كاانة نرنامو الدالة الاالي:‬
                          ‫)!‪Function Area(L!, W‬‬
                                ‫!‪Area = L! * W‬‬
                          ‫‪End Function‬‬

                                        ‫مثال ‪ :‬هل ميمن كاانة املثال ‪ ‬نارياخدام الدالة وملاذا‬
                                                                                                     ‫احلل:‬
‫ال أل الكنامو الفرعي املساخدم من نوا آلجراء يعيد ةيماني ونالاالي فإنه ال ميمن كاانة‬
                                                                                        ‫دالة تبوم نذلك.‬

                                                      ‫الدوال اجلاهزة (الدوال الداخلية):-‬
 ‫حتاوووي لاووة فيجوووال نيسووك العديوود موون الوودوال اجلوواه ة الوويت ميموون اريووادعا ها نوودو أ‬
‫يماب نرناجمها الفرعي أل هذا الكنامو جاه ضمن لاوة نيسوك وميمون تبسويم هوذه الودوال‬
                                                                                                      ‫آلل:‬
                                                                               ‫أوال: الدوال الرياضية:‬
                                                                                ‫ومن هذه الدوال:‬
                                   ‫- دالة اجلذر الرتنيعي (‪ )Sqr‬تعيد اجلذر الرتنيعي لعدد مثل:‬
‫2 = )4( ‪Sqr‬‬
                 ‫- دالة النوغاريام الطريعي (‪ )Log‬تعيد النوغاريام الطريعي لعدد مثل:‬
‫585203.2 = )01( ‪Log‬‬



‫نسخة جمانية للجميع‬                               ‫(39)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                           ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                             ‫- دالة البيمة املطنبة (‪ )abs‬حتذف اإلسارة السالرة من العدد مثل:‬
‫6 = )6-( ‪Abs‬‬
‫9 = )9( ‪Abs‬‬
‫- دالووة جيووب ال اويووة (‪ )sin‬تعيوود جيووب ال اويووة وجيووب أ تمووو ال اويووة املووراد حسووا جيرهووا‬
                                                                 ‫نالابدير الدائري (‪ )Radians‬مثل:‬
‫5.0 = )081/95141.3*03( ‪Sin‬‬
 ‫- دالووة اإلسووارة (‪ )sgn‬تعيوود البيمووة (1) آلذا كانووت البيمووة موجرووة والبيمووة ( -1) آلذا كووا‬
                                                                                     ‫البيمة ريالرة مثل:‬
‫1- = )01-( ‪Sgn‬‬
‫1 = )3( ‪Sgn‬‬
‫- دالووة حووذف اجل و ء المسووري موون العوودد (‪ )int‬أو (‪ )fix‬تعموول هووذه الدالووة عنووى آللاوواء اجل و ء‬
                                                                    ‫المسري يذفه من البيمة مثل:‬
‫4 = )78.4( ‪Int‬‬
‫5 = )89.5( ‪Fix‬‬
                                                                      ‫ثانيا: دوال السالسل احلرفية:‬
                                                                                ‫ومن هذه الدوال:‬
                     ‫- دالة عدد الرموز يف رينسنة حرفية (‪ )Len‬تعيد طول رينسنة حرفية مثل:‬
‫4 = )"حممد"( ‪Len‬‬
‫7 = )"‪Len ("Ali Ali‬‬
    ‫- دالة الاحويل من رةم آلل نضيد (‪ )Str‬تعمل عنى حتويل ةيمة عددية آلل ةيمة حرفية مثل:‬
‫"54" = )54( ‪Str‬‬
       ‫- دالة الاحويل من نضيد آلل رةم (‪ )Val‬تعمل عنى حتويل نضيد آلل ةيمة عددية مثل:‬
‫5.3 = )"5.3"( ‪Val‬‬
‫68- = )"68-"( ‪Val‬‬
                                                                  ‫ثالثا: دوال إحصائية:‬
                                                                                 ‫من هذه الدوال:‬
              ‫- دالة املاوريط احلساني (‪ )average‬تعيد املاوريط احلساني جملموعة ةيم مثل:‬
‫5 = )8,6,4,2( ‪Average‬‬
‫- دالة اال راف املعياري (‪ )StdDev‬تعيد ةيمة اال راف املعياري جملموعة من ةيم عددية مثل:‬
‫21.3 = )01,8,6,4,2( ‪StdDev‬‬
                      ‫- دالة البيمة العلوائية (‪ )Rnd‬تعطي ةيمة علوائية غ ماوةعة مثل:‬
‫5745507.0 = )001( ‪Rnd‬‬




‫نسخة جمانية للجميع‬                                ‫(49)‬                 ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                          ‫رابعا: دوال الوقت والتاريخ:‬
                                                                  ‫من هذه الدوال:‬
                                   ‫- الدالة (‪ )Time‬تعيد الوةت احلالي جلهاز احلاريو .‬
      ‫- الدالة (‪ )Timer‬تعيد عدد الثواني منذ مناصف النيل (11:21 ص) وحاى هذه النحظة.‬
                                   ‫- الدالة (‪ )Date‬تعيد الااريخ احلالي جلهاز احلاريو .‬




‫نسخة جمانية للجميع‬                     ‫(59)‬              ‫إعداد/ م. املهدي احممد جربيل‬
                         ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                      ‫الباب التاسع: أدوات بيسك املرئي‬
‫ناوي صندوق األدوات يف لاة فيجوال نيسك عنى جمموعة كور ة مون األدوات الويت تفيود‬
‫يف تصوميم واجهوات ماميو ة ريوهنة االريواخدام والانفيووذ خاصوة ناريواخدام الفووأرة وهوي مون الطوورق‬
‫‪Event‬‬      ‫‪driven‬‬      ‫وتسوووومى نالكجمووووة املوجهووووة ناحلوووودة (‬    ‫احلديثووووة يف نرجمووووة احلاريووووو‬
                                                                                     ‫‪.)programming‬‬
                                                                        ‫ومن أهم هذه األدوات:‬
                                                                 ‫أ. زر األمر (‪:)Command button‬‬
                 ‫يساخدم هذا ال ر لاممني املساخدم من آلصدار أوامر أثناء تنفيذ الكنامو.‬
     ‫مثال‪ :‬أكاب نرنامو لاوزيع عائد من ملروا اةاصادي عنى ثحثة سركاء ننسرة 3: 2: 1‬
                                                                                                      ‫احلل:‬
                                                                           ‫أوال: تصميم نافذة الكنامو:‬




              ‫ثم ومن خحل مرنع اخلصائص نبوم نضرط كائنات النافذة كما يف النافذة الاالية:‬




‫نسخة جمانية للجميع‬                               ‫(99)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                            ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                               ‫ننبر عنى ال ر املسمى (احسب) نبرا م دوجا ونماب الكنامو الاالي:‬
                           ‫)(‪Private Sub Command1_Click‬‬
                           ‫هذا البرنامج مكتوب في الزر احسب ‪Rem‬‬
                            ‫‪income! = Text1.text‬‬
                            ‫2 / !‪Text2.text = income‬‬
                            ‫3 / !‪Text3.text = income‬‬
                            ‫6 / !‪Text4.text = income‬‬
                            ‫‪End sub‬‬
                                           ‫ثم ننبر عنى ال ر (توةف) نبرا م دوجا ونماب العرارة:‬
                                               ‫‪End‬‬
             ‫عند تنفيذ الكنامو واخارار وآلدخال البيمة 119 كعائد لنملروا تظهر النافذة الاالية:‬




                                                                ‫زر االختيار (‪:)Option Button‬‬
‫يساخدم هذا ال ر لعرم أكثر من خيوار أثنواء الانفيوذ فاظهور نبطوة ريوواء عنوى هوذا الو ر‬
                                                      ‫وذلك يعين أنه د حتديد اخليار املبانل هلذا ال ر.‬
‫مثوووال‪ :‬أكاوووب نرنوووامو يعطوووي نووواتو العمنيوووات احلسوووانية األرنعوووة (+ -× /) ألي عوووددين يوووام‬
                                                                                                 ‫آلدخاهلما‬
                                                                                                    ‫احلل:‬
                                                                                    ‫أوال: تصميم النافذة:‬




‫نسخة جمانية للجميع‬                                ‫(79)‬                  ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                                                   :)‫نماب الكنامو الاالي يف ال ر (احسب‬
                     Private Sub Command1_Click()
                     Rem ‫هذا البرنامج مكتوب في الزر احسب‬
                     Dim V1, V2, V3 as Single
                     V1 = Val (Text1.text)
                     V2 = Val (Text2.text)
                     If (Option1.value) then
                          V3 = V1 + V2
                     Else
                     If (Option2.value) then
                          V3 = V1 - V2
                     Else
                     If (Option3.value) then
                          V3 = V1 * V2
                     Else
                     If (Option4.value) then
                          V3 = V1 / V2
                     End if
                     End if
                     End if
                     End if
                     Text3.text = str(V3)
                     End sub
                              :‫عند تنفيذ الكنامو واخاراره نرعض البيم تظهر النافذة الاالية‬




‫نسخة جمانية للجميع‬                      )98(               ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬

                                                          ‫ثالثا: مربع القائمة (‪:)List Box‬‬
‫تساخدم هذه األداة عند الاعامل مع البوائم وخاصة آلذا طنب من املساخدم اخايوار ننود واحود‬
                                                                              ‫من جمموعة خيارات.‬
‫ييو تظهر مساحة الرند نامليل املرنع عجورد‬        ‫مثال‪ :‬أكاب نرنامو يعرم ةائمة نرعض الرندا‬
                                                                               ‫النبر عنى اريم الرند‬
                                                                                              ‫احلل:‬
                                                                               ‫أوال تصميم النافذة:‬




‫ننبر عنى نافذة الكنامو (يف ج ء خالي) نبرا م دوجا ونماب‬            ‫ثانيا: لاعروة البائمة نأمساء الرندا‬
                                                                                    ‫الكنامو الاالي:‬
                       ‫()‪Private Sub Form_Load‬‬
                       ‫هذا البرنامج لتعبئة القائمة بالبلدان ‪Rem‬‬
                       ‫)"أفاانساا "( ‪List1.additem‬‬
                       ‫)"تووووووووووونووووس"( ‪List1.additem‬‬
                       ‫)"كنوووووووووووودا"( ‪List1.additem‬‬
                       ‫)"مصووووووووووووووور"( ‪List1.additem‬‬
                       ‫‪End sub‬‬
                        ‫نالنبر امل دوج عنى البائمة املرريومة عنى النافذة ونماب الكنامو الاالي:‬
                       ‫()‪Private Sub List1_Click‬‬
                       ‫‪Select case List1.listindex‬‬
                       ‫0 ‪Case‬‬
                            ‫000063 = ‪Text1.text‬‬
                       ‫1 ‪Case‬‬
                            ‫87336 = ‪Text1.text‬‬
                       ‫2 ‪Case‬‬
                            ‫3301383 = ‪Text1.text‬‬
                       ‫3 ‪Case‬‬
                            ‫052363 = ‪Text1.text‬‬
                       ‫‪End select‬‬
                       ‫‪End Sub‬‬


‫نسخة جمانية للجميع‬                            ‫(69)‬                ‫إعداد/ م. املهدي احممد جربيل‬
                        ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬


                                                           ‫وعند تنفيذ الكنامو تظهر النافذة الاالية:‬




                                                      ‫رابعا: مربع السرد(‪:)Combo Box‬‬
‫وهو سريه جدا عرنع البائمة آلال أنه نااج ريطر واحد فبط عنى نافذة الكنامو ويسواخدم‬
                                                    ‫يف حالة عدم وجود مساحة كافية عنى النافذة.‬
‫مثال ‪ :‬أكاب نرنامو نارياخدام مرنع السرد ناوي عنى اريوم الرنود نالناوة العرنيوة وعنود اخايوار‬
                             ‫الرند يعرم امسها نالناة اإلحني ية يف مرنع نص موجود عنى النافذة‬
                                                                                                      ‫احلل:‬
                                                                     ‫أوال نبوم ناصميم نافذة الكنامو:‬




                                            ‫ننبوور عنووى‬    ‫ثانيووا: لاعروووة مرنووع السوورد نأمسوواء الرنوودا‬
                                            ‫نافذة الكنامو (يف جو ء خوالي) نبورا م دوجوا ونماوب‬
                                                                                           ‫الكنامو الاالي:‬
                        ‫()‪Private Sub Form_Load‬‬
                        ‫هذا البرنامج لتعبئة القائمة بالبلدان ‪Rem‬‬
                        ‫)"لوووويريوووووووا"( ‪Combo1.additem‬‬
                        ‫)"توووووونووووس"( ‪Combo1.additem‬‬
                        ‫)"مصووووووووور"( ‪Combo1.additem‬‬
                        ‫)"ريوريوووووووا"( ‪Combo1.additem‬‬
                        ‫)"األرد "( ‪Combo1.additem‬‬
                        ‫‪End sub‬‬

‫نسخة جمانية للجميع‬                             ‫(17)‬                   ‫إعداد/ م. املهدي احممد جربيل‬
                     ‫برجمة وتطبيقات احلاسوب بلغة بيسك املرئي‬
                 ‫نالنبر امل دوج عنى مرنع السرد املرريوم عنى النافذة ونماب الكنامو الاالي:‬
                     ‫()‪Private Sub Combo1_Click‬‬
                     ‫‪Select case Combo1.listindex‬‬
                     ‫0 ‪Case‬‬
                          ‫"‪Text1.text = "Libya‬‬
                     ‫1 ‪Case‬‬
                          ‫"‪Text1.text = "Tunisia‬‬
                     ‫2 ‪Case‬‬
                          ‫"‪Text1.text = "Egypt‬‬
                     ‫3 ‪Case‬‬
                          ‫"‪Text1.text = "Syria‬‬
                     ‫4 ‪Case‬‬
                          ‫"‪Text1.text = "Jordan‬‬
                     ‫‪End select‬‬
                     ‫‪End Sub‬‬



                                                  ‫وعند تنفيذ الكنامو تظهر النافذة الاالية:‬




                                                                 ‫خالصة الباب التاسع:‬
                                                  ‫د الاعرم يف هذا الرا ل دوات الاالية:‬
                      ‫الوظيفة‬                                    ‫اسم القطعة‬           ‫ر.م‬
                     ‫‪ Command Button‬إصدار أمر من المستخدم إلى البرنامج.‬                ‫1‬
     ‫ر‬
   ‫‪ Option Button‬منح فرصة اختيار الخيار المناسب من بين مجموعة خيا ات.‬                  ‫2‬
              ‫ع عناصر.‬‫‪ List Box‬عرض قائمة دفعة واحدة تحتوي مجمو‬                         ‫3‬
                           ‫‪ Combo Box‬عرض قائمة عنصر تلو اآلخر.‬                         ‫4‬
                     ‫‪ Text Box‬عرض نص أو نواتج برنامج في مربع.‬                          ‫5‬
                      ‫‪ Label‬عرض وصف ما على نافذة البرنامج.‬                             ‫9‬




‫نسخة جمانية للجميع‬                     ‫(17)‬               ‫إعداد/ م. املهدي احممد جربيل‬

				
DOCUMENT INFO
Categories:
Tags:
Stats:
views:87
posted:9/10/2012
language:Arabic
pages:71