الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عندي خطأ في مشروع بلغة برولوغ بس مافهمته

بدأه زينب هادي في 8 يناير 2010 · 6 رد · 1,587 مشاهدة · في الذكاء الاصطناعي وتطبيقاته
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

انا كتبت البرنامج وبيطلع لي خطأ واحد , بس ما فهمت معنى الخطأ :hmm: لذلك ما قدرت أصححه

هذا الخطأ اللي بيطلع :

clauses for the same predicate should be grouped action

بيطلع في هذا الجزء من البرنامج :

action(_):-

write(" ERROR .. (from 1 to 7)!").

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

action(_) (هنا ):-

يعنى ايش معنى الخطأ وانا أصلحه :calc:

هي المشكلة بسيطة بس انا مبتدئة جداااااااااااا في اللغة :wink:

ولكم جزيل الشكر

القدس عروس عربية

#2

السلام عليكم ..

للاسف ان لا يوجد ليس لدي برولوغ على الجهاز لكي اجرب بها , اجمالا اتوقع انه خطأ في كتابة الشروط Clause اقصد كتابتها من ناحية (syntax) والله اعلم , على كل اتمنى ان تقومي بتحميل هذه الملفات , والتي سوف تفيدك ان شاء الله .. الذكاء الاصطناعي ( ملفات يوجد بها شروحات ) في المشاركه رقم 3 ..

بالتوفيق

#3

الافضل وضع الكود كامل وان شاء الله تجدي المساعده.

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#4

مشكوووور استاذ حسان ..

مشكوووور استاذ ابراهيم ..

وهذا هو الكود كامل بس ينقصه بعض التعديل ..

القدس عروس عربية

#5

عفوا .... هذا الكود .

.

PREDICATES
nott(integer , integer)
andd(integer , integer, integer)
orr(integer , integer, integer)
xoor(integer , integer, integer)
action(integer)

CLAUSES
  action(1):-
	nl,
	write("Enter tow binary number to  used OR gate.").
	readint(Num),
	  readint(Num1),
          orr(Num,Num1,Num2),nl.
	 orr(0,0,0).
        orr(0,1,1).
        orr(1,0,1).
        orr(1,1,1).

  action(2):-
	nl,
	write("Enter tow binary number to used AND gates .").
	 readint(Num),
	  readint(Num1),
          andd(Num,Num1,Num2),nl.
	 andd(0,0,0).
        andd(0,1,0).
        andd(1,0,0).
        andd(1,1,1).


  action(3):-
	nl,
	 write("Enter tow binary number to used XOR gate ."), 


	nott(0,1).
        nott(1,0).

        andd(0,0,0).
        andd(0,1,0).
        andd(1,0,0).
        andd(1,1,1).

        orr(0,0,0).
        orr(0,1,1).
        orr(1,0,1).
        orr(1,1,1).

       xoor(I1 , I2 , O):-
       nott(I1, N1),
       nott(I2 , N2),
       andd(N1 , I2 , N4),
       andd(N2 , I1 , N3),
       orr(N3, N4 , O),
          readint(Num),
	  readint(Num1),
          xoor(Num,Num1,Num2),nl,
          write(Num2).

  action(_):-
        nl,
	write("  ERROR .. (from 1 to 3)!").

GOAL

  write("      ***  WELCOME TO LOGICAL GATES PROGRAM  *** "), nl,
  write("  1. OR . "),nl, 
  write(" 2. AND . "),nl,
  write(" 3. XOR . "),nl,

  write("CHOOSE a number from 1 to 3: "), 
  readint(Num),
  action(Num),nl.

123.txt

تم تعديل هذه المشاركة بواسطة ibr_exn في 8 يناير 2010 في 23:07

القدس عروس عربية

#6

قد تكون المشكلة في اختلاف نسخة البرولوج .

اقترح اعتماد الكتاب التالي لتعلم البرولوج :

Learn Prolog Now

مع التطبيق العملي على :

نسخة برولوج المجانيه

وهذا موقع اخر به العديد من الامثله :

امثلة عملية على برولوج

بالتوفيق،

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#7

مشكوووووووووووووووووووور جدا استاذ ابراهيم

وعفوا على الإزعاج

القدس عروس عربية

مواضيع مشابهة