
حلزون أرخميدس
أكتب برنامجاً بلغة ج لرسم المنحني المعرّف بالمعادلة التالية في جملة إحداثيات قطبية (ر، يه):
ر= ثا × يه
حيث ثا ثابت اعتباطي.
يُعرَف هذا المنحني باسم حلزون أرخميدس، ويلتف المنحني حول مبدأ الإحداثيات بالمقدار يه÷(2×بي) مرة.
يجب على البرنامج أن يقرأ قيمة الثابت ثا، وعدد لفات الحلزون المرغوبة، وأن يرسم بعد ذلك المنحني الموافق لهاتين القيمتين.
الحل
تعتمد إيعازات الرسم في لغة ج على جملة إحداثيات قانونية متعامدة (س،ع) مبدؤها منطبق على الزاوية السفلية اليسرى للوحة الرسم. ولرسم منحن معرف بمعادلة قطبية يجب تحويل الإحداثيات القطبية إلى إحداثيات متعامدة. فإذا كانت النقطة ن (رن ، يهن) تنتمي إلى جملة الإحداثيات القطبية (ر ، يه) التي يقع مبدؤها في النقطة (س0 ، ع0) بالنسبة لجملة الإحداثيات المتعامدة فإن الإحداثيات المتعامدة (سن ، عن) لهذه النقطة تعطى بالعلاقتين:
سن = رن × تجب يه + س0
عن = رن × جب يه + ع0
ولرسم المنحني ر = ثا × يه نتبع الخوارزمية التالية:
نبدأ بالقيمة يه =0
نكرر الخطوات 1،2،3،4 طالما أن يه < 2× بي× ن، حيث ن عدد لفات الحلزون المطلوب:
1- نحسب ر من العلاقة ر = ثا × يه
2- نحسب س،ع من العلاقتين:
س= ر× تجب يه + س0 ، ع = ر × جب يه + ع0
3- نرسم النقطة (س،ع) في لوحة الرسم
4- نزيد يه بمقدار صغير وليكن 0.01 راديان
البرنامج
يبين السرد التالي تطبيق الخوارزمية المذكورة أعلاه بلغة ج.
*(
-------------------------------------------------------------------------------------------
برنامج بلغة ج لرسم منحني حلزون أرخميدس
جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة، 1420 هجري - 2000 م
-------------------------------------------------------------------------------------------
)*
!! المعادلة العامة لمنحني الحلزون في الإحداثيات
!! القطبية ر = ثا × يه
!!=======================================
أدرج "ألوان"
الثابت بي = 3.1415
المتحول ر ، يه ، س ، ع ، ثا : حقيقي
المتحول ن : صحيح
المتحول س0 ، ع0 : صحيح
!! ألون لوحة الرسم باللون السماوي
!!---------------------------------------
ألون باللون السماوي ، الورقة
!! مبدأ الإحداثيات القطبية يقع في منتصف ورقة الرسم
!!-----------------------------------------------------------
أجعل س0 = حدس \ 2
أجعل ع0 = حدع \ 2
!! أرسم محوري الإحداثيات المتعامدة
!!---------------------------------------
أرسم مستقيم من (س0، 0) إلى (س0، حدع)
أرسم مستقيم من (0، ع0) إلى (حدس، ع0)
!! أرسم المنحني باللون الأحمر
!!----------------------------------
أرسم باللون الأحمر
!! أقرأ قيمة الثابت ثا وعدد اللفات ن
أكتب "أدخل قيمة الثابت ثا:"
أقرأ ثا
أكتب "أدخل عدد لفات الحلزون:"
أقرأ ن
!! أرسم المنحني نقطة فنقطة بخطوة للزاوية يه قدرها0.01 راديان
!!--------------------------------------
أجعل يه = 0
أكرر طالما يه < 2×بي×ن
{
أجعل ر = ثا × يه
أجعل س = ر × تجب (يه) + س0
أجعل ع = ر × جب (يه ) + ع0
أرسم النقطة (س ، ع)
أجعل يه = يه + 0.01
}
ويبين الشكل التالي نتيجة تنفيذ هذا البرنامج.
