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

Các ý kiến mới nhất

Hỗ trợ trực tuyến

Điều tra ý kiến

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

Thống kê

  • truy cập   (chi tiết)
    trong hôm nay
  • lượt xem
    trong hôm nay
  • thành viên
  • Ảnh ngẫu nhiên

    Danh_rang.jpg V1__KNTT_su_phan_chia_te_bao.flv Push_and_Pull_Song__A_simple_fun_kids_song_about_pushes_and_pulls.flv 2_phut.flv Screenshot_145.png Quan_sat_lo_tho_cua_la_su_dong_mo_cua_lo_tho_Khi_khong_duoi_kinh_hien_vi.flv 408475839207023969.flv 4772433765765916872.flv Z4151505423792_b6cbaaca3c5307c4e9b17ed601b1c804.jpg 20180703_152231.jpg 20180703_105136.jpg IMG_5655.JPG IMG_6031.JPG 36860783_2095912740676736_8573339710246617088_n.jpg IMG_20170529_095617.jpg TK_nam_hoc.bmp 16832136_787463894736832_5331767775058352854_n.jpg G2.JPG ImagesQ.jpg AN.jpg

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

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

    Chào mừng quý vị đến với website của ...

    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.

    Tập huấn Sở GD-ĐT 2010

    Wait
    • Begin_button
    • Prev_button
    • Play_button
    • Stop_button
    • Next_button
    • End_button
    • 0 / 0
    • Loading_status
    Nhấn vào đây để tải về
    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: Nguyễn Quyết Chiến (trang riêng)
    Ngày gửi: 13h:03' 28-11-2010
    Dung lượng: 11.2 KB
    Số lượt tải: 37
    Số lượt thích: 0 người
    Chuyên đề
    Các phép tính với số lớn trong NNLT Pascal.
    ( VVSửu., GV Trường THPT chuyên HN-AMSTERDAM)

    Đặt vấn đề.

    Do hạn chế về bộ nhớ, nên các phép toán cộng, trừ, nhân, chia trong NNLT pascal chỉ thực hiện được đối với các số nhỏ. Trong lúc đó nhiều bài toán cần thực hiện phép toán với hàng trăm, thậm chí hàng ngàn chữ số. Chúng ta sẽ sử dụng một vài cấu trúc dữ liệu như xâu, mảng và các thuật toán đã học từ thời THCS để thực hiện yêu cầu tính toán đối với các số lớn.

    II. Các bài toán cơ bản

    Bài toán 1. Cộng 2 số lớn.


    Input: Cho S1, S2 là 2 số nguyên dương, mỗi số có số chữ số <=200 (nhập dưới dạng xâu)
    Output: S1+S2.
    Thuật toán:
    Tạo các thủ tục :
    +procedure DOI (S:string, Var a :mang);
    { đổi các kí tự số từ S thành các số tương ứng trong mảng a (với thứ tự ngựợc lại)}
    Var n, i, cod: integer;
    Begin
    n:=length(S);
    For i:= n downto 1 do
    Begin
    val(s[i],a[n-i],cod)
    End ;
    +Procedure CONG (a,b: mang; var c:mang);
    Var nho, tg: integer;
    Begin
    Nho:=0;
    For i:= 0 to 300 do
    Begin
    Tg:=a[i]+b[i]+ nho;
    c[i]:=tg mod 10;
    nho:=tg div 10;
    End;
    End;
    + procedure INKQ (c:mang);
    Var sc,i: integer;
    Begin
    For sc :=300 downto 0 do if c[sc]<>0 then break;
    For i:=sc downto 0 do write(c[i]);
    End;
    Begin {main}
    READLN( S1, S2);
    DOI(S1,a);
    DOI(S2,b);
    CONG (a,b,c);
    INKQ(c);
    End.

    Bài toán 2. Hiệu 2 số lớn.

    Input : S1, S2 Xâu biểu diễn số (giả thiết s1≥ s2)
    Output : S1- S2.
    Begin
    Readln(S1, S2);
    DOI(s1,a); DOI(s2,b);
    TRU(a,b,h);
    INKQ(h);
    End.
    Procedure TRU(a,b:mang;var h:mang);
    Var
    Begin
    Muon:=0;
    For i:=0 to 300 do
    Begin
    b[i]:=b[i]+muon;
    If a[i]>=b[i] then begin h[i]:=a[i]-b[i]; muon:=0;end
    Else
    Begin
    muon:=1;
    h[i]:=10+a[i]-b[i];
    End;
    End;

    Bài 3. So sánh 2 số lớn.

    Input: S1, S2 2 số có số chữ số <=200.
    Output: sắp xếp lại 2 xâu để S1>=S2.
    Prorcedure sosanh(X,Y: string; Var biger, equal, less: Boolean);
    Begin
    biger:=false; equal:=false; less:=false; nx:=length(X); ny:=length(Y);
    If X=Y then equal:=true
    Else if nx> ny then biger:=true
    Else if ny> nx then less:=true
    Else
    Begin
    i:=0;
    While (X[i+1]=Y[i+1]) and (i If i=nx then equal:=true;
    Else if X[i]>Y[i] then Biger:=true
    Else less:=true;
    End;
    End;
    Begin{ Main}
    READLN (S1,S2);
    SOSANH(S,S2,big, eq,les);
    If les then begin tg:=S1; s1:=s2
     
    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  ↓