Tài nguyên dạy học

Ảnh ngẫu nhiên

Hung_4c.bmp Mi.bmp Lop_nhi.bmp LOP_HOC.bmp Hinh_nen_chu_phuc4x5.jpg Nhan.jpg 36.bmp Hoa_hong_no_3.flv Hoa_hong_no2.flv Ho_hong_no.flv Video_Movie_120220151617.flv Cau_da_rang.jpg Images9.jpg Su_tu_va_sutu.flv Ca_sau.flv Movie.flv 54_dan_toc.flv Myson.flv Moitruon.flv Kientao.flv

Thành viên trực tuyến

0 khách và 0 thành viên

Thống kê

  • truy cập   (chi tiết)
    trong hôm nay
  • lượt xem
    trong hôm nay
  • thành viên
  • Giao lưu học hỏi ?!

    Dự báo thời tiết

    Điều tra ý kiến

    Bạn thấy trang này như thế nào?
    Đẹp
    Đơn điệu
    Bình thường
    Ý kiến khác

    Sắp xếp dữ liệu

    Chào mừng quý vị đến với website của Phạm Văn Phúc - Tuy Hòa- Phú Yên

    Quý vị chưa đăng nhập hoặc chưa đăng ký làm thành viên, vì vậy chưa thể tải được các tài liệu của Thư viện về máy tính của mình.
    Nếu chưa đăng ký, hãy nhấn vào chữ ĐK thành viên ở phía bên trái, hoặc xem phim hướng dẫn tại đây
    Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay phía bên trái.

    ôn tập một số thuật toán

    Nhấn vào đây để tải về
    Hiển thị toàn màn hình
    Báo tài liệu có sai sót
    Nhắn tin cho tác giả
    (Tài liệu chưa được thẩm định)
    Nguồn:
    Người gửi: Phạm Văn Phúc
    Ngày gửi: 15h:00' 24-11-2011
    Dung lượng: 33.0 KB
    Số lượt tải: 96
    Số lượt thích: 0 người
    CÁC THUẬT TOÁN VỀ SỐ
    THUẬT TOÁN KIỂM TRA SỐ NGUYÊN TỐ
    Thuật toán của ta dựa trên ý tưởng: nếu n >1 không chia hết cho số nguyên nào trong tất cả các số từ 2 đến  thì n là số nguyên tố. Do đó ta sẽ kiểm tra tất cả các số nguyên từ 2 đến có round(sqrt(n)), nếu n không chia hết cho số nào trong đó thì n là số nguyên tố.
    Nếu thấy biểu thức round(sqrt(n)) khó viết thì ta có thể kiểm tra từ 2 đến n div 2.
    Hàm kiểm tra nguyên tố nhận vào một số nguyên n và trả lại kết quả là true (đúng) nếu n là nguyên tố và trả lại false nếu n không là số nguyên tố.
    function ngto(n:integer):boolean;
    var i:integer;
    begin
    ngto:=false;
    if n<2 then exit;
    for i:=2 to trunc(sqrt(n)) do
    if n mod i=0 then exit; {nếu n chia hết cho i thì n không là nguyên tố => thoát luôn}
    ngto:=true;
    end;
    Chú ý: Dựa trên hàm kiểm tra nguyên tố, ta có thể tìm các số nguyên tố từ 1 đến n bằng cách cho i chạy từ 1 đến n và gọi hàm kiểm tra nguyên tố với từng giá trị i.
    THUẬT TOÁN TÍNH TỔNG CÁC CHỮ SỐ CỦA MỘT SỐ NGUYÊN
    Ý tưởng là ta chia số đó cho 10 lấy dư (mod) thì được chữ số hàng đơn vị, và lấy số đó div 10 thì sẽ được phần còn lại. Do đó sẽ chia liên tục cho đến khi không chia được nữa (số đó bằng 0), mỗi lần chia thì được một chữ số và ta cộng dồn chữ số đó vào tổng.
    Hàm tính tổng chữ số nhận vào 1 số nguyên n và trả lại kết quả là tổng các chữ số của nó:
    function tongcs(n:integer): integer;
    var s : integer;
    begin
    s := 0;
    while n <> 0 do begin
    s := s + n mod 10;
    n := n div 10;
    end;
    tongcs := s;
    end;
    Chú ý: Tính tích các chữ số cũng tương tự, chỉ cần chú ý ban đầu gán s là 1 và thực hiện phép nhân s với n mod 10.
    THUẬT TOÁN EUCLIDE TÍNH UCLN
    Ý tưởng của thuật toán Euclide là UCLN của 2 số a,b cũng là UCLN của 2 số b và a mod b, vậy ta sẽ đổi a là b, b là a mod b cho đến khi b bằng 0. Khi đó UCLN là a.
    Hàm UCLN nhận vào 2 số nguyên a,b và trả lại kết quả là UCLN của 2 số đó.
    function UCLN(a,b: integer): integer;
    var r : integer;
    begin
    while b<>0 do begin
    r := a mod b;
    a := b;
    b := r;
    end;
    UCLN := a;
    end;
    Chú ý: Dựa trên thuật toán tính UCLN ta có thể kiểm tra được 2 số nguyên tố cùng nhau hay không. Ngoài ra cũng có thể dùng để tối giản phân số bằng cách chia cả tử và mẫu cho UCLN.
    THUẬT TOÁN TÍNH TỔNG CÁC ƯỚC SỐ CỦA MỘT SỐ NGUYÊN
    Để tính tổng các ước số của số n, ta cho i chạy từ 1 đến n div 2, nếu n chia hết cho số nào thì ta cộng số đó vào tổng. (Chú ý cách tính này chưa xét n cũng là ước số của n).
    function tongus(n : integer): integer;
    var i,s : integer;
    begin
    s := 0;
    for i := 1 to n div 2 do
    if n mod i = 0 then s := s + i;
    tongus := s;
    end;
    Chú ý: Dựa trên thuật toán tính tổng ước số, ta có thể kiểm tra được 1 số nguyên có là số hoàn thiện không: số nguyên gọi là số hoàn thiện nếu nó bằng tổng các ước số của nó.
    CÁC THUẬT TOÁN VỀ VÒNG LẶP
    THUẬT TOÁN TÍNH GIAI THỪA MỘT SỐ NGUYÊN
    Giai thừa n! là tích các số từ 1 đến n. Vậy hàm giai thừa viết như sau:
    function giaithua(n : integer) : longint;
    var i : integer; s : longint;
    begin
    s := 1;
    for i := 2 to n do s := s * i;
    giaithua := s;
    end;
    THUẬT TOÁN TÍNH HÀM MŨ
    Trong Pascal ta có thể tính ab bằng công thức exp(b*ln(a)). Tuy nhiên nếu a không phải là số dương thì không thể áp dụng được.
    Ta có thể tính hàm mũ an bằng công thức
     
    Gửi ý kiến

    ↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng RAR và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT  ↓