1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

پاسکال.برنامه.پروژه.حل مسائل

شروع موضوع توسط minaaa ‏25/10/11 در انجمن Pascal

  1. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    حل دستگاه n معادله n مجهول N-equations N-unknowns

    program NequationNunknownDeterminan;uses crt;
    var
    n,i,j,k:integer;
    u,Det:real;
    a:array [1..100,1..100] of real;
    x,y:array [1..100] of real;
    begin
    clrscr;
    writeln ('N-equation N-unknown and Determinan');
    writeln ('insert N');
    readln (n);
    for i:= 1 to n do
    for j:=1 to n+1 do
    begin
    gotoxy(10+5*j,2+i);
    read (a[i,j]);
    end;
    for k:=1 to n-1 do
    begin
    for i:=k+1 to n do
    begin
    u:=a[i,k]/a[k,k];
    for j:=k to n+1 do
    a[i,j]:=a[i,j]-u*a[k,j];
    end;
    end;
    Det:=1;
    for i:=1 to n do
    Det:=a[i,i]*Det;
    for i:=1 to n do
    x:=a[i,n+1]/a[i,i];
    for i:=n-1 downto 1 do
    for j:=i+1 to n do
    x:=x-a[i,j]/a[i,i]*x[j];
    for i:=1 to n do
    writeln ('x[',i,'] => ',x:4:3);
    writeln ('Determinan equals with : ',Det:4:3);
    readln;
    readln;
    end.
     
  2. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    مثلث خیام

    uses crt;
    var
    i,j,n:integer;
    a:array [1..100,1..100] of integer;
    begin
    clrscr;
    writeln ('insert n');
    readln (n);
    clrscr;
    for i:=1 to n do
    begin
    a[i,1]:=1;
    a[i,i]:=1;
    end;
    for i:=3 to n do
    for j:=2 to i-1 do
    a[i,j]:=a[i-1,j-1]+a[i-1,j];
    for i:=1 to n do
    for j:=1 to i do
    begin
    gotoxy (36+6*j-3*i,i);
    write(a[i,j]);
    end;
    readln;
    readln;
    end
     
  3. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    محاسبه ی انتگرال به روش ذوزنقه

    برای نمونه: محاسبه ی انرژی متوسط نوترون ها در راکتور uses crt;
    var
    s,x1,x1000,Dx:real;
    i:integer;
    fx:array[1..1000] of real;
    begin
    clrscr;
    s:=0;
    writeln ('insert a , b in order to Mev');
    write ('a=>');
    readln (x1);
    write ('b=>');
    readln (x1000);
    Dx:=(x1000-x1)/1000;
    for i:= 0 to 999 do
    fx[i+1]:=0.453/2*(x1+i*Dx)*exp(-1.036*(x1+i*Dx))
    *(exp(sqrt(2.29*(x1+i*Dx)))-
    exp(-sqrt(2.29*(x1+i*Dx))));
    for i:=1 to 1000 do
    s:=s+(fx+fx[i+1])*Dx/2;
    writeln ('integral=>',s:6:4);
    readln;
    readln;
    end.
     
  4. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    برنامه ای که دو چند جمله ای از درجه n راگرفته و در هم ضرب و چاپ می کند

    توضیح: این برنامه همان طور که در داخل متن آن توضیح داده شده ناقص است. uses crt;
    var
    i,j,k,n1,n2,n3:integer;
    y1,y11,y2,y22,y3,y33:array[1..100] of real;
    begin
    clrscr;
    writeln ('tozih: 1-ebteda tedade jomalate chan jomlei ha porside mishavad.');
    writeln (' 2-shoma ebteda zaribe har kodam az jomleha va sepas tavane');
    writeln (' an jomle ra vared mikonid.');
    writeln;
    writeln ('baraye shoroo yek kelid ra feshar dahid!');
    readln;
    clrscr;
    write ('chand jomlei ye avval chand jomle ast ? ');
    read (n1);
    write ('chand jomlei ye dovvom chand jomle ast ? ');
    read (n2);
    n3:=n1*n2;
    clrscr;
    writeln ('chand jomlei ye avval');
    for i:= 1 to n1 do
    begin
    writeln('zarib ra vared kon');
    read (y1);
    writeln ('tavan ra vared kon');
    read (y11);
    writeln (y1:2:2,'x^',y11:2:2);
    end;
    readln;
    clrscr;
    writeln ('chand jomlei ye dovvom');
    for i:= 1 to n2 do
    begin
    writeln('zarib ra vared kon');
    read (y2);
    writeln ('tavan ra vared kon');
    read (y22);
    writeln (y2:2:2,' x^',y22:2:2);
    end;
    clrscr;
    write ('y1=');
    for i:=1 to n1-1 do
    write ('(',y1:2:2,' x^',y11:2:2,')+');
    write ('(',y1[n1]:2:2,' x^',y11[n1]:2:2,')');
    writeln;
    write ('y2=');
    for i:=1 to n2-1 do
    write ('(',y2:2:2,' x^',y22:2:2,')+');
    write ('(',y2[n2]:2:2,' x^',y22[n2]:2:2,')');
    writeln;
    k:=1;
    for i:=1 to n1 do
    for j:=1 to n2 do
    begin;
    y33[k]:=y11+y22[j];
    y3[k]:=y1*y2[j];
    k:=k+1;
    end;
    for i:=1 to n3 do
    for j:=i+1 to n3 do
    if y33=y33[j] then
    begin
    y3:=y3+y3[j];
    y3[j]:=0;
    end;
    {be nazare shoma kojaye in ghesmate barname eshtebah ast?
    pas az tasire nazare khod dar barname an ra ba 2 ettehade
    avval va chagho laghar emtehan konid.
    agar dorost bood khaheshan begid ta man ham befahmam
    tozih:dar inja mikhastam jomalate ba zarayebe sefr nemayesh
    dade nashavand. barname bedoon in ghesmat dorost ast vali jomalate
    ba zarayebe sefr ra ham nemayesh midahad.
    for i:=1 to n3 do
    if y3=0 then
    begin
    for j:=i to n3-1 do
    begin
    y3[j]:=y3[j+1];
    y33[j]:=y33[j+1];
    end;
    n3:=n3-1;
    end;}
    write ('y3=');
    for i:=1 to n3-1 do
    write ('(',y3:2:2,' x^',y33:2:2,')+');
    write ('(',y3[n3]:2:2,' x^',y33[n3]:2:2,')');
    readln;
    readln;
    end
     
  5. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    ضرب دو ماتریس

    توضیح: این برنامه هر یک از ماتریس ها را جداگانه در یک صفحه خالی میگیرد و نتیجه را هم در یک صفحه ی جدید نشان می دهد.. در این برنامه محدودیتی در مرتبه ی ماتریس نیست هر چند که قبلی زیباتر است.​
    uses crt;
    var
    m1,m2,m3:array[1..100,1..100] of integer;
    i,j,k,m,n,g,f,o:integer;
    begin
    clrscr;
    writeln ('insert degrees of m1 and m2');
    readln (m,n);
    gotoxy (35,2);
    readln (f);
    gotoxy (35,3);
    readln (o);
    if f<>n then
    writeln('multiplication can not be done ');
    if f=n then
    begin
    clrscr;
    for i:=1 to m do
    for j:=1 to n do
    begin
    gotoxy (5*j,i);
    readln (m1[i,j]);
    end;
    clrscr;
    for i:=1 to f do
    for j:=1 to o do
    begin
    gotoxy (5*j,i);
    readln (m2[i,j]);
    end;
    for i:= 1 to m do
    for j:=1 to n do
    for k:=1 to o do
    m3[i,k]:=m1[i,j]*m2[j,k]+m3[i,k];
    clrscr;
    for i:=1 to m do
    for j:=1 to o do
    begin
    gotoxy (5*j,i);
    write (m3[i,j]);
    end;
    end;
    readln;
    end
     
  6. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    ضرب دو ماتریس

    توضیح: این برنامه هر سه ماتریس اولی و دومی و حاصل ضرب را همزمان نشان میدهد. بدیهی است در صورت وارد کردن مرتبه های بیشتر از ۵ درایه ها داخل هم میروند.​
    uses crt;
    var
    m1,m2,m3:array[1..100,1..100] of integer;
    i,j,k,m,n,g,f,o:integer;
    begin
    clrscr;
    writeln ('insert degrees of m1 and m2');
    readln (m,n);
    gotoxy (35,2);
    readln (f);
    gotoxy (35,3);
    readln (o);
    if f<>n then
    writeln('multiplication can not be done ');
    if f=n then
    begin
    for i:=1 to m do
    for j:=1 to n do
    begin
    gotoxy (5*j,i*2+5);
    readln (m1[i,j]);
    end;
    for i:=1 to f do
    for j:=1 to o do
    begin
    gotoxy (5*j+25,2*i+5);
    readln (m2[i,j]);
    end;
    for i:= 1 to m do
    for j:=1 to n do
    for k:=1 to o do
    m3[i,k]:=m1[i,j]*m2[j,k]+m3[i,k];
    for i:=1 to m do
    for j:=1 to o do
    begin
    gotoxy (5*j+50,2*i+5);
    write (m3[i,j]);
    end;
    end;
    readln;
    end.​
     
  7. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    میانگین گیری - انحراف استاندارد - تست پایداری شمارنده آزمون x^2

    var
    s,i,n:integer;
    a:array[1..100] of integer;
    x2,average,standard,epsilon2:real;
    begin
    writeln ('chand tas?');
    readln (n);
    writeln ('vared kon');
    for i:=1 to n do
    readln (a);
    for i:=1 to n do
    s:=s+a;
    average:=s/n;
    writeln ('miyangin=',average:19:3);
    for i:=1 to n do
    epsilon2:=epsilon2+sqr(a-average);
    standard:=sqrt(epsilon2/(n-1));
    writeln ('enherafe standard=',standard:10:3);
    for i:=1 to n do
    x2:=sqr(average-a)/average+x2;
    writeln ('azmoone x^2=',x2:16:3);
    readln;
    readln;
    end.
     
  8. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    برنامه ای برای رتبه بندی داده های عددی

    program rank2;
    uses crt;
    var
    a,b:array[1..100] of integer;
    i,j,d,n:integer;
    begin
    clrscr;
    writeln ('How many figures exist?');
    readln (n);
    clrscr;
    for i:=1 to n do readln(a);
    for i:=1 to n-1 do
    for j:=i+1 to n do
    if a<=a[j] then b:=b+1 else b[j]:=b[j]+1;
    clrscr;
    for i:=1 to n do writeln(a,' : ',b+1);
    readln;
    end.
     
  9. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    محاسبه یک تابع ریمانی Jn1

    [FONT=arial, helvetica, sans-serif]program Jn1;
    uses crt;
    function f(x:real):real;
    begin
    if x=0 then
    f:=1
    else
    f:=f(x-1)*x;
    end;
    var
    s,m,n:integer;
    sum:real;
    begin
    clrscr;
    writeln ('Insert n in Jn1');
    readln (n);
    sum:=1/(f(n)*exp(n*ln(2)));
    s:=1;
    for m:=1 to 20 do
    begin
    s:=-1*s;
    sum:=s/(exp((2*m+n)*ln(2))*m*f(n+m))+sum;
    end;
    writeln (sum);
    readln;
    e[/FONT]nd.
     
  10. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    پاسخ : پاسکال.برنامه.پروژه.حل مسائل

    بابل سورت:تنظیم کردن داده ها بر اساس ترتیب حروف الفبا bubble sort

    [FONT=arial, helvetica, sans-serif]
    program bubble_sort;
    uses crt;
    var
    a:array[1..1000] of real;
    s:real;
    n,i,j:integer;
    begin
    clrscr;
    writeln ('How many figure exists?');
    readln (n);
    writeln ('Insert them:');
    for i:=1 to n do
    readln(a);
    for i:=1 to n-1 do
    for j:=1 to n-i do
    if a[j]>a[j+1] then
    begin
    s:=a[j];
    a[j]:=a[j+1];
    a[j+1]:=s;
    end;
    clrscr;
    writeln ('BUBBLE SORT:');
    for i:=1 to n do
    writeln(a:5:2);
    readln;
    end
    [/FONT]