<body>
  .:CNTT - K1A:. Chat Chat Trợ giúp Đăng ký Tìm kiếm Âm Nhạc Liên kết Thành viên Đăng Nhập  
Gửi bài mới Trả lời chủ đề này Bài tập Pascal sách "NN lâp trình Pascal" trang 53
Bài tập Pascal sách "NN lâp trình Pascal" trang 53
QuangHoang
.:Administrator:.
.:Administrator:.

Tuổi: 19
Ngày tham gia: 30 1 2008
Số bài: 104
Level:
EXP:
 %
Trả lời với trích dẫn nội dung bài viết này
Mọi người vào đây cùng nhau thảo luận mấy bài đó nhé.
*Bài tập 7:
a.
Code:

uses crt;
var n,i:word;s1,s2:real;
begin
    clrscr;
    writeln('Kiem tra cong thuc: 1+2+3+...+n=n(n+1)/2');
    write('Nhap n= ');readln(n);
    s1:=0;
   begin
    writeln('Tinh ket qua ve trai.');
    for i:=1 to n do s1:=s1+i;
    writeln('Tong la: ',s1:12:4);
   end;
   begin
    writeln('Tinh ket qua ve phai.');
    s2:=n*(n+1)/2;
    writeln('Tong la: ',s2:12:4);
   end;
    readln
end.

b.
Code:
uses crt;
var n,k:word; c:real;
function tqh(a:word):word;
   var i,p:word;
   begin
     p:=1;
     if i<=1 then p:=1
     else
      Begin
       for i:=2 to a do
        p:=p*i;
       tqh:=p;
      End;
   end;
begin
   clrscr;
   writeln('To hop chap k cua n');
   write('Nhap n= ');readln(n);
   write('Nhap k= ');readln(k);
   if k>=n then write('Phep toan khong hop le.')
   else
      begin
   c:=tqh(n)/(tqh(k)*tqh(n-k));
   write('To hop chap k cua n la: ',c);
   end;
   readln
end.
[/code]


Được sửa bởi QuangHoang ngày 02 3, 2008 9:11 pm; sửa lần 1.
dark_baron
.:Super Moderator:.
.:Super Moderator:.

Tuổi: 19
Ngày tham gia: 31 1 2008
Số bài: 117
Đến từ: My Computer
Level:
EXP:
 %
Trả lời với trích dẫn nội dung bài viết này
Nhưng ở đây đầu bài đã nói rõ ra là chỉ đc sử dụng công thức họ cho để làm mà
Trích dẫn:
Lập chương trình tính tổ hợp chập k của n theo công thức:
C(k)n=n(n-1)...(n-k+1)/k!

Chỉ đc dùng công thức này và lập chương trình theo công thức này thôi chứ.

Góp ý thêm câu a): nên đưa thêm 1 hàm If..then..else vào cuối chương trình mục đích so sánh kết quả tính toán ở cả 2 vế rồi chỉ ra sự đúng sai ở công thức:

KHUNG đã viết :
if (nếu VT=VP) then write ('CT đúng') else write ('CT sai')


Được sửa bởi dark_baron ngày 02 3, 2008 10:37 pm; sửa lần 2.
QuangHoang
.:Administrator:.
.:Administrator:.

Tuổi: 19
Ngày tham gia: 30 1 2008
Số bài: 104
Level:
EXP:
 %
Trả lời với trích dẫn nội dung bài viết này
Được rồi chú thích thì anh chiều.
Coi nè:
Code:

uses crt;
var p1,p2:real;i,j,k,n:integer;
begin
     clrscr;
     write('Nhap n= ');readln(n);
     write('Nhap k= ');readln(k);
     if k>=n then write('Nhap so khong hop le.')
     else
    begin
     p1:=1;
     if i<=1 then p1:=1
     else
      Begin
       for i:=2 to k do
        p1:=p1*i;
      End;
     p2:=1;
      begin
       for j:=n downto (n-k+1) do
        p2:=p2*j;
      end;
     write('To hop chap k cua n la: ',p2/p1:12:4);
    end;
     readln
end.
QuangHoang
.:Administrator:.
.:Administrator:.

Tuổi: 19
Ngày tham gia: 30 1 2008
Số bài: 104
Level:
EXP:
 %
Trả lời với trích dẫn nội dung bài viết này
Tiếp tục nhé:
*Bài 3:
Code:
var n,s:integer;
    yn:char;
begin
   yn:='Y';
   while (upcase(yn)='Y') do
     begin
       clrscr;
       writeln('        CHUONG TRINH TINH GIA TRI BIEU THUC');
       writeln;
       delay(2000);
       writeln('    Bieu thuc S=2000+3+6+...+3*n');
       writeln;
       writeln('::-----------------Creat by TQH-----------------::');
       write('Nhap vao so n (lon hon hoac bang 1):');
       readln(n);
       writeln;
       read;
       s:=1000+n*(n+1)*3;
       if n>=1 then
       writeln('Ket qua la:',2*s)
       else
       writeln('Ban da nhap sai');
       read;
       write('Tiep tuc thuc hien phep tinh (Y/N)?');
       readln(yn);
     end;
end.


*Bài 5:
Code:
uses crt;
var x:real;
begin
    clrscr;
    Repeat
    write('Nhap so diem muon kt: ');readln(x);
    until (x>=0) and (x<=10);
    If (x>=9) then write('Xep loai gioi.')
    else
       if (x>=7) and (x<9) then write('Xep loai kha.')
       else
          if (x<5) then write('Xep loai yeu.')
          else write('Xep loai trung binh.');
   readln;
    end.


*Bài 7 c:
Code:
uses crt;
VAR x:integer; a,i:word; s:real;
FUNCTION gt(n:integer):integer ;
  VAR heso, tichso : integer ;
  BEGIN
   tichso := 1 ;
   IF n <= 1 THEN gt:= 1
   ELSE
     BEGIN
      FOR heso := 2 TO n DO
      tichso := tichso * heso ;
      gt:= tichso;
     END;
  END;
{===================}
BEGIN
clrscr;
write('Tinh bieu thuc: 1+1/1!+1/2!+...+1/n!');
write('Nhap n= ');readln(a);
s:=1;
   begin
      for i:=1 to a do s:=s+1/gt(i);
      write('Gia tri bieu thuc la: ',s);
   end;
readln;
END.

- Very Happy Cho ý kiến nhé bà con-


Được sửa bởi QuangHoang ngày 04 3, 2008 5:13 pm; sửa lần 1.
QuangHoang
.:Administrator:.
.:Administrator:.

Tuổi: 19
Ngày tham gia: 30 1 2008
Số bài: 104
Level:
EXP:
 %
Trả lời với trích dẫn nội dung bài viết này
Tính sin(x)=x - x^3/3! + x^5/5! - x^7/7! +...

Code:
uses crt;
var si,eps,gt,x,tu,mau:real;
    dau:shortint;
BEGIN
     clrscr;
     write('Nhap so thuc x : ');readln(x);
     tu:=x;
     mau:=1;
     eps:=x;
     gt:=1;
     si:=x;
     dau:=-1;
       repeat
          tu:=tu*x*x;
          mau:=mau*(gt+1)*(gt+2);
          eps:=tu/mau;
          si:=si+dau*eps;
          dau:=dau*-1;
          gt:=gt+2;
          until eps<0.00001;
     writeln('Sin(',x:0:2,') = ',si:0:2);
     readln;
END.

{=======================================}
Tính Cos(x)=1 - x^2/2! + x^4/4! - x^6/6! +...
Code:
uses crt;
var si,eps,gt,x,tu,mau:real;
    dau:shortint;
BEGIN
     clrscr;
     write('Nhap so thuc x : ');readln(x);
     tu:=1;
     mau:=1;
     eps:=x;
     gt:=0;
     si:=1;
     dau:=-1;
         repeat
            tu:=tu*x*x;
            mau:=mau*(gt+1)*(gt+2);
            eps:=tu/mau;
            si:=si+dau*eps;
            dau:=dau*-1;
            gt:=gt+2;
        until eps<0.00001;
     writeln('cos(',x:0:2,') = ',si:0:2);
     readln;
END.

{===================================================}
Tính số pi theo ct:
pi/4=1 - 1/3 + 1/5 -1/7 + .... với epsilon=0.000001.

Code:
uses crt;
var tu,mau,eps,dau,gt:real;
begin
   clrscr;
   writeln('  -----TINH SO PI----- ');
   tu:=1;
   mau:=1;
   dau:=-1;
   gt:=1;
     repeat
      mau:=mau+2;
      eps:=tu/mau;
      gt:=gt+dau*eps;
      dau:=dau*-1;
     until eps<=0.000001;
   write('So pi la: ',gt*4:1:8);
   readln;
end.
Bài tập Pascal sách "NN lâp trình Pascal" trang 53
Bạn được quyền gửi bài viết
Bạn được quyền trả lời bài viết
Bạn không có quyền sửa chữa bài viết của bạn
Bạn không có quyền xóa bài viết của bạn
Bạn không có quyền tham gia bầu chọn
Thời gian được tính theo giờ [GMT+ 7 giờ]  
Trang 1 trong tổng số 1 trang  

  
  
Gửi bài mới Trả lời chủ đề này  




Free forum Xem clip vui Search videos
Chụp hình online

Copyright phpBB2 © 2001-2006 phpBB Group