رسم مجموعة نقاط تجريبية
يبين المثال التالي برنامجاً، يمنكه رسم المنحي البياني لمجموعة من النقاط التجريبية ، أي مجموعة من الإحداثيات (س،ع). |
*(-------------------------------------------------------------------- برنامج بلغة ج لرسم منحني يمثل مجموعة نقاط تجريبية المستوى : ثانوي/جامعي جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة ، 1420 هجري - 2000 م ---------------------------------------------------------------------)* الثابت عدد_النقاط_الأعظمي = 20 !! العدد الأعظمي للنقاط التجريبية الممكن إدخالها الثابت الهامش_الأيمن = 15 !! عرض الهامش الفارغ يمين الرسم الثابت الهامش_الأيسر = 100 الثابت الهامش_الأعلى = 15 الثابت الهامش_الأسفل = 30 الثابت طول_السهم = 10 !! طول رأس السهم الثابت عرض_السهم = 3 !! عرض رأس السهم أدرج "مترادفات" أدرج "ألوان" المتحول س ، ع : صفيفة [عدد_النقاط_الأعظمي] من حقيقي المتحول عدد_النقاط ، د : صحيح المتحول أكبر_س ، أصغر_س ، أكبر_ع ، أصغر_ع : حقيقي المتحول طول_س ، طول_ع : صحيح المتحول مقياس_س ، مقياس_ع : حقيقي المتحول س0 ، ع0 : حقيقي التابع تس (س:حقيقي)->حقيقي { أرجع (س-أصغر_س) × مقياس_س + الهامش_الأيسر } التابع تع (ع:حقيقي)->حقيقي { أرجع (ع-أصغر_ع) ×مقياس_ع + الهامش_الأسفل } أكتب "أدخل عدد النقاط: " أقرأ عدد_النقاط !! أقرأ سلسلة الإحداثيات س وأوجد أكبر وأصغر قيمة أكتب "أدخل سلسلة القيم س : " ، سطر أقرأ س[1] أجعل أكبر_س = س[1] أجعل أصغر_س = س[1] أكرر من د = 2 إلى عدد_النقاط { أقرأ س[د] إذا س[د] > أكبر_س أجعل أكبر_س = س[د] إذا س[د] < أصغر_س أجعل أصغر_س = س[د] } !! أقرأ سلسلة القيم ع وأوجد أكبر وأصغر قيمة أكتب "أدخل سلسلة القيم ع:" ، سطر أقرأ ع[1] أجعل أكبر_ع = ع[1] أجعل أصغر_ع = ع[1] أكرر من د=2 إلى عدد_النقاط { أقرأ ع[د] إذا ع[د] > أكبر_ع أجعل أكبر_ع = ع[د] إذا ع[د] < أصغر_ع أجعل أصغر_ع = ع[د] } !! أحسب مقياس الرسم !!----------------- أجعل طول_س = حدس - (الهامش_الأيمن + الهامش_الأيسر) أجعل طول_ع = حدع - (الهامش_الأسفل + الهامش_الأعلى) أجعل مقياس_س = طول_س ÷ | أكبر_س - أصغر_س | أجعل مقياس_ع = طول_ع ÷ | أكبر_ع - أصغر_ع | !! أحسب إحداثيات مبدأ الإحداثيات !!----------------------------- إذا أصغر_س < صفر أجعل س0 = |أصغر_س|×مقياس_س + الهامش_الأيسر وإلا أجعل س0 = صفر + الهامش_الأيسر إذا أصغر_ع < صفر أجعل ع0 = |أصغر_ع|×مقياس_ع + الهامش_الأسفل وإلا أجعل ع0 = صفر + الهامش_الأسفل !! أرسم محاور الإحداثيات !!--------------------- ألون باللون الأصفر ، الورقة أرسم باللون الأسود أنقش عند (حدس،ع0-عرض_السهم) "س" أنقش عند (س0-عرض_السهم، حدع) "ع" !! أرسم المحور س ورأس السهم الخاص به أرسم مستقيم من (الهامش_الأيسر،ع0) إلى (حدس ، ع0) أرسم مستقيم من (حدس-طول_السهم،ع0+عرض_السهم) إلى (حدس،ع0) إلى (حدس-طول_السهم،ع0-عرض_السهم) !! أرسم المحور ع ورأس السهم الخاص به أرسم مستقيم من (س0،الهامش_الأسفل) إلى (س0 ، حدع) أرسم مستقيم من (س0-عرض_السهم، حدع-طول_السهم) إلى (س0، حدع) إلى (س0+عرض_السهم،حدع-طول_السهم) !! أرسم خطوط الشبكة أرسم باللون الرمادي أكرر من د=1 إلى عدد_النقاط { إذا تس(س[د]) <> س0 أرسم مستقيم من ( تس(س[د]) ، الهامش_الأسفل) إلى (تس(س[د]) ، طول_ع+الهامش_الأسفل) إذا تع(ع[د]) <> ع0 أرسم مستقيم من ( الهامش_الأيسر ، تع(ع[د]) ) إلى ( طول_س+الهامش_الأيسر ، تع(ع[د]) ) } أرسم باللون الأسود أكرر من د=1 إلى عدد_النقاط { أنقش عند ( تس(س[د]) + 20 ، ع0-10) س[د] أنقش عند ( س0 -10 ، تع(ع[د]) + 5) ع[د] } !! أرسم المنحني !!------------- ألون باللون الأخضر أكرر من د=1 إلى عدد_النقاط ألون دائرة مركزها ( تس(س[د]) ، تع(ع[د]) ) قطرها 7 أكرر من د = 1 إلى عدد_النقاط-1 { أرسم باللون الأحمر أرسم مستقيم من ( تس (س[د]) ، تع(ع[د]) ) إلى ( تس(س[د+1]) ، تع(ع[د+1]) ) } |
ويبين الشكل التالي تنفيذ هذا البرنامج لرسم النقاط التجريبية (الإحداثيات) التالية : (-5،-10)، (-2،-8)، (0،-3)، (1،0)، (3،5)، (5،9)، (6،12)، (9،16)، (10،20)، (12،26). |
![]() |
نسب ورود الحروف في نص عربي
!!-------------------------------------------------------------- !! برنامج بلغة ج لحساب نسب ورود الحروف الأبجدية في نص عربي !! جميع الحقوق محفوظة للمؤلف: د.محمد عمار السلكا ، شوال 1420 !!-------------------------------------------------------------- أدرج "حروف" !! أدرج الملف المكتبي لمعالجة الحروف أدرج "ألوان" !! أدرج الملف المكتبي للألوان أدرج "رياضيات" الثابت نه = 255 !! علامة نهاية الملف المتحول ن : صفيفة [255] من حقيقي !! نسب ورود الأحرف المتحول ح : حرف المتحول ملف_النص : ملف !! الملف الذي يحوي النص المراد دراسته المتحول اسم_الملف : نص !! اسم الملف الذي يحوي النص المراد دراسته المتحول مج : صحيح !! المجموع الكلي للأحرف الأبجدية في الملف المتحول أكبر_نسبة : حقيقي !! أكبر نسبة ورود لحرف في الملف المتحول العداد : صحيح !! أولاً لنقم بتصفير المتحولات أكرر من ح = 1 إلى 255 أجعل ن[ح] = 0 مج = 0 أكتب "أدخل اسم الملف الذي يحوي النص الذي تريد دراسته : " أقرأ اسم_الملف أفتح ملف_النص للقراءة من اسم_الملف إذا ملف_النص = 0 { أكتب " لم أتمكن من فتح الملف " ، اسم_الملف ، سطر قف } أكتب "الرجاء الإنتظار بينما أقوم بقراءة الملف" العداد = 0 أقرأ من ملف_النص: ح !! أقرأ حرفاً واحداً من الملف أكرر طالما ح <> نه !! أكرر طالما الحرف ح ليس محدد نهاية الملف { إذا العداد >= 1000 { أكتب " ." العداد = 0 } إذا أبجدي (ح) !! هل الحرف ح أبجدي { ن[ح] = ن[ح] + 1 !! أزيد عداد الحرف ح بمقدار واحد أجعل مج = مج + 1 !! أزيد المجموع الكلي بمقدار واحد } أقرأ من ملف_النص : ح !! أقرأ الحرف التالي من الملف العداد = العداد + 1 } أكتب سطر أغلق ملف_النص !! أحسب نسب الورود (بالمئة) وأحدد الحرف ذي نسبة الورود الأعظمية أكبر_نسبة = 0 أكرر من ح=‘ء‘ إلى ‘ي‘ إذا أبجدي (ح) { ن[ح] = (ن[ح] ÷ مج) × 100 إذا ن[ح] > أكبر_نسبة أكبر_نسبة= ن[ح] } المتحول س ، ع : صحيح المتحول المقياس ، الخطوة ، أكبر_قيمة : صحيح ألون باللون الأصفر ، الورقة أرسم باللون الأحمر أنقش عند (400 ، 25 ) " نسب ورود الأحرف الأبجدية في " ، اسم_الملف !! أرسم محاور الإحداثيات، حيث مبدأ الإحداثيات في النقطة (50،60) أرسم باللون الأسود أرسم مستقيم من (50، 60) إلى ( حدس-10 ،60) أرسم مستقيم من (50،60) إلى (50، حدع-10) أكبر_قيمة = صحيح (أكبر_نسبة) أكبر_قيمة = تدوير (أكبر_قيمة ، 10) المقياس = صحيح ( (حدع-70) ÷ أكبر_قيمة) الخطوة = أكبر_قيمة \20 ع = الخطوة أرسم باللون الرمادي أكرر طالما ع <= أكبر_قيمة { أرسم مستقيم من (50، ع×المقياس+60) إلى (حدس -10،ع×المقياس+60) ع = ع + الخطوة } ع = 0 أرسم باللون الأسود أكرر طالما ع <= أكبر_قيمة { أنقش عند (50 ، ع×المقياس+65) ع ع = ع + 2 × الخطوة } ألون باللون السماوي س = 50 أكرر من ح = ‘ء‘ إلى ‘ي‘ { إذا أبجدي (ح) { أنقش عند (س + 10 ، 50) ح ألون مستطيل من (س ، 60 ) إلى (س + 15 ، ن[ح] × المقياس + 60 ) أكتب " نسبة ورود الحرف : " ، ح ، " = "، ن[ح] ، سطر س = س + 15 } } أكتب "العدد الكلي للحروف الأبجدية في النص : " ، مج |
![]() |