أنت هنا:برمجها»اللغة ج»حلول تمارين اللغة البرمجية ج الجزء 1
حلول تمارين اللغة البرمجية ج - الجزء 1 حلول تمارين اللغة البرمجية ج - الجزء 1
قيم الموضوع
(1 تصويت)

 

تجد هنا حلول لبعض التمارين في جميع فقرات هذا الدرس.

 


 

التمرين 6.7

أكتب برنامجاً لحل معادلة من الدرجة الثانية بمجهول واحد (س)، واقتصر في الحل على مجال الأعداد الحقيقيةعلماً أن للمعادلة الشكل العام :

آ س2 + ب س ج = 0

الحلسنكتب برنامجاً يقرأ أمثال س:آ و ب و ج ثم يكتب المعادلة كاملة في لوحة الكتابةبعد ذلكيحسب البرنامج المميز (م)من العلاقة:

م ب2 - 4آج

فإذا كان المميز موجباً، يحسب البرنامج جذري المعدلة س1و س2من العلاقتين:

س1 = (-ب جذر (م) )÷ 2آ

س2 = (-ب -جذر (م) )÷ 2آ

ويكتب البرنامج حل المعادلة في لوحة الكتابةأما إذا كان المميز سالباً فيكتب البرنامج إشعاراً باستحالة حل المعادلة في مجال الأعداد الحقيقيةويكرر البرنامج نفسه إلى أنيدخل المستخدمالصفر كقيمة لأمثال س2.

*(-------------------------------------------------------------------
برنامج بلغة ج لحل معادلة بمجهول واحد من الدرجة الثانية
في مجال الأعداد الحقيقية

الحقوق:جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة،1420 هـ -2000 م
---------------------------------------------------------------------)*
 
!! الشكل العام للمعادلة آ س^2 + ب س + ج =0
!!----------------------------------------
 
المتحول آ، ب، ج : حقيقي
المتحول م، س1، س2 : حقيقي
 
أكرر طالما صواب
{
أكتب "أدخل آ ب ج (أدخل 0 قيمة لـ آ كي تنهي البرنامج) : "
أقرأ آ ، ب ، ج
إذا آ =؟ 0 أنتهي
أكتب " المعادلة: " ، آ ، " س^2 "
إذا ب > 0 أكتب " + "
أكتب ب ،" س "
إذا ج > 0 أكتب " + "
أكتب ج ، " = 0" ، سطر
 
أجعل م = ب^2 - 4× آ × ج
أكتب " المميز = "، م ، سطر
إذا (م<0)
أكتب "المعادلة مستحيلةالحل !"، سطر
وإلا
{
أجعل س1 = (-ب + جذر(م)) ÷ (2×آ)
أجعل س2 = (-ب - جذر(م)) ÷ (2×آ)
أكتب " حل المعادلة: "،سطر
أكتب "س1 = "، س1 ، سطر
أكتب "س2 = " ، س2 ، سطر
}
}


التمرين 7.1

!! برنامج لإيجاد المتوسط الحسابي لسلسلة من الأعداد الصحيحة
!!------------------------------------------------------
!! يقوم البرنامج بقراءة الأعداد إلى أن يتم إدخال عدد سالب
!!------------------------------------------------------
 
المتحول ص ، المجموع ، العدد : صحيح
أجعل المجموع = 0
أجعل العدد = 0
 
أكتب "أدخل سلسلة من الأعداد الصحيحة الموجبة ثم عدداً سالباً لإنهاء السلسلة: " ، سطر
أقرأ ص
 
أكرر طالما ص >= 0
{
أجعل المجموع = المجموع + ص
أجعل العدد = العدد + 1
أقرأ ص
}
 
أكتب "المتوسط الحسابي لسلسلة الأعداد السابقة هو: " ، المجموع ÷ العدد


 

التمرين 7.16

أكتب برنامجاً يحول الأعداد العشرية الصحيحة إلى أعداد ثنائية باتباع طريقة القسمة المكررة على 2.

الحللتحويل عددعشريإلى عددثنائينتبعالطريقة التالية:

  1. نقسمالعددالعشريقسمة صحيحة على 2.

  2. نكتب باقي القسمة لأنه يساوي قيمة المرتبة الحالية للعدد الثنائي.

  3. نجعل القيمة الجديدة للعدد العشري مساوية لحاصل قسمته الصحيحة على 2.

  4. نـكرر الخطوات-3إلى أن تصبح قيمة العدد العشري صفر.

*(-------------------------------------------------------------------
برنامج بلغة ج لتحويل الأعداد من النظام العشري إلى النظام الثنائي
الحقوق:جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة،1420 هـ -2000 م
---------------------------------------------------------------------)*
 
المتحول ص : صحيح
المتحول ع : صحيح
المتحول عدد_المراتب : صحيح
 
أكتب "أدخل عدد_المراتب:"
أقرأ عدد_المراتب
أكتب "أدخل عدداً لتحويله إلى النظام الثنائي:"
أقرأ ص
 
أكرر طالما ص > 0
{
إذا ص > 2^عدد_المراتب - 1
أكتب "العدد أكبر من أن يمكن تمثيله بـ "،عدد_المراتب،" مرتبة ثنائية"،سطر
وإلا
{
أجعل ع = 0
أكرر طالما ص >0
{
أجعل ع = ع + 1
أكتب ص - (ص\2) × 2 ، " "
أجعل ص = ص\2
}
أكرر (عدد_المراتب - ع) مرة
أكتب 0 ، " "
أكتب سطر
}
أكتب "أدخل عدداً لتحويله إلى النظام الثنائي:"
أقرأ ص
}


التمرين 8.1

أكتب برنامجاً يسرد النسب المثلثية للزوايا التي تتراوح بين و 90° بخطوة قدرها درجات.

أدرج"رياضيات"
 
المتحول د : صغير
المتحول يه : حقيقي
 
أكتب"يه جب(يه) تجب(يه) ظل(يه) تظل(يه)" ، سطر
 
أكررمن د = 0 إلى90 بخطوة5
{
يه = د ÷180 × بي
أكتب د، " "، جب(يه)، " "، تجب(يه)، " "
إذا|ظل(يه)| >=أكبر_عدد_حقيقي
أكتب"عدم تعيين"
وإلا
أكتب ظل(يه)
أكتب" "
إذا|تظل(يه)| >=أكبر_عدد_حقيقي
أكتب"عدم تعيين"
وإلا
أكتب تظل(يه)
أكتبسطر
}


التمرين 7.15

الطريقة الأولى:

*(--------------------------------------------------------------------
برنامج يرتب سلسلة من الأعداد الصحيحة تصاعدياً باستخدام خوارزمية الفقاعات
الحقوق:جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة،1420 هـ-2000 م
---------------------------------------------------------------------)*
 
!! تعريف المتغيرات
!!----------------
المتحول س : صفيفة[100] من صحيح !! سلسلة الأعداد. 100 عدد كحد أقصى
المتحول ع ، د ، م : صحيح !!ع:عدد الأعداد، د: دالة متغيرة، م:مخزن مؤقت
المتحول تم_الترتيب : منطقي !! راية تدل على أن الأعداد صارت مرتبة
 
!! قراءة الأعداد
!!-------------
أكتب"أدخل عدد الأعداد : "
أقرأ ع
أكتب"أدخل الأعداد : " ، سطر
أكررمن د = 1 إلى ع
أقرأ س[د]
 
!! ترتيب الأعداد
!!-------------
تم_الترتيب = خطأ
أكررطالما(نفي تم_الترتيب) !! أكرر طالما لم يتم ترتيب الأعداد
{
تم_الترتيب = صواب !! نفترض أن الأعداد صارت مرتبة
أكرر من د = 1 إلى ع-1
إذا س[د] > س[د+1]
{
م = س[د]
س[د] = س[د+1]
س[د+1] = م
تم_الترتيب = خطأ !! لم ينتهي تريتيب الأعداد بعد
} !! نهاية إذا
} !! نهاية أكرر
 
!! كتابة الأعداد المرتبة
!!-----------------------
أكتب"السلسة بعد ترتيبها :" ، سطر
أكررمن د = 1 إلى ع
أكتب س[د] ، " "


 الطريقة الثانية: خوارزمية الترتيب بالفقاعات باستخدام خوارزمية تبدل بين قيمتي متغيرين.

*(---------------------------------------------------------------------
برنامج يرتب سلسلة من الأعداد الصحيحة تصاعدياً باستخدام خوارزمية الفقاعات.
يستخدم البرنامج خوارزمية مخصصة لتبديل عددين
الحقوق:جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة،1420 هـ-2000 م
----------------------------------------------------------------------)*
 
!! تعريف المتغيرات
!!----------------
المتحول س : صفيفة[100] من صحيح !! سلسلة الأعداد. 100 عدد كحد أقصى
المتحول ع ، د : صحيح!! ع: عدد الأعداد، د: دالة متغيرة
المتحول تم_الترتيب : منطقي
 
!! تعريف الخوارزمية
!!-----------------
!! تبدل هذه الخوارزمية قيمة المتحول س بـ ع ، و ع بـ س
!!س هنا هو متحول صوري ليس له علاقة بالجدول س المعرفة في البرنامج الرئيسي
الخوارزمية أبدل ( س ، ع : صحيح)
{
المتحول م : صحيح !! م متحول محلي في الخوارزمية أبدل
م = س
س = ع
ع = م
}
 
!! قراءة الأعداد
!!--------------
أكتب"أدخل عدد الأعداد : "
أقرأ ع
أكتب"أدخل الأعداد : " ، سطر
أكررمن د = 1 إلى ع
أقرأ س[د]
 
!! ترتيب الأعداد
!!----------------
تم_الترتيب = خطأ
أكررطالما(نفي تم_الترتيب) !! أكرر طالما لم يتم ترتيب الأعداد
{
تم_الترتيب = صواب!! نفترض أن الأعداد صارت مرتبة
أكررمن د = 1 إلى ع-1
إذا س[د] > س[د+1]
{
!! المتحول الفعلي س[د] يصبح بدل المتحول الصوري س، و س[د+1] بدل ع

أبدل (س[د] ، س[د+1])
تم_الترتيب = خطأ !! لم ينتهي تريتيب الأعداد بعد
} !! إذا
} !! أكرر
 
!! كتابة الأعداد المرتبة
!!-----------------------
أكتب"السلسة بعد ترتيبها :" ، سطر
أكررمن د = 1 إلى ع
أكتب س[د] ، " "

التمرين 7.25

*(--------------------------------------------------------------------
برنامج يحسب المتوسط الحسابي، ومتوسط الفروق،
والإنحراف المعياري لسلسلة أعداد حقيقية
.
الحقوق:جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة،1420 هـ-2000 م
---------------------------------------------------------------------)*
 
!! تعريف المتغيرات
!!----------------
!! س: سلسلة الأعداد. 50 عدد كحد أقصى
!! ع: عدد الأعداد، د: دالة متغيرة
المتحول س : صفيفة[50] منحقيقي
المتحول ع ، د : صحيح
!! م: المتوسط، مف: متوسط الفروق، إم: الإنحراف المعياري
المتحول م ، مف ، إم : حقيقي
 
!! قراءة الأعداد وحساب المتوسط
!!---------------------------
أكتب"أدخل عدد الأعداد: "
أقرأ ع
م = 0
أكتب"أدخل سلسلة الأعداد :" ، سطر
أكررمن د=1 إلى ع
{
أقرأ س[د]
م = م + س[د]
}
م = م ÷ ع
 
!! حساب متوسط الفروق والإنحراف المعياري
!!------------------------------------
مف = 0
إم = 0
أكررمن د=1 إلى ع
{
مف = مف + |(س[د] - م)|
إم = إم + (س[د] - م)^2
}
مف = مف ÷ ع
إم = جذر ( إم ÷ (ع-1) )
 
!! كتابة الناتج
!!-------------
أكتب"المتوسط الحسابي = " ، م ، سطر
أكتب"متوسط الفروق = " ، مف ، سطر
أكتب"الإنحراف المعياري = " ، إم ، سطر
يبين الشكل التالي مثالاً لتنفيذ هذا البرنامج على سلسلة من 10 أعداد.



التمرين 10.1

*( ------------------------------------------------------------------- 
اسم الملف: حساب_عقدي
النوع : برنامج بلغة ج
المحتوى: برنامج لحساب الأعداد العقدية
المستوى: ثانوي
الحقوق:جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة،1420 هـ-2000 م
---------------------------------------------------------------------)*
 
أدرج "عقدي"
 
المتحول س ، ع ، ص ، م : عقدي
 
أكتب "أدخل العدد العقدي س: "
أقرأ_عقدي (س)
 
أكتب "أدخل العدد العقدي ع: "
أقرأ_عقدي (ع)
 
أنفذ مرافق_عقدي (س ، م)
أكتب "مرافق العدد س:"
أكتب_عقدي (م)
أكتب سطر
 
أنفذ مرافق_عقدي (ع ، م)
أكتب "مرافق العدد ع:"
أكتب_عقدي (م)
أكتب سطر
 
أكتب "طويلة العدد س =" ، طويلة_عقدي(س) ، سطر
أكتب "طويلة العدد ع =" ، طويلة_عقدي(ع) ، سطر
 
أجمع_عقدي (س ، ع ، ص)
أكتب "مجموع العددين: "
أكتب_عقدي (ص)
أكتب سطر
 
أضرب_عقدي (س ، ع ، ص)
أكتب "جداء العددين: "
أكتب_عقدي (ص)

 

التمرين 10.2

*(--------------------------------------------------------------------
برنامج لحل معادلة بمجهول واحد من الدرجة الثانية باستخدام مجال الأعداد
العقدية إذا كان المميز سالباً.
المستوى : ثانوي
الحقوق:جميع الحقوق محفوظة للمؤلف: د. محمد عمار السلكة،1420 هـ-2000 م
---------------------------------------------------------------------)*
 
!! الشكل العام للمعادلة آ س^2 + ب س + ج =0
 
أدرج "عقدي"
 
المتحول آ، ب، ج : حقيقي
المتحول م : حقيقي
 
أكرر طالما صح
{
أكتب "أدخل آ ب ج (أدخل 0 0 0 لإنهاء البرنامج) : "
أقرأ آ ، ب ، ج
إذا آ =0 قف
أكتب " المعادلة: " ، آ ، " س^2 "
إذا ب > 0 أكتب " + "
أكتب ب ،" س "
إذا ج > 0 أكتب " + "
أكتب ج ، " = 0" ، سطر
 
أجعل م= ب^2 - 4× آ × ج
أكتب " المميز = "، م، سطر
إذا (م<0)
{
المتحول سع1 ، سع2 : عقدي
سع1.ح = -ب ÷ (2 × آ)
سع1.خ = جذر |م| ÷ (2 × آ)
 
سع2.ح = -ب ÷ (2 × آ)
سع2.خ = - جذر |م| ÷ (2 × آ)
 
أكتب " للمعادلة حل تخيلي : "،سطر
أكتب "س1 = "
أكتب_عقدي (سع1)
أكتب سطر
أكتب "س2 = "
أكتب_عقدي (سع2)
أكتب سطر
}
وإلا
{
المتحول س1 ، س2 : حقيقي
أجعل س1 = (-ب + جذر(م)) ÷ (2×آ)
أجعل س2 = (-ب - جذر(م)) ÷ (2×آ)
أكتب " للمعادلة حل حقيقي : "،سطر
أكتب "س1 = "، س1 ، سطر
أكتب "س2 = " ، س2 ، سطر
}
}

التمرين 11.5

!! برنامج لتحديد كون عدد صحيح فردي أو زوجي
!!----------------------------------------
 
التابع وتر (ص:صحيح) -> منطقي
{
إذا ص - (ص\2) × 2 <>0
أرجع صواب
وإلا
أرجع خطأ
}
 
!!البرنامج الرئيسي
!!----------------
المتحول ص : صحيح
أكرر
{
أكتب "أدخل عدداً صحيحاً ( 0 للتوقف) :"
أقرأ ص
 
إذا وتر(ص) أكتب "العدد فردي (وتر)" ، سطر
وإلا أكتب "العدد زوجي (شفع)" ، سطر
 
} حتى ص =؟ 0
وتبين الصورة التالية مثالاً لتنفيذ هذا البرنامج



 

تأليف

المؤلف الأصليالدكتورمحمد عمار السَلكة (دمشق سوريا)

 الموقع الشخصي   http://www.drsalka.com

 البريد الإلكترونيعنوان البريد الإلكتروني هذا محمي من روبوتات السبام. يجب عليك تفعيل الجافاسكربت لرؤيته.عنوان البريد الإلكتروني هذا محمي من روبوتات السبام. يجب عليك تفعيل الجافاسكربت لرؤيته.عنوان البريد الإلكتروني هذا محمي من روبوتات السبام. يجب عليك تفعيل الجافاسكربت لرؤيته.

ضبط بتصرفمحمد عبد الرحمان (الدار البيضاء المغرب)


المراجع

   http://www.jeemlang.com


 

 

أضف تعليقا


إصنعها يريد أن يتأكد أنك لست روبوتا، لذلك أحسب ما يلي:

كود امني
تحديث