المحاضرة الثالثة- نظم معلومات محاسبية 2024
المحاضرة الثالثة- نظم معلومات محاسبية 2024
ما هي البرمجة؟
هي كتابة تعليمات وأوامر لجهاز الكمبيوتر أو أي جهاز آخر ،لتوجيهه وإعالمه بكيفية التعامل مع
البيانات أو كيفية تنفيذ سلسلة من األعمال المطلوبة.
هي طريقة تسهل للمبرمج كتابة برنامجه في هيئة تعليمات وأوامر يفهمها الكمبيوتر بغرض تنفيذ
المطلوب .ويحول الكمبيوتر اللغة المكتوبة بها البرمجة إلى سلسلة من 0و ،1ويبدأ على أساسها
عمله .ولكتابة األ وامر ،توفر لغة البرمجة المختارة مجموعة من األمور األساسية لالستناد إليها أثناء
عملية تكوين البرنامج ومجموعة من القواعد التي تمكن من التعامل مع معلومات وتنظيمها بغرض أداء
العمل المطلوب.
3الهدف من هذا الجزء معرفة أنه يوجد العديد من الطرق التي يمكن إستخدامها لتحويل الخطوات النظرية الي تطبيقات وأكواد يمكن إستخدامها في حل
أي مشكلة طالما أنه يوجد لديك األساس النظري لذلك .وهذا ما يميز النظام المحاسبي أنه نظام مبني علي معايير وقواعد يتم ترجمتها الي خطوات
عملية من خالل برامج بسيطة ومتطورة وهو ما ن سعي الي تعلمه خالل الفصول القادمة .فإن كنت ترغب في مواكبة التطور عليك عزيزي الطالب أن
تحدث أدواتك.
19
العلمية ،وتطوير األلعاب ،واألتمتة ،وغيرها .ويتميز Pythonببساطته وسهولة تعلمه ،ويوفر مجموعة واسعة من
أيضا من بين
المكتبات واألدوات التي تسهل على المطورين إنشاء التطبيقات بشكل فعال وسريع .يعتبر ً Python
شيوعا في مجاالت الذكاء االصطناعي وتعلم اآللة بفضل مكتبات قوية مثل NumPyوPandas ً أكثر اللغات
و TensorFlowوغيرها .ويتمتع Pythonبشعبية كبيرة بين المطورين بسبب قدرته على التعامل مع مجموعة واسعة
من المشاكل والتطبيقات ،إلى جانب مجتمع نشط من المطورين والمستخدمين الذين يساهمون في تطويره ودعمه.
ويمكن اإلستعانة بالعديد من محرري األكواد والتي تساعد علي التحديد اللوني للكود ،واإلكمال التلقائي للشفرة ،والتحقق
من األخطاء والتصحيح الفوري .ومن أشهرها Visual Studio Codeو PyCharmواللذان يمكن تحميل نسخ
مجانية منهم.
كما يمكن اإلستعانة بمواقع عبر االنترنت مترجمة لكتابة كود برمجي وهو ما سوف نعتمد عليه حالياً ألغراض إتحاة
الفرصة لجميع الطالب لتطبيق األمثلة العملية علي أي جهاز حتي لو موبايل ودون الحاجه الي إمكانيات معينة
لتسطيب البرامج المختلفة.
ويوجد العديد من المواقع التي توفر Compilerاونالين لتتمكن من كتابة وتشغيل أي كود وسوف نعتمد علي الموقع
التالي كمترجم لكتابة كود بايثون https://www.online-python.com/online_python_compiler :
20
لكتابة الكود
وبعد كتابة اي كود نضغط Runليتم تنفيذ الكود وسوف نتعلم اآلن أساسيات يمكن إستخدامها بلغة البايثون لحل
األمثلة العملية.
-2المتغيرات:
في لغة البرمجة ، Pythonهناك عدة أنواع من المتغيرات يمكن استخدامها لتخزين مختلف أنواع البيانات .ومن
ضمن المتغيرات الشائعة في :Python
) :Integer (intيستخدم لتخزين األعداد الصحيحة ،مثل 5و 3-و 100وغيرها.
21
فمثال لو كتبنا :عدد_الصفحات = 9
وطالبنا من البرنامج تحديد نوع المتغير نكتب الكود التالي:
))عدد_الصفحات(", typeنوع المتغير عدد_الصفحات هوprint(" :
فيظهر لنا البرنامج النتيجة التالية:
:نوع المتغير عدد_الصفحات هو <>'class 'int
) :Float (floatيستخدم لتخزين األعداد العشرية ،مثل 3.14و 0.001-و 2.718وما إلى ذلك.
فمثال لو كتبنا :مدة_المحاضرة=1.5
وطالبنا من البرنامج تحديد نوع المتغير نكتب الكود التالي:
))مدة_المحاضرة(", typeنوع المتغير مدة_المحاضرة هوprint(" :
) :String (strيستخدم لتخزين النصوص ،ويتم تحيينها بين عالمتي اقتباس (مفتوح ومغلق) ،مثل " Hello,
"!Worldو " "Python is awesomeوما إلى ذلك.
فمثال لو كتبنا :موضوع_المحاضرة="دور المعلومات في إتخاذ القرارات"
وطالبنا من البرنامج تحديد نوع المتغير نكتب الكود التالي:
(موضوع_المحاضرة)):"(typeنوع المتغير موضوع_المحاضرة هو"print ,
فيظهر لنا البرنامج النتيجة التالية:
:نوع المتغير موضوع_المحاضرة هو <>'class 'str
) :Boolean (boolيستخدم لتخزين القيم ( Trueأو ،)Falseويستخدم في التعبيرات المنطقية والشروط ،مثل
Trueو .False
فمثال لو كتبنا :هل_صباحا=)(True
وطالبنا من البرنامج تحديد نوع المتغير نكتب الكود التالي:
))هل_صباحا(", typeنوع المتغير هل_صباحا هوprint(" :
فيظهر لنا البرنامج النتيجة التالية:
:نوع المتغير هل_صباحاً هو <>'class 'bool
) :List (listيستخدم لتخزين مجموعة من العناصر ،ويمكن أن تحتوي على أنواع مختلفة من البيانات ،مثل [,1
]3 ,2أو [".]"apple", "banana", "orange
لو كتبنا :مكان_المحاضرة={"القاعة الكبري"",قاعة ","601مدرج ب"}
وطالبنا من البرنامج تحديد نوع المتغير نكتب الكود التالي:
))مكان_المحاضرة(", typeنوع المتغير مكان المحاضرة هوprint(" :
22
فيظهر لنا البرنامج النتيجة التالية:
:نوع المتغير مكان المحاضرة هو <>'class 'set
) :Dictionary (dictيستخدم لتخزين البيانات في شكل مفهرس ( ،)key-value pairsحيث يتم الوصول إلى
البيانات باستخدام المفتاح ،مثل {".}name": "John", "age": 30
فمثال لو كتبنا :القاعة={"الدور"":السادس"",رقم"}701:
وطالبنا من البرنامج تحديد نوع المتغير نكتب الكود التالي:
))القاعة(", typeنوع المتغير القاعة هوprint(" :
فيظهر لنا البرنامج النتيجة التالية:
:نوع المتغير القاعة هو <>'class 'dict
if صحيحا.
ً تُستخدم لتنفيذ مجموعة من التعليمات البرمجية إذا كان الشرط
else تُستخدم لتنفيذ مجموعة من التعليمات البرمجية إذا فشلت جميع شروط ifو /أو elif
فإذا كنت ترغب في تحديد قرار إداري بالبيع أو عدم البيع إذا بلغ السعر 150جنيه للوحدة ،وعلي إفتراض أن سعر
البيع الفعلي للوحدة هو 140جنيه فيمكنك كتابة الكود التالي:
السعر=140
ifالسعر>=:150
)"إذا القرار هو البيع"(print
else:
)"إذا القرار هو عدم البيع"(print
23
مثال آحر :اذا كنت ترغب في أن يظهر البرنامج تقديرك بناء علي درجتك فتكتب الكود التالي:
score=75
if score>=90:
)"تقديرك هو ممتاز"(print
elif score>=80:
)"تقديرك هو جيد جدا"(print
elif score>=65:
)"تقديرك هو جيد"(print
elif score>=50:
)"تقديرك هو مقبول"(print
else:
)"راسب "(print
فعلي سبيل المثال اذا كنت ترغب في أن يقوم البايثون بحساب التقدير في المثال السابق في كل مرة ترغب في
كتابة الدرجة فتكتب الكود بالشكل التالي:
))" :أكتب الدرجة لمعرفة تقديرك"(score=float(input
if score>=90:
)"تقديرك هو ممتاز"(print
elif score>=80:
)"تقديرك هو جيد جدا"(print
elif score>=65:
)"تقديرك هو جيد"(print
elif score>=50:
)"تقديرك هو مقبول"(print
else:
)"راسب "(print
24
فالتعديل الوحيد هو بدل وضع درجة ثابتة تم إدخال inputووضع قبلها floatألننا نكتب أرقام وقد يكون بها
كسور لذا نحدد طبيعة المدخل.
25
elif score>=65:
)"تقديرك هو جيد"(print
elif score>=50:
)"تقديرك هو مقبول"(print
else:
)"راسب "(print
)" :اذا كنت ترغب في الخروج أكتب نعم"(=inputالخروج
":الخروج=="نعم if
break
تم إضافة متغير نصي يسمح للمستخدم كتابة نعم ومنها تم وضع دالة ifلو ان المتغير == نعم يتم إنهاء الحلقة واي
كلمة أخري تستمر الحلقة مع مالحظة أن كتابة المتغير الجديد يكون علي نفس بداية سطر األكواد السابقة حتي يفهم
البرنامج أن الشرط يجب ان يظهر بعد كل نتيجة كما يلي:
26
حساب نقطة التعادل بالقيمة وبالحجم #
نقطة_التعادل_بالحجم = تكاليف_ثابتة ) /سعر_البيع -تكلفة_متغيرة (
نقطة_التعادل_بالقيمة = نقطة_التعادل_بالحجم* سعر_البيع
وإذا كنت ترغب في تحويل هذا الكود الي برنامج صالح إلدخال أي أرقام لعناصر التكاليف والسعر والحجم
المحددة مسبقاً وتحتاج معرفة هل حققت الشركة ربح أو خسارة وتحديد حجم التعادل وقيمة التعادل :
كل ما عليك فعله هو تغيير الجزء االول من الكود المتعلق بتعريف المتغيرات ليصبح كما يلي:
))" :الرجاء إدخال التكاليف الثابتة"( = float(inputتكاليف_ثابتة
))" :الرجاء إدخال التكلفة المتغيرة لكل وحدة"( = float(inputتكلفة_متغيرة
))" :الرجاء إدخال سعر البيع لكل وحدة"( = float(inputسعر_البيع
))" :الرجاء إدخال حجم المبيعات"( = int(inputحجم_المبيعات
وإضافة بعد التعديالت البسيطة في الرسالة الترحيبية ونهاية الكود ليصبح شكله كما يلي:
27
وبالتالي يصبح كود يمكنك من خالل حساب التعادل والربح ألي بيانات يستخدم كيفما ترغب :
28
إستخدام الذكاء اإلصطناعي
سمعنا مؤخ اًر عن العديد من أدوات الذكاء االصطناعي التي تتفاعل مع البشر بشكل مباشر من خالل متصفحات
تساعدك في االجابة علي كافة اسئلتك وايضاً تساعدك علي تعلم مهارات جديدة والمحادثة المباشرة وتحليل البيانات
الضخمة والحصول حتي علي أكواد برمجية عالية الدقة وتحليل الصور واقتراح العديد من الحلول .بل أصبح حالياً
الذكاء االصطناعي جزء من البرامج والتطبيقات التي نعتمد عليها .ويوجد العديد من دوات الذكاء االصطناعي حالياً:
ومن أشهر تلك األدوات:
:ChatGPT -هو نوع من تطبيقات التفاعل اللغوي التي تعتمد على تقنية الذكاء االصطناعي المعروفة باسم GPT
) ، (Generative Pre-trained Transformerوالتي طورتها شركة OpenAI. ChatGPTتستخدم نماذج GPT
لتمكين التفاعل مع المستخدمين بطريقة طبيعية ومحادثات مشابهة للمحادثات البشرية.
:Gemini /Bard -هو نموذج لغة كبير ( )LLMتم تطويره بواسطة Google AIعلى مجموعة بيانات ضخمة من
النصوص والشفرات ،مما يسمح بإنشاء نصوص وترجمة اللغات وكتابة محتوى إبداعي واإلجابة على أسئلتك بشكل غني
بالمعلومات.
:Copilot /Bing -هو محرك بحث تم تطويره بواسطة .Microsoftيساعد Bingفي البحث عن المعلومات وتحويلها
إلى إجراءات ،مما يجعل االنتقال من البحث إلى التنفيذ أسرع وأسهل .يمكن استخدام Bingللبحث عن معلومات متنوعة
والوصول إلى اإلجابات على أسئلتك ،وذلك من خالل تجربة الدردشة مع Bing Chatفي .Microsoft Edge
حل المثال ( )1بإستخدامات أدوات الذكاء الاصطناعي السابقة مع الاشارة إلي أن تلك الأدوات
مازالت في مرحلة التطوير ويوجد منها إصدارات مختلفة منها ما هو مجاني ولا تعطي نتائج
دقيقة في جميع الأحوال ويوجد نسخ من بعضها غير مجاني أكثر دقة وتحديث:
سوف ندخل علي موقع ) ChatGPT (openai.comونفتح شات جديد مع ملاحظة أنك يمكن ان
تدخل من خلال تطبيق للأندرويد من خلال play storeأو للايفون من خلال :app store
29
ونجد في االسفل مكان لكتابة الشات الذي نرغب ،فنأخذ المثال copyو pastفي الشات لتظهر لنا
النتيجة التالية:
30
-2الحل بإستخدام :Bing
ندخل علي موقع ) Copilot with GPT-4 (bing.comفيظهر لنا بالشكل التالي:
31
32
-1الحل بإستخدام :bard
33
مثال ()2
تنتج إحدي الشركات منتج وحيد وتتحمل الشركة تكاليف متغيرة 10جنيه لكل وحدة وتبيع الوحدة بسعر 16جنيه فإذا
علمت أن إجمالي التكاليف الثابتة للشركة تساوي 90000جنيه.
المطلوب:
-1ما هو حجم المبيعات وقيمة المبيعات التي ال يجب أن يسمح متخذ القرار بأن تنخفض عنها الشركة ( نقطة
التعادل للشركة بالقيمة وبالحجم)
-2حل المثال بإستخدام برنامج QM
-3اذا بلغت حجم المبيعات 14000وحدة ،هل تحقق الشركة أرباح أم خسائر ولماذا؟
الحل
المطلوب األول:
قد يتم حساب التعادل بحجم الوحدات المباعة التي تغطي كل التكاليف أو بقيمة المبيعات التي تغطي كل التكاليف:
إجمالي التكاليف الثابتة
حجم مبيعات التعادل =
سعر بيع الوحدة – التكاليف المتغيرة للوحدة
80000
= 15000وحدة حجم مبيعات التعادل =
10 -16
اذا الحجم الذي يحقق نقطة التعادل للشركة هو بيع 15000وحدة ويمكن التحقق من ذلك بحساب
صافي الربح عند 200وحدة كما يلي:
التكاليف المتغيرة – التكاليف الثابتة - اإليراد = الربح
15000 ×16وحدة 15000 ×10 -وحدة – = 90000صفر = الربح
وبالتالي 15000وحدة عندها اإليراد يغطي كل التكاليف لذا الربح يساوي صفر.
وقيمة التعادل أي قيمة اإليراد الذي يغطي التكاليف وهي هنا 15000 ×16وحدة = 240000جنيه
34
المطلوب الثاني:
35
ويحدد الرسم البياني نقطة تقاطع االيراد بالتكاليف ومنها نجد أن حجم التعادل وهو المحور األفقي 15000
وحدة وقيمة التعادل وهي 240000وهي تقطع علي المحور الرأسي وهو مرتبط بالتكاليف ويوجد خطين
خط التكلفة ويبدء من النقطة 90000جنيه وهي التكاليف الثابتة وخط االيراد وهو يبدء من الصفر.
المطلوب الثالث:
التكاليف المتغيرة – التكاليف الثابتة - اإليراد = الربح
36