Đổi màu giao diện
Truyền thống

Các bài tập Pascal cơ bản ...

Thảo luận trong 'Ngôn ngữ lập trình' bắt đầu bởi yen01, Dec 15, 2008.

Tình trạng chủ đề:
Đã khóa, không thể trả lời.
  1. yen01 Tân Binh

    Nghe nói bạn em bảo trang này nhìu pro lém nên em mạm muội post bộ đề cương pascal của em nên cho các anh giải hộ .Em gà lém nên không giải đựoc.Anh nào giải được bộ đề cương của em thì em xin hậu tạ .

    Các anh phải viết bằng chương trình con nhá và hoàn thiện từng bài một.Thank các anh trước đấy ...

    Sau đây là đề...



    Code:
    Bài 1:
    
    Nhập vào 1 số nguyên gồm 4 chữ số
    
    -Kiểm tra tình chắn lể
    
    -kiểm tra xem có phải là số nguyên tố không
    
    -kiểm tra xem có phải là số hoàn hảo không
    
    
    
    Bài 2:
    
    Nhập vào 1 số n nguyên (2<n<20)
    
    -nhập vào mảng n số nguyên dương
    
    -hiện tất cả số nguyên tố trong mảng và đếm xem có bao nhiu sô
    
    
    
    Bài 3:
    
    Nhạp vào 1 số n nguyên (2<n<20)
    
    -nhập vào mảng n số nguyên 
    
    -tìm số lớn nhất và vị trí của nó
    
    -sắp xếp mảng tang giần theo giá trị
    
    -hiển thị mảng vừa sắp xếp
    
    
    
    Bai 4:
    
    -viết chương trình kiểm tra xem 1 số có là số hoàn hảo không
    
    -liệt kê tất cả số hoàn hảo từ 1..2000 và đếm xem có bao nhiu số
    
    
    
    Bài 5:
    
    Nhập vào 1 số n nguyên (2<n<20)
    
    -nhập vào một mảng n số thực
    
    -tình trung bình công của tất cả số dương trong mảng
    
    -kiểm tra xem trong mảng có bao nhiu số có giá trị trùng với giá trị của tbc nói trên
    
    
    
    Bài 6:
    
    -đếm xem 1 xâu s có bao nhiu kí tự c , ch (không kể in hoa hay thường)
    
    -đém xem xâu s có bao nhiu từ (một từ được định nghĩa là một tập các kí tự không chứa dấu cách)
    
    -chuẩm hóa xâu xóa tất cả kí tự cách ở đầu và cuói câu ,trong xâu không co nhìu hơn một dấu cách đứng liền nhau
    
    
    
    Bài 7:
    
    -nhập vào một ma trận m*n
    
    -hiện ma trận vủa nhập
    
    
    
    Bài 8:
    
    Giải bài toán FIBONACI
    
    
    
    Bài 9:
    
    Kiểm tra tình đối xứng của 1 từ
    
    
    
    Bài 10:
    
    Nhập vào các số n , m (2<n,m<20)
    
    -nhập vào ma trận các số nguyên
    
    -xây dựng một mảng thứ 2 gồm các giá trị max của hàng trong ma trận trên
    
    -hiện cả hai mảng ra màn hình
    
    
    
    Bai 11:
    
    Nhập vào các số n , m (2<n,m<20)
    
    -nhập vào ma trận gồm các số nguyên
    
    -hiện ma trận vùa nhập ra màn hình
    
    -tìm số nguyên tố và cho bít vị trí của nó
    
    
    
    Bai 12:
    
    Nhập vào các số n , m (2<n,m<20)
    
    -nhập một ma trận các số nguyên
    
    -hiện ra màn hình ma trận vừa nhập
    
    -sắp xếp lai ma trận sao cho hàng tăng cột tăng
    
    
    
    Bai 13:
    
    -kiểm tra một xâu s1 có mặt tỏng xâu s2 không tình từ 1 vị trí bất kì
    
    -nhập 2 xâu s1 ,s2 .Đếm em xâu s1 có mặt trong xâu s2 bao nhiu lần
    
    
    
    Bài 14:
    
    -kiểm tra kí tự bất kì có là chữ cái từ a..z không
    
    -nhập vào một xâu sau đó đếm xem trong xâu có bao nhiu kí tự không pải là chữ cái
    
    
    
    Bài 15:
    
    -Nhập vào một danh sách sinh viên (họ tên,năm sinh,dan tộc,điểm 1 ,điểm 2 , điểm 3 ,giới tính)
    
    -hiện danh sách sinh viên vừa nhập dưới dạng cột
    
    STT  Hoten  Gioitinh  Dantoc  Diem1  Diem2  Diem3  DTB
    
    -liệt kê danh sách sinh viên đạt loại khá (dtb>7)
    
    
    
    Bài 16:
    
    -Nhập vào một danh sách sinh viên (họ tên,năm sinh,dan tộc,điểm 1 ,điểm 2 , điểm 3 ,giới tính)
    
    -hiện danh sách sinh viên vừa nhập dưới dạng cột
    
    STT  Hoten  Gioitinh  Dantoc  Diem1  Diem2  Diem3  DTB
    
    -cho bit có bao nhiu phần trăm sinh viên nam bao nhiu phần trăm nữ
    
    
    
    Bai 17:
    
    -Nhập vào một danh sách sinh viên (họ tên,năm sinh,dan tộc,điểm 1 ,điểm 2 , điểm 3 ,giới tính)
    
    -hiện danh sách sinh viên vừa nhập dưới dạng cột
    
    STT  Hoten  Gioitinh  Dantoc  Diem1  Diem2  Diem3  DTB
    
    -sắp xếp lại danh sách sinh viên tăng dần theo điểm trung bình (không làm sai lệch thông tin)


    Anh nào làm được thì em sẽ [​IMG]

    GIúp em nhé các anh .Pjpj
  2. duyhien01

    duyhien01 Trung Sĩ

    Đề cương cũng hay đáy .Nhưng mà dạo này mình phải chuẩn bị thi rùi .Nên mình không viết ngay được cho bạn .Đợi mình khoảng 2 ngày nữa minh fvieets cho .Bạn nhớ giũ đúng lời hứa của bạn nhá ...
  3. hehehe00

    hehehe00 Tân Binh

    số hoàn hảo là gì vậy bạn? Cả chỗ ma trận nữa? giải thích giùm mình được không. Mình cũng đang thử làm mấy bài của bạn.
  4. duyhien01

    duyhien01 Trung Sĩ

    Hjx sáng vừa thi xong mình liền giải đề cho bạn nè.Làm nhiều nên chắc sẽ có sai suất.Nếu sai chỗ nào thì bạn tự sủa nhá...

    Sau đây là lời giải ...

    Code:
    Bài 1:
    
    program yen1;
    
    uses crt;
    
    var i,n,k,d:integer;
    
    ok:boolean;
    
    function chanle(n:integer):boolean;
    
    begin
    
    ok:=true;
    
    if n mod 2<>0 then ok:=false;
    
    chanle:=ok;
    
    end;
    
    function nguyento(n:integer):boolean;
    
    begin
    
    ok:=true;
    
    d:=0;
    
    for i:=1 to n-1 do
    
    if n mod i=0 then d:=d+1;
    
    if d<>1 then ok:=false;
    
    nguyento:=ok;
    
    end;
    
    function chinhphuong(n:integer):boolean;
    
    begin
    
    ok:=true;
    
    k:=trunc(sqrt(n));
    
    if sqr(k)<>n then ok:=false;
    
    chinhphuong:=ok;
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap n=');readln(n);
    
    if chanle(n) then writeln(' So vua nhap la chan')
    
    else writeln(' So vua nhap la so le');
    
    if nguyento(n) then writeln(' So vua nhap la nguyen to')
    
    else writeln(' So vua nhap khong phai la so nguyen to');
    
    if chinhphuong(n) then writeln(' So vua nhap la so chinh phuong')
    
    else writeln(' So vua nhap khong la so chinh phuong');
    
    readln;
    
    end.


    Code:
    Bài 2:
    
    program yen2;
    
    uses crt;
    
    var a:array [ 1..20] of byte;
    
    i,n,d,j,k:integer;
    
    procedure nhap;
    
    begin
    
    for i:=1 to n do
    
    begin
    
    write(' a[',i,']=');readln(a[i]);
    
    end;
    
    end;
    
    procedure nguyento;
    
    begin
    
    write(' Day so cac so nguyen to:');
    
    k:=0;
    
    for i:=1 to n do
    
    begin
    
    d:=0;
    
    for j:=1 to a[i]-1 do
    
    if a[i] mod j=0 then d:=d+1;
    
    if d=1 then begin
    
    write(' ',a[i]);
    
    k:=k+1;
    
    end;
    
    end;
    
    if k=0 then write(' khong co so nao')
    
    else begin
    
    writeln;
    
    writeln(' Trong day co ',k,' so nguyen to');
    
    end;
    
    end;
    
    begin
    
    clrscr;
    
    repeat
    
    write(' Nhap n=');readln(n);
    
    until (2<n)and(n<20);
    
    nhap;
    
    nguyento;
    
    readln;
    
    end.


    Code:
    Bài 3:
    
    program yen3;
    
    uses crt;
    
    var a:array [1..20] of integer;
    
    b:array [1..20] of integer;
    
    i,n,max,j,tg:integer;
    
    procedure nhap;
    
    begin
    
    for i:=1 to n do
    
    begin
    
    write(' a[',i,']=');readln(a[i]);
    
    end;
    
    end;
    
    procedure timmax;
    
    begin
    
    max:=a[1];
    
    for i:=2 to n do
    
    if a[i]>max then max:=a[i];
    
    j:=1;
    
    for i:=1 to n do
    
    if a[i]=max then begin
    
    b[j]:=i;
    
    j:=j+1;
    
    end;
    
    write(' So lon nhat trong day la ',max,' o vi tri thu');
    
    for i:=1 to j-1 do
    
    write(', ',b[i]);
    
    writeln;
    
    end;
    
    procedure tang;
    
    begin
    
    for i:=1 to n-1 do
    
    for j:=i+1 to n do
    
    if a[i]>a[j] then begin
    
    tg:=a[i];
    
    a[i]:=a[j];
    
    a[j]:=tg;
    
    end;
    
    write(' Day duoc sap xep lai la:');
    
    for i:=1 to n do
    
    write(' ',a[i]);
    
    end;
    
    begin
    
    clrscr;
    
    repeat
    
    write(' Nhap n=');readln(n);
    
    until (2<n)and(n<20);
    
    nhap;
    
    timmax;
    
    tang;
    
    readln;
    
    end.


    Code:
    Bài 4:
    
    program yen4;
    
    uses crt;
    
    var n,i,d,k,j:integer;
    
    procedure hoanhao;
    
    begin
    
    d:=0;
    
    for i:=1 to n-1 do
    
    if n mod i=0 then d:=d+i;
    
    if d=n then writeln(' So vua nhap la so hoan hao')
    
    else writeln(' So vua nhap khong la so hoan hao');
    
    end;
    
    procedure vietlen;
    
    begin
    
    write(' Day so hoan hao tu 1-->2000:');
    
    k:=0;
    
    for i:=1 to 2000 do
    
    begin
    
    d:=0;
    
    for j:=1 to i-1 do
    
    if i mod j=0 then d:=d+j;
    
    if d=i then begin
    
    write(' ',i);
    
    k:=k+1;
    
    end;
    
    end;
    
    writeln;
    
    writeln(' Trong day 1-->2000 co ',k,' so hoan hao');
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap n=');readln(n);
    
    hoanhao;
    
    vietlen;
    
    readln;
    
    end.


    Code:
    Bài 5:
    
    program yen5;
    
    uses crt;
    
    var a:array [1..20] of real;
    
    b:array [1..20] of integer;
    
    i,n,d,j:integer;
    
    s,m:real;
    
    procedure nhap;
    
    begin
    
    for i:=1 to n do
    
    begin
    
    write(' a[',i,']=');readln(a[i]);
    
    end;
    
    end;
    
    function tbc:real;
    
    begin
    
    d:=0;s:=0;
    
    for i:=1 to n do
    
    if a[i]>0 then begin
    
    s:=s+a[i];
    
    d:=d+1;
    
    end;
    
    tbc:=(s/d);
    
    end;
    
    procedure kiemtra;
    
    begin
    
    d:=0;j:=1;
    
    for i:=1 to n do
    
    if m=a[i] then begin
    
    b[j]:=i;
    
    d:=d+1;
    
    j:=j+1;
    
    end;
    
    if d=0 then writeln(' Trong mang khong co so nao trung trung binh cong')
    
    else begin
    
    write(' Trong day co ',d,' so trung voi trung binh cong o vi tri');
    
    for i:=1 to j-1 do
    
    write(', ',b[i]);
    
    end;
    
    end;
    
    begin
    
    clrscr;
    
    repeat
    
    write(' Nhap n=');readln(n);
    
    until (2<n)and(n<20);
    
    nhap;
    
    m:=tbc;
    
    writeln(' Trung bing cong :',m:2:3);
    
    kiemtra;
    
    readln;
    
    end.


    Code:
    Bài 6:
    
    program yen6;
    
    uses crt;
    
    var st:string;
    
    i,d:integer;
    
    ch:char;
    
    function demkitu:integer;
    
    begin
    
    d:=0;
    
    for i:=1 to length(st) do
    
    if (st[i]='c')or(st[i]='C') then d:=d+1;
    
    demkitu:=d;
    
    end;
    
    function demtu:integer;
    
    begin
    
    d:=1;
    
    for i:=1 to length(st) do
    
    if (st[i]<>' ')and(st[i+1]=' ') then d:=d+1;
    
    demtu:=d;
    
    end;
    
    procedure chuanhoa;
    
    begin
    
    while st[1]=' ' do
    
    delete(st,1,1);
    
    while st[length(st)]=' ' do
    
    delete(st,length(st),1);i:=1;
    
    repeat
    
    if (st[i]=' ')and(st[i+1]=' ') then delete(st,i,1) else i:=i+1;
    
    until i>length(st);
    
    end;
    
    function dem:integer;
    
    begin
    
    d:=0;
    
    for i:=1 to length(st) do
    
    if st[i]=ch then d:=d+1;
    
    dem:=d;
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap xau:');readln(st);
    
    write(' Nhap ki tu:');readln(ch);
    
    chuanhoa;
    
    writeln(' Trong xau co ',demkitu,' ki tu C');
    
    writeln(' Trong xau co ',demtu,' tu');
    
    writeln(' Ki tu ',ch,' vua nhap co mat ',dem,' lan trong xau');
    
    readln;
    
    end.


    Code:
    Bài 7:
    
    program yen7;
    
    uses crt;
    
    var a:array[1..10,1..10] of integer;
    
    i,j,n,m:integer;
    
    procedure nhap;
    
    begin
    
    for i:=1 to m do
    
    for j:=1 to n do
    
    begin
    
    write(' a[',i,',',j,']=');readln(a[i,j]);
    
    end;
    
    end;
    
    procedure hienthi;
    
    begin
    
    writeln(' Ma tran vua nhap la:');
    
    for i:=1 to m do
    
    begin
    
    for j:=1 to n do
    
    write(' ',a[i,j]:4);
    
    writeln;
    
    end;
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap m,n:');readln(m,n);
    
    nhap;
    
    hienthi;
    
    readln;
    
    end.


    Code:
    Bài 8:
    
    program yen8;
    
    uses crt;
    
    var a:array [1..100] of integer;
    
    n,i,m,d,s:integer;
    
    procedure fibonaci;
    
    begin
    
    if n=1 then a[1]:=1
    
    else begin
    
    i:=2;s:=1;a[1]:=1;
    
    repeat
    
    a[i]:=s;
    
    i:=i+1;
    
    s:=a[i-1]+a[i-2];
    
    
    
    until i>n;
    
    end;
    
    write(' Day so fibonaci la:');
    
    for i:=1 to n do
    
    write(' ',a[i]);
    
    writeln;
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap so de tinh day fibonaci:');readln(n);
    
    write(' Nhap so de kiem tra xem co trong day fibonaci khong:');readln(m);
    
    fibonaci;
    
    d:=0;
    
    for i:=1 to n do
    
    if a[i]=m then d:=d+1;
    
    if d=1 then writeln(' So de kiem tra co mat trong day fibonaci')
    
    else writeln(' So kiem tra khong co mat trong day fibonaci');
    
    readln;
    
    end.


    Code:
    Bài 9:
    
    program yen9;
    
    uses crt;
    
    var tu:string;
    
    i:integer;
    
    function doixung(tu1:string):boolean;
    
    var ok:boolean;
    
    begin
    
    ok:=true;
    
    for i:=1 to (length(tu1) div 2) do
    
    if tu1[i]<>tu1[length(tu1)-i+1] then begin
    
    ok:=false;
    
    break;
    
    end;
    
    doixung:=ok;
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap tu:');readln(tu);
    
    if doixung(tu) then writeln(' Tu vua nhap doi xung')
    
    else writeln(' Tu vua nhap khong doi xung');
    
    readln;
    
    end.


    Code:
    Bài 10:
    
    program yen10;
    
    uses crt;
    
    var a:array [1..10,1..10] of integer;
    
    b:array [1..10] of integer;
    
    i,j,n,m,max:integer;
    
    procedure nhap;
    
    begin
    
    for i:=1 to n do
    
    for j:=1 to m do
    
    begin
    
    write(' a[',i,',',j,']=');readln(a[i,j]);
    
    end;
    
    end;
    
    procedure xaydung;
    
    begin
    
    for j:=1 to m do
    
    begin
    
    max:=a[1,j];
    
    for i:=2 to n do
    
    if a[j,i]>max then max:=a[j,i];
    
    b[j]:=max;
    
    end;
    
    end;
    
    procedure hienthi;
    
    begin
    
    writeln(' Ma tran vua nhap la:');
    
    for i:=1 to n do
    
    begin
    
    for j:=1 to m do
    
    write(' ',a[i,j]:4);
    
    writeln;
    
    end;
    
    writeln;
    
    write(' Day gom cac so max la:');
    
    for i:=1 to m do
    
    write(' ',b[i]);
    
    end;
    
    begin
    
    clrscr;
    
    repeat
    
    write(' Nhap n,m:');readln(n,m);
    
    until (2<n)and(m<20);
    
    nhap;
    
    xaydung;
    
    hienthi;
    
    readln;
    
    end.


    Code:
    Bài 11:
    
    program yen11;
    
    uses crt;
    
    var  a:array [1..10,1..10] of integer;
    
    b:array [1..100] of integer;
    
    i,j,n,m,d,k,t:integer;
    
    procedure nhap;
    
    begin
    
    for i:=1 to n do
    
    for j:=1 to m do
    
    begin
    
    write(' a[',i,',',j,']=');readln(a[i,j]);
    
    end;
    
    end;
    
    procedure hienthi;
    
    begin
    
    writeln(' Ma tran vua nhap la:');
    
    for i:=1 to n do
    
    begin
    
    for j:=1 to m do
    
    write(' ',a[i,j]:4);
    
    writeln;
    
    end;
    
    writeln;
    
    end;
    
    procedure nguyento;
    
    begin
    
    k:=1;
    
    for i:=1 to n do
    
    for j:=1 to m do
    
    begin
    
    d:=0;
    
    for t:=1 to a[i,j]-1 do
    
    if a[i,j] mod t=0 then d:=d+1;
    
    if d=1 then begin
    
    b[k]:=a[i,j];
    
    k:=k+1;
    
    end;
    
    end;
    
    writeln;writeln;
    
    writeln(' Day so nguyen to la:');writeln;
    
    for i:=1 to n do
    
    for j:=1 to m do
    
    begin
    
    for t:=1 to k-1 do
    
    if b[t]=a[i,j] then begin
    
    write(' ',b[t]:8);
    
    writeln(' :hang ',i,' cot ',j,' ');
    
    end;
    
    end;
    
    end;
    
    begin
    
    clrscr;
    
    repeat
    
    write(' Nhap n,m:');readln(n,m);
    
    until (2<n)and(m<20);
    
    nhap;
    
    hienthi;
    
    nguyento;
    
    readln;
    
    end.


    Code:
    Bài 12:
    
    program yen12;
    
    uses crt;
    
    var a:array [1..10,1..10] of integer;
    
    b:array [1..100] of integer;
    
    i,j,n,m,k,tg:integer;
    
    procedure nhap;
    
    begin
    
    for i:=1 to n do
    
    for j:=1 to m do
    
    begin
    
    write(' a[',i,',',j,']=');readln(a[i,j]);
    
    end;
    
    end;
    
    procedure hienthi;
    
    begin
    
    writeln(' Ma tran vua nhap la:');
    
    for i:=1 to n do
    
    begin
    
    for j:=1 to m do
    
    write(' ',a[i,j]:4);
    
    writeln;
    
    end;
    
    writeln;
    
    end;
    
    procedure sapxep;
    
    begin
    
    k:=1;
    
    for i:=1 to n do
    
    for j:=1 to m do
    
    begin
    
    b[k]:=a[i,j];
    
    k:=k+1;
    
    end;
    
    for i:=1 to k-2 do
    
    for j:=i+1 to k-1 do
    
    if b[i]>b[j] then begin
    
    tg:=b[i];
    
    b[i]:=b[j];
    
    b[j]:=tg;
    
    end;
    
    k:=1;
    
    for i:=1 to n do
    
    for j:=1 to m do
    
    begin
    
    a[i,j]:=b[k];
    
    k:=k+1;
    
    end;
    
    writeln(' Ma tran duoc sap xep lai la:');
    
    for i:=1 to n do
    
    begin
    
    for j:=1 to m do
    
    write(' ',a[i,j]:4);
    
    writeln;
    
    end;
    
    end;
    
    begin
    
    clrscr;
    
    repeat
    
    write(' Nhap n,m:');readln(n,m);
    
    until (2<n)and(m<20);
    
    nhap;
    
    hienthi;
    
    sapxep;
    
    readln;
    
    end.


    Code:
    Bài 13:
    
    program yen13;
    
    uses crt;
    
    var s1,s2:string;
    
    i,j,d,k,t:integer;
    
    procedure kiemtra;
    
    begin
    
    d:=0;
    
    for i:=1 to length(s2) do
    
    if s2[i]=s1[1] then begin
    
    k:=2;t:=1;
    
    for j:=i+1 to (i+length(s1)-1) do
    
    if s2[j]=s1[k] then begin
    
    k:=k+1;
    
    t:=t+1;
    
    end;
    
    if t=length(s1) then d:=d+1;
    
    end;
    
    if d>0 then begin
    
    writeln(' Xau s1 co xuat hien trogn xau s2');
    
    writeln(' Xau s1 xuat hien ',d,' lan trong xau s2');
    
    end
    
    else writeln(' Xau s1 khong xuat hien trong xau s2');
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap xau s1:');readln(s1);
    
    write(' Nhap xau s2:');readln(s2);
    
    kiemtra;
    
    readln;
    
    end.


    Code:
    Bài 14:
    
    program yen14;
    
    uses crt;
    
    type tap=set of char;
    
    var ch:char;
    
    st:string;
    
    chucai:tap;
    
    i,d:integer;
    
    procedure kiemtra;
    
    begin
    
    if ch in chucai then writeln(' Ki tu ',ch,' co trong bang chu cai')
    
    else writeln(' Ki tu ',ch,' khong co trong bang chu cai');
    
    d:=0;
    
    for i:=1 to length(st) do
    
    if st[i] in chucai then d:=d+1;
    
    writeln(' Trong xau co ',length(st)-d,' ki tu khong la chu cai');
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap ki tu:');readln(ch);
    
    write(' Nhap xau:');readln(st);
    
    chucai:=['a'..'z','A'..'Z'];
    
    kiemtra;
    
    readln;
    
    end.


    Code:
    Bài 15:
    
    program yen15;
    
    uses crt;
    
    type sinhvien=record
    
    hoten,dantoc,gioitinh:string;
    
    namsinh,diem1,diem2,diem3:integer;
    
    dtb:real;
    
    end;
    
    mang=array [1..10] of sinhvien;
    
    var sv:mang;
    
    i,n,d:integer;
    
    procedure nhap;
    
    begin
    
    clrscr;
    
    writeln('						  NHAP THONG TIN CHO SINH VIEN');
    
    for i:=1 to n do
    
    with sv[i] do
    
    begin
    
    write(' Ho ten:');readln(hoten);
    
    write(' Gioi tinh:');readln(gioitinh);
    
    write(' Dan toc:');readln(dantoc);
    
    write(' Diem1,Diem2,Diem3:');readln(diem1,diem2,diem3);
    
    dtb:=(diem1+diem2+diem3)/3;
    
    writeln;
    
    end;
    
    end;
    
    procedure hienthi;
    
    begin
    
    writeln;writeln;
    
    writeln('						 DANH SACH SINH VIEN VUA NHAP');
    
    for i:=1 to n do
    
    with sv[i] do
    
    begin
    
    writeln(' Ho ten:',hoten);
    
    writeln(' Nam sinh:',namsinh);
    
    writeln(' Diem TB:',dtb:2:2);
    
    writeln;writeln;
    
    end;
    
    end;
    
    procedure sapxep;
    
    begin
    
    writeln('						 DANH SACH SINH VIEN DAT LOAI KHA');
    
    writeln;
    
    d:=0;
    
    for i:=1 to n do
    
    if sv[i].dtb>7 then begin
    
    writeln(' Ho ten:',sv[i].hoten);
    
    writeln(' Diem TB:',sv[i].dtb:2:3);
    
    writeln;writeln;
    
    d:=d+1;
    
    end;
    
    if d=0 then writeln('							( khong co sinh vien nao )');
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap n=');readln(n);
    
    nhap;
    
    hienthi;
    
    sapxep;
    
    readln;
    
    end.


    Code:
    Bài 16:
    
    program yen16;
    
    uses crt;
    
    type sinhvien=record
    
    hoten,dantoc,gioitinh:string;
    
    namsinh,diem1,diem2,diem3:integer;
    
    dtb:real;
    
    end;
    
    mang=array [1..10] of sinhvien;
    
    var sv:mang;
    
    i,n,d:integer;
    
    p:real;
    
    procedure nhap;
    
    begin
    
    clrscr;
    
    writeln('						  NHAP THONG TIN CHO SINH VIEN');
    
    for i:=1 to n do
    
    with sv[i] do
    
    begin
    
    write(' Ho ten:');readln(hoten);
    
    write(' Gioi tinh:');readln(gioitinh);
    
    write(' Dan toc:');readln(dantoc);
    
    write(' Diem1,Diem2,Diem3:');readln(diem1,diem2,diem3);
    
    dtb:=(diem1+diem2+diem3)/3;
    
    writeln;
    
    end;
    
    end;
    
    procedure hienthi;
    
    begin
    
    writeln;writeln;
    
    writeln('						 DANH SACH SINH VIEN VUA NHAP');
    
    for i:=1 to n do
    
    with sv[i] do
    
    begin
    
    writeln(' Ho ten:',hoten);
    
    writeln(' Nam sinh:',namsinh);
    
    writeln(' Diem TB:',dtb:2:2);
    
    writeln;writeln;
    
    end;
    
    end;
    
    procedure phantram;
    
    begin
    
    writeln;writeln;
    
    writeln('								TY LE NAM NU');
    
    d:=0;
    
    for i:=1 to n do
    
    if sv[i].gioitinh='nam' then d:=d+1;
    
    p:=(d/n)*100;
    
    writeln('				 Trong danh sach co ',p:2:2,' % la sinh vien nam');
    
    writeln('				 Trong danh sach co ',(100-p):2:2,' % la sinh vien nu');
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap n=');readln(n);
    
    nhap;
    
    hienthi;
    
    phantram;
    
    readln;
    
    end.


    Code:
    Bài 17:
    
    program yen17;
    
    uses crt;
    
    type sinhvien=record
    
    hoten,dantoc,gioitinh:string;
    
    namsinh,diem1,diem2,diem3:integer;
    
    dtb:real;
    
    end;
    
    mang=array [1..10] of sinhvien;
    
    var sv:mang;
    
    i,n,j:integer;
    
    procedure nhap;
    
    begin
    
    clrscr;
    
    writeln('						  NHAP THONG TIN CHO SINH VIEN');
    
    for i:=1 to n do
    
    with sv[i] do
    
    begin
    
    write(' Ho ten:');readln(hoten);
    
    write(' Gioi tinh:');readln(gioitinh);
    
    write(' Dan toc:');readln(dantoc);
    
    write(' Diem1,Diem2,Diem3:');readln(diem1,diem2,diem3);
    
    dtb:=(diem1+diem2+diem3)/3;
    
    writeln;
    
    end;
    
    end;
    
    procedure hienthi;
    
    begin
    
    writeln;writeln;
    
    writeln('						  DANH SACH SINH VIEN VUA NHAP');
    
    for i:=1 to n do
    
    with sv[i] do
    
    begin
    
    writeln(' Ho ten:',hoten);
    
    writeln(' Nam sinh:',namsinh);
    
    writeln(' Diem TB:',dtb:2:2);
    
    writeln;writeln;
    
    end;
    
    end;
    
    procedure sapxep;
    
    var tg:sinhvien;
    
    begin
    
    writeln;writeln;
    
    writeln('					  DANH SACH SINH VIEN DUOC SAP XEP LAI LA');
    
    for i:=1 to n-1 do
    
    for j:=i+1 to n do
    
    if sv[i].dtb>sv[j].dtb then begin
    
    tg:=sv[i];
    
    sv[i]:=sv[j];
    
    sv[j]:=tg;
    
    end;
    
    for i:=1 to n do
    
    with sv[i] do
    
    begin
    
    writeln(' Ho ten:',hoten);
    
    writeln(' Diem TB:',dtb:2:2);
    
    writeln;
    
    end;
    
    end;
    
    begin
    
    clrscr;
    
    write(' Nhap n=');readln(n);
    
    nhap;
    
    hienthi;
    
    sapxep;
    
    readln;
    
    end.




    Chúc bạn thi tốt ...
  5. yen01

    yen01 Tân Binh

    Thank anh nhìu nhiu nhìu .Cảm ơn anh rất nhìu .Đúng là pro [​IMG] .Liên hệ với em qua nick chat nhá .... m0t lần nữa cảm ơn anh nhìu ....
  6. duyhien01

    duyhien01 Trung Sĩ

    Mình có bài quân hậu nè.Nếu ai học môn cấu trúc dữ liệu và giải thuật thí chắc ...



    Code:
    program baitap;
    
    uses crt;
    
    var x:array[1..8]of integer;
    
    a:array [1..8]of boolean;
    
    b:array[-7..7]of boolean;
    
    c:array[2..16]of boolean;
    
    k,i:integer;
    
    procedure khoitao;
    
    begin
    
    for i:=1 to 8 do
    
    a[i]:=true;
    
    for i:=-7 to 7 do
    
    b[i]:=true;
    
    for i:=2 to 16 do
    
    c[i]:=true;
    
    end;
    
    procedure ghinhan;
    
    begin
    
    for i:=1 to 8 do
    
    write(x[i]);
    
    writeln;
    
    k:=k+1;
    
    end;
    
    procedure try(i:integer );
    
    var j:integer;
    
    begin
    
    for j:=1 to 8 do
    
    if a[j] and b[i-j] and c[i+j] then
    
    begin
    
    x[i]:=j;
    
    a[j]:=false;
    
    b[i-j]:=false;
    
    c[i+j]:=false;
    
    if i=8 then begin ghinhan;
    
    a[j]:=true;
    
    b[i-j]:=true;
    
    c[i+j]:=true;
    
    end
    
    else
    
    begin
    
    try(i+1);
    
    a[j]:=true;
    
    b[i-j]:=true;
    
    c[i+j]:=true;
    
    end;
    
    end;
    
    end;
    
    BEGIN
    
    clrscr;
    
    khoitao;
    
    writeln;
    
    writeln;
    
    try(1);
    
    writeln('co the sap xep duoc ',k,' cach');
    
    readln;
    
    END.
  7. tinhkhuchay

    tinhkhuchay Tân Binh

    Hôm nay mạo muội pót bài mong mọi người giúp đỡ em với !

    Đề:

    Tính giá trị biểu thức bằng pascal :(

    1-x2/2!+x4/4!-x6/6!...



    Em thanks trước
  8. duyhien01

    duyhien01 Trung Sĩ

    Cho mình hỏi
    Đây là x^2 hay là 2*x .

    Pm để có sự trợ giúp.Hum nay mình rảnh ...
  9. tinhkhuchay

    tinhkhuchay Tân Binh

    Xin lỗi ! hôm qua em không online được, hôm nay mới vào hj

    Bài toán trên là X bình phương đó ạ,và tiếp theo vẫn là số mũ cùa X đọc là gì nhỉ hj em wên rùi :(, mong pác giúp em với ná ^^!

    Thanks !.
  10. duyhien01

    duyhien01 Trung Sĩ

    À quên bài này có biến X thì giải sao được.
  11. linh030294

    linh030294 Tân Binh

    Các anh có thể tạo ra một file để em tải về không như dạng chuyên đề ấy ? Em thấy bài viết rất hay !
  12. duyhien01

    duyhien01 Trung Sĩ

    Cái này Em cứ copy vào notepad rùi đổi đuôi thành .Pas là được. Sau đó lưu thành file.
  13. h041_m0ng

    h041_m0ng Tân Binh

    có bài này nhưng hok làm đc.pác làm đc thì post cho em coi với nha.đầu bài như sau:cho công thức T={56000*3.14*(60000/2)^3*[1+(x/z)^2+(y/z)^2]^(-5/2)}*{(cos15)^2*[2*(x/z)^2-(y/z)^2-1]+(sin15)^2*[2-(x/z)^2-(y/z)^2]+2*(cos15)^2*(sin15)^2*(3x/2)}.tính T1 với x1,y1,z1 nhập từ bàn phím và T2 với x2,y2,z2 nhập từ bàn phím.sau đó hiện ra màn hình kết quả T1,T2,và tổng T1+T2=?.pác làm giúp e nha.em đang cần lém.à quên pác dùng ngôn ngữ lập trình nào cũng đc
Tình trạng chủ đề:
Đã khóa, không thể trả lời.

Chia sẻ trang này