النتائج 1 إلى 4 من 4
الموضوع:

امثلة محلولة لغة البرولوك

الزوار من محركات البحث: 67 المشاهدات : 1230 الردود: 3
جميع روابطنا، مشاركاتنا، صورنا متاحة للزوار دون الحاجة إلى التسجيل ، الابلاغ عن انتهاك - Report a violation
  1. #1
    من المشرفين القدامى
    flower flower
    تاريخ التسجيل: August-2012
    الدولة: ίŔắq
    الجنس: أنثى
    المشاركات: 5,703 المواضيع: 231
    صوتيات: 0 سوالف عراقية: 1
    التقييم: 1407
    مزاجي: เ ๔๏ภ๏t кภ๏ฬ
    المهنة: خريجة جامعية
    أكلتي المفضلة: đÀrk chŌÇΘĽÁτẻ
    موبايلي: nokia n8
    آخر نشاط: 21/November/2017
    مقالات المدونة: 6

    Smileys Waving امثلة محلولة لغة البرولوك


    مجموعة من الأمثله المحلولة في البرمجة المنطقية (البرولوك)للمرحلة الثانية لطلبة الحاسوب ؟أن شاء أكمل الحلول لبقية اللغات

    مجموعة من الأمثله المحلولة
    ÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷-÷

    domains
    X=integer*
    predicates
    sum(X,X)
    rev(X,X)
    find(X,X,integer,X)
    last(X,integer)
    app(X,X,X)
    mem(integer,X)
    clauses
    app([],L,L):-!.
    app([H|L],L2,[H|L3]):-not(mem(H,L)),not(mem(H,L2)),!,app(L,L2,L3).
    app([_|L],L2,L3):-app(L,L2,L3).
    mem(X,[X|_]):-!.
    mem(X,[_|L]):-mem(X,L).
    rev([],[]):-!.
    rev([H|L],R):-rev(L,R1),app(R1,[H],R).
    sum([],[]):-!.
    sum([H1,H2|L],[K|L1]):-H1+H2=K,sum(L,L1).
    find(L,L1,K,L2):-sum(L,L1),last(L,K),rev(L1,L2).
    last([X],X):-!.
    last([_|T],X):-last(T,X).

    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    لأيجاد أكبر وأصغر عنصر في قائمة وطول قائمة وغيرها
    domains
    X=integer
    L=integer*
    predicates
    length(L,X).
    max(X,L).
    min(X,L).
    mul(X,X,X,X).
    add1(L,L).
    clauses
    length([],0):-!.
    length([_|T],L):-length(T,L1),L=L1+1.
    max(M,[M]):-!.
    max(M,[H1,H2|T]):-H1>=H2,max(M,[H1|T]).
    max(M,[H1,H2|T]):-H2>H1,max(M,[H2|T]).
    min(N,[N]):-!.
    min(N,[H1,H2|T]):-H1<=H2,min(N,[H1|T]).
    min(N,[H1,H2|T]):-H2<=H1,min(N,[H2|T]).
    add1([H1|T1],[H2|T2]):-H2=H1+1,add1(T1,T2).
    mul(L,M,N,R):-L mod 2=0,R=L*M.
    run(L,M,N,T2,R,X):-length(X,L),max(M,X),min(N,X),add1(X,T2),mul(L,M,N ,R).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــ
    لأيجاد مجموع العدد الفردي فقط
    N=9
    S=1+3+5+7+9

    domains
    X=integer.
    predicates
    sum(integer,integer).
    clauses
    sum(1,1).
    sum(N,S):-N1=N-2,sum(N1,S1),S=N+S1.
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــ
    لقسمة مفكوك رقم على نفسه مرفوع للقوة
    {B}

    domains
    x=integer.
    z=real.
    predicates
    power(x,x,x).
    fact(x,x).
    div(x,x,z).
    clauses
    fact(0,1):-!.
    power(_,0,1):-!.
    fact(N,F):-N1=N-1,fact(N1,F1),F=N*F1.
    power(X,Y,Z):-Y1=Y-1,power(X,Y1,Z1),Z=X*Z1.
    div(A,B,Z):-fact(A,F),power(A,B,Z),Z=fact(A,F)/power(A,B,Z).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــ
    لحذف عنصر من قائمة وحساب عدد مرات الحذف
    domains
    T=integer*.
    X=integer.
    predicates
    del(X,T,T,X).
    clauses
    del(_,[],[],0):-!.
    del(X,[X|T1],T2,B):-del(X,T1,T2,B1),B=B1+1.
    del(X,[Y|T1],[Y|T2],B1):-del(X,T1,T2,B1),!.
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــ
    لتقسيم قائمة الى قائمتين
    domains
    x=integer*.
    predicates
    split(x,x,x).
    clauses
    split([],[],[]):-!.
    split([H1,H2|T1],[H1|T2],[H2|T3]):-split(T1,T2,T3).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    {لطباعة نوع القيمة المدخلة ؟ {فردية أم زوجية
    predicates
    div1(integer,string)
    clauses
    div1(X,B):-X mod 2=0,B= even.
    div1(X,B):-X mod 2<>0,B=odd.
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    لأيجاد قائمة بالعناصر المشتركة بين قائمتين
    domains
    X=integer*.
    L=integer.
    predicates
    mem(L,X).
    inter(X,X,X).
    clauses
    mem(X,[X|_]):-!.
    mem(X,[_|T]):-mem(X,T).
    inter([],[],[]):-!.
    inter([],_,[]):-!.
    inter([H|T1],T2,T3):-not(mem(H,T2)),inter(T1,T2,T3).
    inter([H|T1],T2,[H|T3]):-mem(H,T2),inter(T1,T2,T3).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    عمليتي الجمع والضرب
    predicates
    sum(integer,integer,integer)
    mult(integer,integer,integer)
    clauses
    mult(X,Y,Z):-Z=X*Y.
    sum(X,Y,Z):-Z=X+Y.
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    domains
    X=integer.
    T=integer*.
    predicates
    prime1(X,X,X).
    prime(T,T).
    clauses
    prime([],[]).
    prime([H|T],[H|T1]):-prime1(H,H,N),N<=2,prime(T,T1).
    prime([_|T],L1):-prime(T,L1).
    prime1(_,1,1):-!.
    prime1(X,H,N):-H1=H-1,X mod H=0,prime1(X,H1,N1),N=N1+1,!.
    prime1(X,H,N):-H1=H-1,prime1(X,H1,N).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    لأعطاء قائمة بعناصر والحصول على قائمة هي عناصر الأولى مرفوعة للأس 2 ) تربيع)
    domains
    X=integer.
    T=integer*.
    predicates
    seq(T,T).
    clauses
    seq([],[]).
    seq([H1|T],[H2|T2]):-H1=H1,H2=H1*H1,seq(T,T2).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    domains
    X=integer.
    predicates
    pow(X,X,X).
    sum(X,X).
    fact(X,X).
    clauses
    pow(_,0,1):-!.
    pow(X,N,F):-N1=N-1,pow(X,N1,F1),F=X*F1.
    fact(0,1).
    fact(X,N):- X1=X-1, fact(X1,N1),N=N1*X.
    sum(1,1).
    sum(N,S):-N1=N-2,sum(N1,S1),S=N+S1.
    sum(1,1):-!.
    sum(X,Y):-X1=X-1,pow(X,2,F),sum(X1,Y1),Y=F+Y1.
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــ
    برناج الحذف
    domains
    T=integer*.
    X=integer.
    predicates
    del1(X,T,T,X).
    del2(X,T,T,X).
    clauses
    del1(X,[X|T1],T1,X):-!.
    del1(X,[Y|T1],[Y|T2],A):-del1(X,T1,T2,A).
    del2(X,[X|T1],T1,X):-!.
    del2(X,[Y|T1],[Y|T4],B):-del2(X,T1,T4,B).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــ
    أول برناج بمادة برولوك
    domains
    predicates
    edge(string,string)
    tedge(string,string)
    fedge(string,string)
    vedge(string,string)
    sedge(string,string)
    clauses
    edge(a,b).
    edge(a,f).
    edge(b,c).
    edge(c,d).
    edge(c,e).
    edge(f,e).
    edge(f,c).
    edge(f,g).
    edge(g,c).
    edge(e,d).
    tedge(X,Z):-edge(X,Y),edge(Y,Z).
    fedge(X,W):-tedge(X,Y),edge(Y,W).
    vedge(X,Z):-tedge(X,Y),tedge(Y,Z).
    sedge(X,Z):-vedge(X,Y),edge(Y,Z).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــ
    لأيجاد مجموع عناصر قائمة
    domains
    L=integer*
    X=integer.
    predicates
    sum(L,integer).
    clauses
    sum([],0):-!.
    sum([H|L],X):-sum(L,X1),X=H+X1.
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــ
    لأيجاد مفكوك(مضروب) أي رقم
    domains
    x=integer
    y=integer
    predicates
    fact(x,x)
    clauses
    fact(0,1).
    fact(X,N):- X1=X-1, fact(X1,N1),N=N1*X.
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــ
    يجمع عناصر قائمتين ويضع الناتج في قائمة ثالثة
    SUM(L1,L2,L3)
    بحيث
    L1=[1,2,3],L2=[2,4,6],L3=[3,6,9]

    domains
    L=integer*.
    X=integer.
    predicates
    sum(L,L,L).
    length(L,X).
    su(X,X).
    clauses
    sum([],[],[]):-!.
    sum([H1|T1],[H2|T2],[H3|T3]):-H3=H1+H2,sum(T1,T2,T3).
    length([],0):-!.
    length(_,M):-length(_,M1),M=M1+1.
    su(X,Y):-length(T1,X),length(T2,Y),X=Y,sum(T1,T2,_).
    ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــ
    شجرة العائلة كاملة
    predicates
    married(string,string)
    son(string,string)
    grandfather(string,string)
    grandmother(string,string)
    aunt(string,string)
    cousin(string,string)
    uncle(string,string)
    father(string,string)
    mother(string,string)
    brother(string,string)
    sister(string,string)
    male(string)
    female(string)
    clauses
    married(abbas,lora).
    married(ali,sara).
    married(kamal,solaf).
    male(abbas).
    male(ahmed).
    male(khalid).
    male(ali).
    male(kamal).
    male(bassem).
    female(lora).
    female(suha).
    female(sara).
    female(solaf).
    son(ali,abbas).
    son(ali,lora).
    son(suha,abbas).
    son(suha,lora).
    son(kamal,abbas).
    son(kamal,lora).
    son(ahmed,ali).
    son(ahmed,sara).
    son(khalid,ali).
    son(khalid,sara).
    son(bassem,kamal).
    son(bassem,solaf).
    father(Y,Z):-married(Y,_),son(Z,Y).
    uncle(X,Z):-son(X,Y),brother(Z,Y).
    mother(X,Y):-married(_,X),son(Y,X).
    aunt(X,W):-son(X,Y),sister(W,Y).
    brother(X,Y):-father(Z,X),father(Z,Y),male(X),male(Y),X<>Y.
    sister(X,Y):-father(Z,X),father(Z,Y),female(X),X<>Y.
    grandfather(X,Y):-son(X,Z),son(Z,Y),male(Y).
    grandmother(X,Z):-son(X,Y),son(Y,Z),female(Z).
    cousin(X,Y):-uncle(X,Z),son(Y,Z).


    ,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘, ,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘ ,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘,‘




  2. #2
    المدير الفني للموقع
    تاريخ التسجيل: January-2010
    الدولة: بغداد &
    الجنس: ذكر
    المشاركات: 17,392 المواضيع: 1,088
    صوتيات: 71 سوالف عراقية: 328
    التقييم: 9783
    مزاجي: روبوت
    المهنة: <dev></dev>
    أكلتي المفضلة: مربى وخبز &
    آخر نشاط: منذ 4 يوم
    الاتصال: إرسال رسالة عبر Yahoo إلى Samer
    مرحبا

    الافضل تحوطين الكود بـ (كود php) من المحرر علمود يصير أوضح وشوية يتلون، .. أو عل اقل تحوطيه بـ LTR من المحرر كذلك علمود يعالج مشكلة الرموز اللي تصير ببداية السطر بدل نهايته

    .. عاشت ايدج .. تحياتي

  3. #3
    من المشرفين القدامى
    flower flower
    اقتباس المشاركة الأصلية كتبت بواسطة Samer مشاهدة المشاركة
    مرحبا

    الافضل تحوطين الكود بـ (كود php) من المحرر علمود يصير أوضح وشوية يتلون، .. أو عل اقل تحوطيه بـ LTR من المحرر كذلك علمود يعالج مشكلة الرموز اللي تصير ببداية السطر بدل نهايته

    .. عاشت ايدج .. تحياتي
    تدلل عمو سمسم عندي الكودات بسphp

  4. #4
    صديق جديد
    تاريخ التسجيل: March-2013
    الجنس: ذكر
    المشاركات: 43 المواضيع: 2
    التقييم: 2
    آخر نشاط: 29/July/2014
    شكرا ياطيبه على الموضوع

تم تطوير موقع درر العراق بواسطة Samer

قوانين المنتديات العامة

Google+

متصفح Chrome هو الأفضل لتصفح الانترنت في الجوال