![]() |
|
قسم أرشيف منتديات الجامعة القسم مغلق بحيث يحوي مواضيع الاستفسارات و الطلبات المجاب عنها ..... |
في حال وجود أي مواضيع أو ردود
مُخالفة من قبل الأعضاء، يُرجى الإبلاغ عنها فورًا باستخدام أيقونة
( تقرير عن مشاركة سيئة )، و الموجودة أسفل كل مشاركة .
آخر المواضيع |
|
مساعدة مصيرية جزاكم الله خيرا: حل اختبار في الاعلام الآلي
|
أدوات الموضوع | انواع عرض الموضوع |
![]() |
رقم المشاركة : 1 | ||||
|
![]() السلام عليكم يااخواني اتمنا مساعدتكم في حل هذا الاختبار الذي سيحدد رسوبي ام نجاحي في الاعلام الالي
|
||||
![]() |
رقم المشاركة : 2 | |||
|
![]() ولاحتى واحد حاب يساعدني |
|||
![]() |
رقم المشاركة : 3 | |||
|
![]() و عليكم السلام
أردت مساعدتك لكن اختصاصي ليس اعلام آلي آآآسفة |
|||
![]() |
رقم المشاركة : 4 | |||
|
![]() الله غالب خويـآ لغة Pascal مازلت مابديتش نتعلم فيها |
|||
![]() |
رقم المشاركة : 5 | |||
|
![]() ممكن اعرف كيف يحدد مصيرك؟ *-* هل تم تسريب الموضوع مثلا؟o_o |
|||
![]() |
رقم المشاركة : 6 | |||
|
![]() بخصوص التمرين الاول فتم برمجته على اساس ان الحاسوب يختار عشوائيا اعداد تنتمي الى المجموعة كود:
program ex; uses wincrt; type tab=array[1..100]of integer; var n,s,i:integer; m:real; p:real; t:tab; begin s:=0;p:=1;i:=1; randomize; writeln('Entrez un entier entre 10 et 20 '); readln(n); if (n<10) or (n>20) then writeln('S.V.P entre 10 et 20'); while (n>=10) and (n<=20)and(i<=n) do begin t[i]:=random(21); if t[i]<=0 then repeat t[i]:=random(21); until t[i]>=1; writeln('t[',i,']=',t[i]); s:=s+t[i]; p:=p*t[i]; i:=i+1; end; m:=s/n; if (n>=10) and (n<=20) then begin writeln('La somme =',s); writeln('Le produit=',p); writeln('La moyen=',m:3); end; end. شكرا |
|||
![]() |
رقم المشاركة : 7 | |||
|
![]() البرنامج التاني كود:
program ex; uses wincrt; type tableau=array[1..100]of integer; var n,i,x:integer; tab,tabpos,tabneg:tableau; begin i:=1; randomize; writeln('Entrez un entier entre 15 et 30 '); readln(n); if (n<15) or (n>30) then writeln('S.V.P entre 15 et 30'); while (n>=15) and (n<=30)and(i<=n) do begin tab[i]:=random(10000); x:=tab[i]; writeln('tab[',i,']=',tab[i]); repeat x:=x-2; until x<2; if x=0 then tabpos[i]:=tab[i] else tabneg[i]:=tab[i]; i:=i+1; end; if (n>=15) and(n<=30) then begin writeln('Les elements de tabpos sont'); for i:= 1 to n do if tabpos[i]<>0 then writeln(tabpos[i]); writeln('Les elements de tabneg sont'); for i:= 1 to n do if tabneg[i]<>0 then writeln(tabneg[i]); end; end. شكرا |
|||
![]() |
رقم المشاركة : 8 | |||
|
![]() بخصوص التمرين الرابع كود:
program affiche1 ; uses wincrt; procedure p( x :integer) ; begin writeln(x+1); end; Begin p(2012); End. كود:
program affiche1 ; uses wincrt; procedure p(var x :integer) ; begin writeln(x+1); end. Begin P(2012); End. |
|||
![]() |
رقم المشاركة : 9 | |||
|
![]() البرنامج الثاني التمرين الرابع كود:
program ex; uses wincrt; var i,j,z:integer; procedure q(var x,y,z: integer); begin z:=x ; y:=z ; x:=y ; end; Begin i:=2; j:=3 ; z:=4; q(i,j,z); writeln('201' , i) ; end. |
|||
![]() |
رقم المشاركة : 10 | |||
|
![]() التمرين الثاني حاول برمجته بنفسك بما لديك وضع محاولتك هنا لمساعدتك ولرفع مستواك |
|||
![]() |
رقم المشاركة : 11 | |||
|
![]() السلام عليكم ورحمة الله وبركاته اخي العزيز شكرا جزيلا لك |
|||
![]() |
رقم المشاركة : 12 | ||||
|
![]() اقتباس:
بخصوص الترمين الاول تم وضع شروط من بينها ان يكون n ضمن المجال [10..20] لدلك يجب اولا التحقق من هدا الامر ادا لم يتحقق لا نقوم بقراءة عناصر الجدول ادن هنا عندنا شرط قبل القراءة فنستعمل boucle while حتى لا نقرا اي عنصر في حالة مثلا ادا ادخلنا عدد لا ينتمي الى المجال فهنا استعملنا while (n>=10) and (n<=20)and(i<=n) do begin ثم استعملنا العبارة and اي و باللغة العربية فلكي نقوم بالقراءة يجب اولا ان ينتمي n الى المجال الدي نريده فهنا نستعمل (n>=10) and (n<=20) فهده الكتابة تعني ان n يجب ان يكون ضمن المجال في هده الحالة نحجحتاج دالة لقراءة عناصر الحجدول اي كما قلت نستدعي الدالة for for i:=1 to n do ولكن بما انه لدينا دالة من قبل فمن الاحسن ان نستمر في العمل بها ومن اجل هدا عليينا ان نعرف ما تقوم به الدالة for حتى نضعه في الدالة while ----------------------- كما نعرف الدالة فور تكتب بالشكل التالي for i:=1 to n do اي قيمة i في الاول سوف تكون 1 نقوم بعمليات الدالة ثم تلقائيا تصبح قيمة i:=i+1 اي تصبح في هده الحالة 2 طالما ان i<=n نقوم بنفس العمل ادن في البرنامج الرئيسي اعطينا قيمة اولية ل i i:=1 هي القيمة الاولية التي كانت لدينا في الدالة for ثم وضعنا i:=i+1 هده العملية كانت تقوم بها الدالة for بعد انتهاء كل العمليات ادن يجب ان نضعها ايضا في اخر سطر داخل الدالة while -*- دائما عندما يكون لنا incrementation i:=i+1 ou decrementation i:=i-1 نضعها في اخر سطر-*- باستثناء بعض الحالات-*- من الدالة ما عدا دالة for التي تقوم به تلقائيا بقي الامر الاخير وهو شرط التوقف اي اننا نستمر في نفس العمل طالما ان i<=n وهنا وضعنا هده العبارة ضمن الدالة while واضفنا عبارة الربط و and ادن اصبحت الدالة while im$h while (n>=10) and (n<=20)and(i<=n) do begin اي يجب ان يكون n ينتمي الى المجال ويكون i اصغر او يساوي n ------------- اي سؤال تفضل بطرحه شكرا ----------------- |
||||
![]() |
رقم المشاركة : 13 | |||
|
![]() شكرا جزال الله خيراا |
|||
![]() |
رقم المشاركة : 14 | |||
|
![]() بخصوص البرنامج الثاني فهو شغال بنسبة 100/100 ولكن الحاسوب هو من يقوم باعطاء هده الاعداد -*- لان هدف البرنامج ليس اننا نحن من نقراه بل ان نرتبهم في جدولين جدول للاعداد الزوجية وجدول للاعداد الفردية -*- كود:
repeat x:=x-2; until x<2; if x=0 then tabpos[i]:=tab[i] else tabneg[i]:=tab[i]; mod للاسف جرب استعمال الدالة mod ولكن لم تنجح -*- كان هناك خلل-*- ادن الدالة repeat تقوم بكل مرة بوضع قيمة العنصر في x -*- نسخ -*- مثلا ادا كانت قيمة t[12]:=7 فاننا نضع القيمة 7 في المتغير كود:
x x:=t[i] 7>2 donc on fait -2 on a 5 -2 3 -2 1 1 اصغر من 2 نخرج من البوكل بما انه لدينا واحد ال>ي هو مغاير للصفر فالعدد فردي ادن نضعه في الجدول المخصص للاعداد الفردية ونفس الامر ادا كانت النتيجة مثلا 0 نضعه في الجدول المخصص لاعداد الزوجية لان القسمة التي نعبر عنها ب mod div ما هي الا عمليات طرح متتالية ادن الدالة كود:
repeat x:=x-2; until x<2; if x=0 then tabpos[i]:=tab[i] else tabneg[i]:=tab[i]; كود:
t[i] x ----------------------- |
|||
![]() |
رقم المشاركة : 15 | |||
|
![]() بخصوص وسائط الدردشة فلا امتلك اي حساب فيها الوسيلة الوحيدة للتواصل معي هي المنتدى عبر المواضيع او عبر الرسائل الخاصة-*- قد يتاخر الرد بسبب الجامعة -*- كود:
n!:=n*(n-1)! مثلا 5!:=5*4! نفس الامر بالنسبة للاس x**n:= x* x**n-1 ** تعني الاس مثلا x**5:=x*x**4 اكس اس 5 تساوي اكس مضروب في اكس اس 4 ادن في كل مرة لحساب الاس او العاملي الجديد ناخد القيمة الحايلة ونضربها في القيمة السابقة للاس او العاملي القديم من اجل هدا ولتسهيل البرنامج نقوم بوضع جدول للاعداد كود:
type tableau=array[0..20] of real; نقوم بعمل 3 جداول اخرى var f,p,s:tableau كود:
5!:= 5*4! ف 5 هي القيمة الحالة للمتغير i و4! هي القيمة السابقة للعنصر ادا كان لدينا الجمع العنصر الحيادي للجمع هو 0 بمعنا la valeau i,itaile de produit est 1 la valeau initiale de la somme est 0 ادن لنفترض اننا قرانا n:=5 و قرءنا x ادن نقوم بعمل دالة لحساب العاملي + القيمة الاولية للعاملي هي 1 -*- لان العاملي هو ضرب-*- اي كود:
f[o]:=1 for i:= 1 to 5 do t[i]:= i*t[i-1] اظن انها مفهومة طبقنا التعريف n!:=n*(n-1)! كل مرة نقوم بحساب العاملي نخزنه في الجدول f نفس الامر بالنسبة للاس نفس الطريقة ولكن نخزنها في الجدول p الان نقتقل للجمع la somme من اجل هدا علينا ان نقسم كود:
p[i]/f[i] مفهوم مثلا x**2/2! x**3/3! .هكدا s كود:
for i:=1 to 5 do s[i]:=p[i]/f[i] اخيرا علينا ان نجمع عناصر الجدول s نضع somme:=1 نضع العدد واحد 1 في المتغير 1 في هده الحالة -*- واضح كود:
for i:=1 to 5 do somme:=somme+t[i] somme ----------------------- الان بقي عليك برمجته بنفسك فقط وهو سهل جدا ويمكنك اختصار لي بوكل قدر الامكان ولكن هدا ادا اردت وادا لم ترد واحببت ترك عدد لي بوكل كما هو فالبرنامج صحيح |
|||
الكلمات الدلالية (Tags) |
مساعذة, مصيرية, الله, خيرا, جزاكم |
|
|
المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى
المنتدى غير مسؤول عن أي إتفاق تجاري بين الأعضاء... فعلى الجميع تحمّل المسؤولية
Powered by vBulletin .Copyright آ© 2018 vBulletin Solutions, Inc