موضوع مميز ملتقى طلاب الاعلام الالي لحل تمارين Algorithmes et programmation en Pascal - منتديات الجلفة لكل الجزائريين و العرب

العودة   منتديات الجلفة لكل الجزائريين و العرب > منتديات الجامعة و البحث العلمي > منتدى الهندسة > قسم الرياضيات و الاعلام الالي

في حال وجود أي مواضيع أو ردود مُخالفة من قبل الأعضاء، يُرجى الإبلاغ عنها فورًا باستخدام أيقونة تقرير عن مشاركة سيئة ( تقرير عن مشاركة سيئة )، و الموجودة أسفل كل مشاركة .

آخر المواضيع

ملتقى طلاب الاعلام الالي لحل تمارين Algorithmes et programmation en Pascal

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 2012-11-03, 19:44   رقم المشاركة : 1
معلومات العضو
salemk
عضو مشارك
 
الصورة الرمزية salemk
 

 

 
إحصائية العضو










افتراضي

التمرين الاول

كود:
program suite;
uses wincrt;
var
n,i,u0,v0,w0,un,vn,wn:longint;
begin
u0:=1;
v0:=2;
w0:=3;
readln(n);

for i :=1 to n do
begin
un:=2*u0+3*v0+w0;
vn:=u0+v0+2*w0;
wn:=u0+4*v0+w0;
u0:=un;
v0:=vn;
w0:=wn;
end;
writeln('U(',n,')= ',u0);
writeln('V(',n,')= ',v0);
writeln('W(',n,')= ',w0);
end.
Les programmes de l’exercice1 et la solution précédant tournent bien.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Le programme qui suit est théorique car sous un éditeur Pascal lors de la déclaration des modules on s’assure de la visibilité des objets et de l’ordre des définitions qui doit être conformes aux appels des modules.
Dans U on appel V et W, pour calculer V on appel U et W et pour W on utilise U et V : c’est une récursivité croisée, l’éditeur Pascal ne permet pas une telle récursivité
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
كود:
program suite;
uses wincrt;

function u(n:longint):longint;
begin
if n=0 then
   u:=1
   else
       u:= 2*u(n-1)+3*v(n-1)+w(n-1);
end;

function v(n:longint):longint;
begin
if n=0 then
   v:=2
   else
       v:= u(n-1)+v(n-1)+2*w(n-1);
end;

function w(n:longint):longint;
begin
if n=0 then
   w:=3
   else
       w:= u(n-1)+4*v(n-1)+w(n-1);
end;

var
n: longint;

begin
readln(n);

writeln('U(',n,')= ',u(n));
writeln('V(',n,')= ',v(n));
writeln('W(',n,')= ',w(n));
end.








 


رد مع اقتباس
قديم 2012-11-03, 21:49   رقم المشاركة : 2
معلومات العضو
you92cef
عضو محترف
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة salemk مشاهدة المشاركة
التمرين الاول

كود:
program suite;
uses wincrt;
var
n,i,u0,v0,w0,un,vn,wn:longint;
begin
u0:=1;
v0:=2;
w0:=3;
readln(n);

for i :=1 to n do
begin
un:=2*u0+3*v0+w0;
vn:=u0+v0+2*w0;
wn:=u0+4*v0+w0;
u0:=un;
v0:=vn;
w0:=wn;
end;
writeln('U(',n,')= ',u0);
writeln('V(',n,')= ',v0);
writeln('W(',n,')= ',w0);
end.
Les programmes de l’exercice1 et la solution précédant tournent bien.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Le programme qui suit est théorique car sous un éditeur Pascal lors de la déclaration des modules on s’assure de la visibilité des objets et de l’ordre des définitions qui doit être conformes aux appels des modules.
Dans U on appel V et W, pour calculer V on appel U et W et pour W on utilise U et V : c’est une récursivité croisée, l’éditeur Pascal ne permet pas une telle récursivité
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
كود:
program suite;
uses wincrt;

function u(n:longint):longint;
begin
if n=0 then
   u:=1
   else
       u:= 2*u(n-1)+3*v(n-1)+w(n-1);
end;

function v(n:longint):longint;
begin
if n=0 then
   v:=2
   else
       v:= u(n-1)+v(n-1)+2*w(n-1);
end;

function w(n:longint):longint;
begin
if n=0 then
   w:=3
   else
       w:= u(n-1)+4*v(n-1)+w(n-1);
end;

var
n: longint;

begin
readln(n);

writeln('U(',n,')= ',u(n));
writeln('V(',n,')= ',v(n));
writeln('W(',n,')= ',w(n));
end.
الحل الاول يشتغل جيدا

الحل الثاني هناك خطا *-* باللون الاحمر

وهذا ما اشرت اليه سابقا بحيث انني اجد صعوبة في استدعاء دالة داخل دالة رغم ان الاستاذ قال انه يمكنك استدعاء دالة في اي مكان تريد

عموما سوف احتفظ بالحل عندي وسوف احالو القيام بحل بالطريقة الثانية اعتمادا على الطريقة الاولى









رد مع اقتباس
إضافة رد

الكلمات الدلالية (Tags)
ملتقى, الالي, الاعلام, طلاب


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

الساعة الآن 14:31

المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى
المنتدى غير مسؤول عن أي إتفاق تجاري بين الأعضاء... فعلى الجميع تحمّل المسؤولية


2006-2024 © www.djelfa.info جميع الحقوق محفوظة - الجلفة إنفو (خ. ب. س)

Powered by vBulletin .Copyright آ© 2018 vBulletin Solutions, Inc