مناقشة الوظيفة السابعة - عملي برمجة 2

كل ما يتعلق بمادة البرمجة 2 من استفسارات و مناقشات و محاضرات...........

المشرفون: Ghais, Karam

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة METAL GIRL » الأحد إبريل 17, 2011 3:36 pm

طيب عندي مشكلة هلا لما خلصت كتابة المكتبة وعملتلها كومبايل وحفظتها بالمكان يلي موجود فيو مكان ملف البرنامج
لما عم اكتب
CODE: تحديد الكل
uses test7;

واعمل f9 عم يعطيني رسالة
error 15 : file not found (test7.tpu)
وانا حاطة المكتبة بالبارتشن d وشفتها موجودة
:vma: :vma: شو الحل :cry: :cry: :cry: :cry:
صورة العضو الشخصية
METAL GIRL
عضو جديد
عضو جديد
 
مشاركات: 13
اشترك في: الخميس إبريل 14, 2011 5:44 pm
الجتس: أنثى
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الأولى

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة ocean » الأحد إبريل 17, 2011 3:43 pm

Ghais كتب:
Ghais كتب:
File > Change Dir

واختاري مسار المجلد اللي عم تشتغلي عليه
:iok:

:imb:
صورة
صورة العضو الشخصية
ocean
عضو فعال
عضو فعال
 
مشاركات: 792
اشترك في: الأحد ديسمبر 19, 2010 11:23 am
الجتس: أنثى
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية
الاختصاص: ذكاء صنعي

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة ocean » الأحد إبريل 17, 2011 3:45 pm

METAL GIRL كتب:
ocean كتب:
ITE-S3ed كتب:
ocean كتب:انا عندي اجرائية الادخال متل ما قلتوا انو دخات الامثال ونزلت سطر وبعدين دخلت x ونزلت سطر وبعديها الاس واخر شي دخلت المحرف فراغ(انو لما يصير المحرف/ يطلع من قراءة كثير الحدود)بس لما دخلتلوا المحرف طلع بس من البرنامج كلو :eek: :eek: يعني كاني عملت اغلاق للباسكال :evil: ففي شي حدا بيعرف شو السبب :cry:

طيب شو رأيك تحطي الاجرائية ولا حقوق النشر محفوظة :mrgreen:

طيب مع الله رح حطها :wink2:
CODE: تحديد الكل
procedure readpoly(var ls:lp);
var c:char;
begin
while (c<>'/')do
begin
readln(po.am);
readln(po.ch);
readln(po.dg);
readln(c);
tide(ls,po);
end;
end;

am الامثال وch هي x و dg هي درجة كثير الحدود ,c مبينة :imb:
واذا بدك بكتبلك اجرائية الtide كمان :wink:

طيب ليش كل مرة عم ندخل الاكس ليش مانخلي الريكورد عنا بس مندخلو الامثال والقوة لكل حد
ومنخلي الاكس بالطباعة يظهر هلأ انا هيك ساويت
CODE: تحديد الكل

while (sec_point <> nil) do
         begin

           rec1:= sec_point^.my_rec;
           sec_point:=sec_point^.next;
           
             write (rec1.num,'x^',rec1.power);


انك تحطيها او لا هاذا شي بيرجعلك يعني ع كيفك :mrgreen:
صورة
صورة العضو الشخصية
ocean
عضو فعال
عضو فعال
 
مشاركات: 792
اشترك في: الأحد ديسمبر 19, 2010 11:23 am
الجتس: أنثى
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية
الاختصاص: ذكاء صنعي

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة METAL GIRL » الأحد إبريل 17, 2011 3:57 pm

انحلت المشكلة الاولانية
بس طلعتلي مشكلة تانية :vma: :vma: :vma:
لما عم اعمل run عم يطلعلي Division by zero حدا بيعرف السبب ؟ :vma: :cry: :cry:
صورة العضو الشخصية
METAL GIRL
عضو جديد
عضو جديد
 
مشاركات: 13
اشترك في: الخميس إبريل 14, 2011 5:44 pm
الجتس: أنثى
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الأولى

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة ocean » الاثنين إبريل 18, 2011 4:55 pm

اليوم بحكم كان عنا برمجة فكان بدن
1-اجرائية الادخال نستخدمها بالضرب يلي حكا عنها سعيد
2-دمج السلسلتين لحتا نجمعن ونستخدم اجرائية الادخال كمان
3-باجرائية الطباعة مراعاة كل الحالات يعني اذا الاس صفر مايطبع :mrgreen: x0 واذا الامثال صفر ما يطبعوا وهيك
4- ما كان في اي طلب اضافي :wink2:
بالتوفيق :imb:
صورة
صورة العضو الشخصية
ocean
عضو فعال
عضو فعال
 
مشاركات: 792
اشترك في: الأحد ديسمبر 19, 2010 11:23 am
الجتس: أنثى
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية
الاختصاص: ذكاء صنعي

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة ITE-S3ed » الاثنين إبريل 18, 2011 5:07 pm

METAL GIRL كتب:انحلت المشكلة الاولانية
بس طلعتلي مشكلة تانية :vma: :vma: :vma:
لما عم اعمل run عم يطلعلي Division by zero حدا بيعرف السبب ؟ :vma: :cry: :cry:

مشكلتك انو البرنامج خلال التنفيذ في تعليمة قسمة على صفر لازم تشوف كل شي تعليمات فيها قسمة و تنتبه اذا القيمة يلي عم تقسم عليها ممكن تصير صفر خلال عمل البرنامج او لا
Bye !!(
صورة العضو الشخصية
ITE-S3ed
عضو نشيط
عضو نشيط
 
مشاركات: 1266
اشترك في: الاثنين سبتمبر 13, 2010 12:02 am
الجتس: ذكر
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية
الاختصاص: ذكاء صنعي

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة kelwa zoldik » الاثنين إبريل 18, 2011 5:11 pm

على فكرة اليوم كانت محاضرة العملي كتير كئيبة
شوفو يعني المهندسة منال بتقلي مابدي شفلك اليوم والمهندسة جمانة بتعطيني مثال بتقلي طبقو
يعني حتى ماكلفو خاطرون يشوفولي البرنامج مع انو راكز
على فكرة انتبهو وقت المناقشة لأنو عم يدققو كتير
... ولا تهنوا ولا تحزنوا وأنتم الأعلون إن كنتم مؤمنين ، ، ،
... إن يمسسكم قرحُ فقد مس القوم قرح مثله ،،،،،


أسفي الوحيد: أني لا أملك سوى حياة واحدة أضحي بها في سبيل وطني

يا الله , قَد ساقَني أمَلي إليك ,
خُذ بيَدي , وجُد عَليَّ بما لَديك ,
kelwa zoldik
عضو جديد
عضو جديد
 
مشاركات: 140
اشترك في: الأربعاء نوفمبر 24, 2010 4:51 pm
الجتس: أنثى
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: غير ذلك

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة HELP YOU » الاثنين إبريل 18, 2011 5:52 pm

أنا المهندسة منال شافتلي وعطتني طلب كتير سهل
وحطتلي A plus plus :nau: :nau: :nau:
والطلب هو كالتالي:
انو اذا دخلنا الامثال سالبة لازم ما يطبع اشارة ناقص وجنبا زائد لانو في كتير طلاب مو معالجين هي الحالة وعم يطبعو دائما اشارة زائد
مشان هيك منعالج الامثال ومنحط شرط اذا كانت اصغر من 0 يطبع كلشي بس يحط بدل طباعة زائد فراغ
وبهالحالة بتنزل اشارة ناقص متل ما هي
اما اذا كانت الامثال اكبر من 0 فلازم نطبع اشارة زائد لانو باسكال ما بحط الاشارة الموجبة تلقائيا.
كمان انتبهو عالجو شرط انو اذا كانت القوة لل X هي صفر ما تطبعو X اما اذا كانت القوة 1 فلا تطبعو القوة كمان
وكل هي الشروط عالجوها بالطباعة
واذا بتحبو هي اجرائية الطباعة من بعد اذن غيث: :wink2: :mrgreen: :wink2:
CODE: تحديد الكل
   procedure print(ls:l_p);
   var temp:l_p;
   begin
     temp:=ls;
     while(temp<>nil)do
       begin
         if (temp^.term.power=1)then
         begin
            if (temp^.term.exa<0)then
               begin
                 write(temp^.term.exa:1:0);
                 write(temp^.term.xx);
                 write('  ');
                 temp:=temp^.next;
               end
            else
            if (temp^.term.exa>0) then
               begin
                 write(temp^.term.exa:1:0);
                 write(temp^.term.xx);
                 write(' + ');
                 temp:=temp^.next;
               end;
         end
        else
        if (temp^.term.power=0)then
        begin
          if (temp^.term.exa<0) then
            begin
              write(temp^.term.exa:1:0);
              write(' ');
              temp:=temp^.next;
            end
          else
          if (temp^.term.exa>0)then
            begin
              write(temp^.term.exa:1:0);
              write(' + ');
              temp:=temp^.next;
            end;

        end
        else
        if (temp^.term.power>1) then
          begin
            if (temp^.term.exa>0) then
              begin
                write(temp^.term.exa:1:0);
                write(temp^.term.xx);
                write(temp^.term.power);
                write(' + ');
                temp:=temp^.next;
              end
            else
               if (temp^.term.exa<0) then
                 begin
                   write(temp^.term.exa:1:0);
                   write(temp^.term.xx);
                   write(temp^.term.power);
                   write(' - ');
                   temp:=temp^.next;
                 end;
          end;


       end;
   end;

كل هي الحالات لازم تعالجوا :wink: :wink:
موفقين :wink2: :wink: :wink2:
ذبحوا الأطفال يا رب..قصفوا المساجد يا رب..مزقوا قرآننا يا الله..دنسوا مقدساتنا يا الله
يا رب فلتقعقع أبواب السماء من عندك رجاءً يا الله..وليهتز عرشك غضباً يا الله ..
من نحن حتى تنصرنا يا الله...انصر دينك يا الله!!!
صورة العضو الشخصية
HELP YOU
مشرفة لوحة الإعلانات
مشرفة لوحة الإعلانات
 
مشاركات: 1150
اشترك في: الأربعاء سبتمبر 29, 2010 9:34 pm
مكان: في بلاد الله الواسعة
الجتس: أنثى
الشهادة الثانوية: تقنيات حاسوب
الجامعة: جامعة دمشق
الكلية: -----
المرحلة الدراسية: السنة الثالثة

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة M_H_A » الاثنين إبريل 18, 2011 11:42 pm

أنا عندي مشكلة (بدي نق وعذبكن مثل العادة)
بلا طول سيرة بعد ما أنهيت كتابة الوحدة و حفظتها وكلو كان تمام
الله غضب عليي و كترت غلبة وعملتلو destination memory قام طالعلي رموز غريبة عجيبة
وما قدرت و لا باي طريقة إني اقدر شوف المحتوى مرة تانية 
يللي عندو فكرة يرد بسرعة مشان غذا ما في أمل نعيد الوظيفة من الأول
ولكم الشكر سلفاً
Be successfull or die trying
if you think it is easy ...........THINK AGAIN
صورة العضو الشخصية
M_H_A
عضو جديد
عضو جديد
 
مشاركات: 99
اشترك في: الجمعة نوفمبر 19, 2010 6:12 pm
الجتس: ذكر
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة Ghais » الثلاثاء إبريل 19, 2011 12:08 am

M_H_A كتب:أنا عندي مشكلة (بدي نق وعذبكن مثل العادة)
بلا طول سيرة بعد ما أنهيت كتابة الوحدة و حفظتها وكلو كان تمام
الله غضب عليي و كترت غلبة وعملتلو destination memory قام طالعلي رموز غريبة عجيبة
وما قدرت و لا باي طريقة إني اقدر شوف المحتوى مرة تانية 
يللي عندو فكرة يرد بسرعة مشان غذا ما في أمل نعيد الوظيفة من الأول
ولكم الشكر سلفاً



إذا فيك ترفق الملف هون... ومنحاول نشوف شو المشكلة...
Ghais Zaher
ghais.speedy@gmail.com

syrian es

صورة العضو الشخصية
Ghais
مشرف منتديات السنة الأولى
مشرف منتديات السنة الأولى
 
مشاركات: 685
اشترك في: الجمعة أكتوبر 01, 2010 1:38 am
الجتس: ذكر
الشهادة الثانوية: سورية (علمي)
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة ITE-S3ed » الثلاثاء إبريل 19, 2011 12:33 am

M_H_A كتب:أنا عندي مشكلة (بدي نق وعذبكن مثل العادة)
بلا طول سيرة بعد ما أنهيت كتابة الوحدة و حفظتها وكلو كان تمام
الله غضب عليي و كترت غلبة وعملتلو destination memory قام طالعلي رموز غريبة عجيبة
وما قدرت و لا باي طريقة إني اقدر شوف المحتوى مرة تانية 
يللي عندو فكرة يرد بسرعة مشان غذا ما في أمل نعيد الوظيفة من الأول
ولكم الشكر سلفاً

الخيار : destination memory:
معناتها انو التنفيذ عم يتم عالذاكرة
الخيار : destination disk :
معناتها انو التنفيذ عالهارد ديسك
والتنفيذ عالذاكرة اسرع

هدول الخيارين المفروض ما يأثر عالكود انا جربتن وما أثرو منوب الا اذا انت مساوي شي تاني
على كل حال اذا فيك تحط الملف بكون كتيييير منيح .....
Bye !!(
صورة العضو الشخصية
ITE-S3ed
عضو نشيط
عضو نشيط
 
مشاركات: 1266
اشترك في: الاثنين سبتمبر 13, 2010 12:02 am
الجتس: ذكر
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية
الاختصاص: ذكاء صنعي

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة Ghais » الجمعة إبريل 29, 2011 9:46 pm

كودي...

أولاً : التعريفات :

CODE: تحديد الكل
unit HW07PolyUnit;

interface


CODE: تحديد الكل
type
  PolyItemType=record
    a:real;
    n:integer;
  end;

  ListPointer=^ListRecord;
  ListRecord=record
    Item:PolyItemType;
    next:ListPointer;
  end;


ثانياً :
CODE: تحديد الكل
implementation


إجرائية إضافة عنصر في السلسلة :
CODE: تحديد الكل
Procedure PolyInsert(Var ListStart:ListPointer; ItemToAdd:PolyItemType);
var
  PrevItem,NextItem,Temp:ListPointer;
  Located:Boolean;
begin
  New(Temp);
  Temp^.Item:=ItemToAdd;
  Temp^.next:=nil;

  Located:=False;

  if ListStart=nil then
    ListStart:=Temp
  else
    begin
      NextItem:=ListStart;
      while (NextItem<>nil) and (not Located) do
        if NextItem^.Item.n > ItemToAdd.n then
          begin
            PrevItem:=NextItem;
            NextItem:=NextItem^.next
          end
        else
          Located:=True;

      if (NextItem<>nil) and (NextItem^.Item.n = ItemToAdd.n) then
        NextItem^.Item.a:=NextItem^.Item.a + ItemToAdd.a
      else
        begin
          Temp^.next:=NextItem;
          if NextItem = ListStart then
            ListStart:=Temp
          else
            PrevItem^.next:=Temp;
        end;
    end;

end;


إجرائية قراءة كثير الحدود :
CODE: تحديد الكل
Procedure ReadPoly(Var ListStart:ListPointer);
var
  ItemToAdd:PolyItemType;
  Choice:Char;
begin
  writeln('~~~~~~ Add items ~~~~~~');
  writeln('~~~~~~   a*x^n   ~~~~~~');
  Choice:='Y';
  while Choice in ['y','Y'] do
    begin
      write('Enter a: ');readln(ItemToAdd.a);
      write('Enter n: ');readln(ItemToAdd.n);
      if ItemToAdd.a <> 0 then     
        PolyInsert(ListStart,ItemToAdd);
      writeln('Do you want to add more items? (Y/N)');
      readln(Choice);
    end;
end;


ثالثاً : إجرائية جمع كثيري حدود :
CODE: تحديد الكل
Procedure AddPoly(var P1,P2,P3:ListPointer);
var
  Temp:ListPointer;
begin
  Temp:=P1;
  while Temp <> nil do
    begin
      PolyInsert(P3,Temp^.Item);
      Temp:=Temp^.next;
    end;

  Temp:=P2;
  while Temp <> nil do
    begin
      PolyInsert(P3,Temp^.Item);
      Temp:=Temp^.next;
    end;
end;


رابعاً : إجرائية ضرب كثيري حدود :
CODE: تحديد الكل
Procedure MultPoly(var P1,P2,P3:ListPointer);
var
  Temp1,Temp2:ListPointer;
  ItemToAdd:PolyItemType;
begin
  Temp1:=P1;
  while Temp1<>nil do
    begin
      Temp2:=P2;
      while Temp2<>nil do
        begin
          ItemToAdd.a := Temp1^.Item.a * Temp2^.Item.a;
          ItemToAdd.n := Temp1^.Item.n + Temp2^.Item.n;
          PolyInsert(P3,ItemToAdd);
          Temp2:=Temp2^.next;
        end;

      Temp1:=Temp1^.next;
    end;
end;


خامساً : إجرائية طباعة كثير حدود :
CODE: تحديد الكل
Procedure PrintPoly(var ListStart:ListPointer);
var
  Temp:ListPointer;
begin
  Temp:=ListStart;
  while Temp<>nil do
    begin
      if (Temp<>ListStart) and (Temp^.Item.a > 0) then
        write('+');
      write(Temp^.Item.a:0:1);
      if Temp^.Item.n <> 0 then
        begin
          write('*x');
          if (Temp^.Item.n <> 1) then
           write('^',Temp^.Item.n);
        end;
      write(' ');
      Temp:=Temp^.next;
    end;

  writeln;
end;


سادساً : إجرائية مساعدة لمحو سلسلة :
CODE: تحديد الكل
Procedure KillList(var ListStart:ListPointer);
var
  Temp:ListPointer;
begin
  while ListStart<>nil do
    begin
      Temp:=ListStart;
      ListStart:=ListStart^.next;
      Dispose(Temp);
    end;
end;




سابعاً : الاستدعاءات في البرنامج الرئيسي :
CODE: تحديد الكل
uses
  HW07PolyUnit;

var
  P1,P2,P3:ListPointer;


CODE: تحديد الكل
begin
  P1:=nil;
  P2:=nil;
  P3:=nil;
  writeln('~~~P1~~~');
  ReadPoly(P1);
  write('P1=');
  PrintPoly(P1);

  writeln;writeln;
  writeln('~~~P2~~~');
  ReadPoly(P2);
  write('P2=');
  PrintPoly(P2);

  writeln;writeln;
  writeln('~~~P1+P2~~~');
  AddPoly(P1,P2,P3);
  write('P1+P2=');
  PrintPoly(P3);

  KillList(P3);

  writeln;writeln;
  writeln('~~~P1*P2~~~');
  MultPoly(P1,P2,P3);
  write('P1*P2=');
  PrintPoly(P3);

  Readln;
end.


جاهز لأي استفسار

:iok:
Ghais Zaher
ghais.speedy@gmail.com

syrian es

صورة العضو الشخصية
Ghais
مشرف منتديات السنة الأولى
مشرف منتديات السنة الأولى
 
مشاركات: 685
اشترك في: الجمعة أكتوبر 01, 2010 1:38 am
الجتس: ذكر
الشهادة الثانوية: سورية (علمي)
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة ITE-S3ed » الجمعة إبريل 29, 2011 10:28 pm

والله شهيتني حط برنامجي

1- التعريفات :
CODE: تحديد الكل
type
  poll = record
    pow:integer;
    c : real;
  end;
  po = ^poly;
  poly = record
    pol:poll;
    next : po;
  end;
var
  ls ,ls1,ls2 :po;
  i:integer;


2- اجرائية الاضافة :
CODE: تحديد الكل
procedure insert ( var ls:po;ps:poll);
var
  temp , s ,l: po;
  located : boolean;
begin
  new (temp);
  temp^.pol:=ps;
  temp^.next:=nil;

  if ls = nil then
    ls := temp
  else

    begin
      s := ls ;
      located := false;
      while ( s <> nil ) and (not located) do
         if (s^.pol.pow > ps.pow) then
             begin
               l := s ;
               s := s^.next;
             end
         else
             located:=true;
      if (s^.pol.pow = ps.pow)and(s <> nil) then
         s^.pol.c := s^.pol.c + ps.c
      else
       begin
         temp^.next := s;
         if (ls = s) then
           ls := temp
          else
           l^.next:=temp;
       end;
    end;
end;


3- اجرائية القراءة :
CODE: تحديد الكل
procedure readpoly (var ls:po ) ;
var
  temp:poll;
  c1 : char;
begin
  repeat
     writeln ('the real part: ');
     readln(temp.c );
     writeln('the power: ');
     readln (temp.pow);
     writeln ('If you want to insert anew part press ( y ) else press (N) ');
     insert (ls,temp);
     readln(c1);
  until (c1 = 'n');


4- اجرائية الطباعة :
CODE: تحديد الكل
procedure print ( ls:po);
var
  s:po;
begin
   s:=ls;
   write('F(X) = ');
   while s <> nil do
   begin
     if s^.pol.c <> 0 then
     begin
       if  s^.pol.pow = 0 then
         write(S^.pol.c:2:1)
       else if (s^.pol.pow = 1)and(s^.next <> nil) then
              write(s^.pol.c:2:1,'X + ')
            else
             if s^.next <> nil then
               write(s^.pol.c:2:1,'X^',s^.pol.pow,' + ')
             else
               write(s^.pol.c:2:1,'X^',s^.pol.pow);
     s:=S^.next;
     end
     else if s^.pol.c < 0 then
          begin
             if  s^.pol.pow = 0 then
                 write(S^.pol.c:2:1)
             else if (s^.pol.pow = 1)and(s^.next <> nil) then
                      write(s^.pol.c:2:1,'X')
                  else
                     if s^.next <> nil then
                        write(s^.pol.c:2:1,'X^',s^.pol.pow)
                     else
                        write(s^.pol.c:2:1,'X^',s^.pol.pow);
            s:=S^.next;
          end
          else
            s:=s^.next;
   end;
     writeln;
end;


5- اجرائية الجمع :
CODE: تحديد الكل
procedure addpoly (var ls2:po; ls,ls1:po);
var
  t,t1:po;
begin
  t:=ls; t1:=ls1;
  while t <>  nil do
    begin
      insert (ls2,t^.pol);
      t := t^.next;
    end;
  while t1 <> nil do
    begin
      insert(ls2,t1^.pol);
      t1 := t1^.next;
    end;
end;


6- اجرائية الضرب:
CODE: تحديد الكل
procedure multpoly(var ls2:po;ls,ls1:po);
var
  t,t1 : po;
  temp:poll;
begin
  t:=ls;
  while t <> nil do
    begin
      t1 := ls1;
      while t1 <> nil do
         begin
           temp.pow:=t^.pol.pow + t1^.pol.pow;
           temp.c := t^.pol.c * t1^.pol.c;
           insert(ls2,temp);
           t1:= t1^.next;
         end;
         t:=t^.next;
    end;
end;


7- اجرائية بمررلها سلسلة بترجعلي الـ Ls := nil يعني تفريغ سلسلة :
CODE: تحديد الكل
procedure del (var l_s:po);
var
  t:po;
begin
  t:=l_s;
  l_s:=l_s^.next;
  while t <> nil do
     begin
       dispose(t);
       t:=l_s;
       l_s:=l_s^.next;
     end;
  l_s:=nil;
end;


الاستدعاءات:
CODE: تحديد الكل
program hw7;
uses
  unit1;

begin
   writeln(' ********** Enter P1 **********');
   readpoly(ls);
   writeln(' ********** Enter P2 **********');
   readpoly(ls1);
   writeln(' ********** P1 Series **********');
   print(ls);
   writeln(' ********** P1 Series **********');
   print(ls1);
   addpoly(ls2,ls,ls1);
   writeln(' ********** P1 + P2 **********');
   print (ls2);
   del(ls2);
   multpoly(ls2,ls,ls1);
   writeln(' **********  P1 * P2  **********');
   print (ls2);
   readln; readln; readln;
end.



بالتوفيق ..
.. :iok: :iok: ..
Bye !!(
صورة العضو الشخصية
ITE-S3ed
عضو نشيط
عضو نشيط
 
مشاركات: 1266
اشترك في: الاثنين سبتمبر 13, 2010 12:02 am
الجتس: ذكر
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية
الاختصاص: ذكاء صنعي

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة Ghais » الجمعة إبريل 29, 2011 10:38 pm

لهالدرجة كودي بيشهي !
صورة
Ghais Zaher
ghais.speedy@gmail.com

syrian es

صورة العضو الشخصية
Ghais
مشرف منتديات السنة الأولى
مشرف منتديات السنة الأولى
 
مشاركات: 685
اشترك في: الجمعة أكتوبر 01, 2010 1:38 am
الجتس: ذكر
الشهادة الثانوية: سورية (علمي)
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة ITE-S3ed » الجمعة إبريل 29, 2011 11:07 pm

Ghais كتب:لهالدرجة كودي بيشهي !
صورة

لا والله ما قرأته :imb: بس ... انعمى على قلبي و شكرتك :nau:
Bye !!(
صورة العضو الشخصية
ITE-S3ed
عضو نشيط
عضو نشيط
 
مشاركات: 1266
اشترك في: الاثنين سبتمبر 13, 2010 12:02 am
الجتس: ذكر
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية
الاختصاص: ذكاء صنعي

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة OPADA-Eng » السبت إبريل 30, 2011 12:02 pm

ITE-S3ed كتب:
Ghais كتب:لهالدرجة كودي بيشهي !
صورة

لا والله ما قرأته :imb: بس ... انعمى على قلبي و شكرتك :nau:

اي بسيطة مو حجة هي فيك تحذفو :nau: :nau: :nau: :eek:
.. نحن قوم أعزنا الله بالإسلام فلا نطلب بغير الله بديلاً ..

عمر بن الخطاب
صورة العضو الشخصية
OPADA-Eng
عضو نشيط
عضو نشيط
 
مشاركات: 1433
اشترك في: الأحد سبتمبر 26, 2010 6:29 pm
مكان: بلد القرآن
الجتس: ذكر
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة OPADA-Eng » السبت إبريل 30, 2011 12:18 pm

امري لـ الله مع انو حقوق النشر محفوظة :nau:
هي كودي كامل مكمل :nau: :wink2:
اولا: التعريفات::
CODE: تحديد الكل
interface
type
 poly=record
   a:real;
   alpha:integer;
   x:char;
 end;
 pelem=^psll;
 psll=record
   po:poly;
   next:pelem;
 end;

var
 ls1,ls2,ls3,ls4:pelem;
 rec,pol,y1,y2:poly;

procedure readpoly(var ls:pelem);
procedure addpoly(var ls3:pelem);
procedure writepoly(ls:pelem);
procedure multpoly(var ls4:pelem);


ثانيا: اجرائية الانسرت ::
CODE: تحديد الكل
procedure insert(var ls:pelem;x:poly);
 var
  temp,s,l:pelem;
  cond:boolean;
 begin
  cond:=false;
  new(temp);
  temp^.po:=x;
  temp^.next:=nil;
  if ls=nil then
   ls:=temp
  else
   begin
    s:=ls;
    while (s<>nil)and not cond do
     begin
      if s^.po.alpha > temp^.po.alpha then
       begin
        l:=s;
        s:=s^.next;
       end
      else
        cond:=true;
     end;
    temp^.next:=s;
    if ls=s then
     ls:=temp
    else
     l^.next:=temp;
   end;
 end;


ثالثا: اجرائية قراءة الحدود::
CODE: تحديد الكل
procedure readpoly(var ls:pelem);
 var
  c:char;
 begin
  repeat
    with pol do
     begin
      writeln('enter a: ');
      readln(a);
      writeln('enter the power of X:');
      readln(alpha);
      x:='x';
     end;
    insert(ls,pol);
    writeln('do you want enter another poly//y=yes//other=no//');
    readln(c);
  until (c<>'y');
 end;


رابعا: اجرائية الجمع ::
CODE: تحديد الكل
procedure addpoly(var ls3:pelem);
 var
 y3:poly;
 s,l:pelem;
 begin
  s:=ls1;
  l:=ls2;
  while (s<>nil)or(l<>nil) do
   if l^.po.alpha>s^.po.alpha then
    begin
     y3:=l^.po;
     insert(ls3,y3);
     l:=l^.next;
    end
   else if (l^.po.alpha=s^.po.alpha) then
    begin
     y3.a:=l^.po.a+s^.po.a;
     y3.alpha:=s^.po.alpha;
     y3.x:='x';
     insert(ls3,y3);
     s:=s^.next;
     l:=l^.next;
    end
   else
    begin
      y3:=s^.po;
      insert(ls3,y3);
      s:=s^.next;
    end;
 end;


خامسا: اجرائية الضرب::(بطريقة معقدة شوي بس شغالة ^_^*)
CODE: تحديد الكل
procedure multpoly(var ls4:pelem);
var
 y3:poly;
 s,l,temp:pelem;
 cond,co:boolean;
 begin
   l:=ls1;
   s:=ls2;
   cond:=false;
   while l<>nil do
    begin
      y1.alpha:=l^.po.alpha;
      y1.a:=l^.po.a;
      while s<>nil do
       begin
         co:=true;
         y2.alpha:=s^.po.alpha;
         y2.a:=s^.po.a;
         y3.alpha:=y1.alpha+y2.alpha;
         y3.a:=y1.a*y2.a;
         y3.x:='x';
         if cond then
          begin
           temp:=ls4;
           while temp<>nil do
            if y3.alpha=temp^.po.alpha then
             begin
              temp^.po.a:=temp^.po.a+y3.a;
              co:=false;
              temp:=temp^.next;
             end
            else
              temp:=temp^.next;
          end;
          if co then
             insert(ls4,y3);
          s:=s^.next;
       end;
      s:=ls2;
      cond:=true;
      l:=l^.next;
    end;
 end;

سادسا: اجرائية الطباعة ::
CODE: تحديد الكل
procedure writepoly(ls:pelem);
 var
  temp:pelem;
 begin
   temp:=ls;
   while temp<>nil do
    begin
      if temp^.po.alpha=0 then
       write(temp^.po.a:8:1)
      else if temp^.po.alpha=1 then
       write(temp^.po.a:8:1,temp^.po.x)
           else
             write(temp^.po.a:8:1,temp^.po.x,temp^.po.alpha,'+');
      temp:=temp^.next;
    end;
 end;


سابعا: الـ begin+ end لليونيت ::
CODE: تحديد الكل
begin
 ls1:=nil;
 ls2:=nil;
 ls3:=nil;
 ls4:=nil;
end.

ثامنا: البرنامج الرئيسي واستدعاء الاجرائيات ::
CODE: تحديد الكل
program OPADA-Eng;

{$APPTYPE CONSOLE}
uses
  sllunite;

begin
 writeln('enter the polys of p1');
 readpoly(ls1);
 writeln('-------------------------------------------');
 writeln('enter the polys of p2');
 readpoly(ls2);
 writeln('-------------------------------------------');
 writeln(' poly 1 is :');
 writepoly(ls1);
 writeln;
 writeln('==========================================');
 writeln;
 writeln(' poly 2 is :');
 writepoly(ls2);
 writeln;
 addpoly(ls3);
 writeln('---------------sum poly----------------');
 writeln;
 writepoly(ls3);
 writeln;
 writeln('-------------- mult poly --------------');
 writeln;
 multpoly(ls4);
 writepoly(ls4);
 readln;
end.


واي استفسار انا جاهز ....
بالتوفيق :iok:
.. نحن قوم أعزنا الله بالإسلام فلا نطلب بغير الله بديلاً ..

عمر بن الخطاب
صورة العضو الشخصية
OPADA-Eng
عضو نشيط
عضو نشيط
 
مشاركات: 1433
اشترك في: الأحد سبتمبر 26, 2010 6:29 pm
مكان: بلد القرآن
الجتس: ذكر
الشهادة الثانوية: سورية
الجامعة: جامعة دمشق
الكلية: الهندسة المعلوماتية
المرحلة الدراسية: السنة الثانية

Re: مناقشة الوظيفة السابعة - عملي برمجة 2

مشاركة غير مقروءةبواسطة shimaaomara1 » الجمعة ديسمبر 06, 2013 4:27 pm

shimaaomara1
عضو جديد
عضو جديد
 
مشاركات: 13
اشترك في: الجمعة ديسمبر 06, 2013 3:52 pm
الجتس: أنثى
الشهادة الثانوية: مصريه
الجامعة: جامعه بنها
الكلية: التربيه النوعيه
المرحلة الدراسية: السنة الأولى
الاختصاص: غير ذلك

السابق

العودة إلى البرمجة 2

الموجودون الآن

المستخدمون المتصفحون لهذا المنتدى: لا يوجد أعضاء مسجلين متصلين و 2 زائر/زوار

cron