Bài Tập Thuật Toán Trong Pascal - TaiLieu.VN
Có thể bạn quan tâm
Mạng xã hội chia sẻ tài liệu Upload Đăng nhập Nâng cấp VIP Trang chủ » Công Nghệ Thông Tin » Kỹ thuật phần mềm57 trang 1971 lượt xem 2750Bài tập thuật toán trong Pascal"Bài tập thuật toán trong Pascal" cung cấp các dạng bài tập về thuật toán trong Pascal và có hướng dẫn cách giải. Tài liệu giúp các bạn nắm bắt và củng cố những kiến thức, kỹ năng sử dụng các thuật toán như: thuật toán tính tổng giữa các chữ số của một số nguyên; thuật toán EUCLIDE tính UCLN; thuật toán tính tổng các ước số của một số nguyên; thuật toán tính công thức chuỗi...Mời các bạn cùng tham khảo nội dung chi tiết.
Chủ đề:
vuthuthao06Kỹ thuật lập trình nâng cao
Bài tập Kỹ thuật lập trình nâng cao
SaveLikeShareReport Download AI tóm tắt /57
Bai_tap_PascalBai tap PascalCÁ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ẶPTHUẬT TOÁN TÍNH GIAI THỪA MỘT SỐ NGUYÊNGiai 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 lặp như sau:function hammu(a : real; n : integer): real;var s : real; i : integer;begin s := 1; for i := 1 to n do s := s * a; hammu := s;end;THUẬT TOÁN TÍNH CÔNG THỨC CHUỖIThuật toán tính hàm ex: Đặt: và , ta được công thức truy hồi:Khi đó, ta có thể tính công thức chuỗi trên như sau:function expn(x: real; n : integer): real;var s,r : real; i : integer;begin s := 1; r := 1; for i := 1 to n do begin r := r * x / i; s := s + r; end; expn := s;
end;CÁC BÀI TẬP VỀ MẢNG 1 CHIỀU VÀ 2 CHIỀUBÀI TẬP 1Nhập vào một số n (5<=n<=10) và n phần tử của dãy a, 1<ai<100 (có kiểm tra dữ liệu khi nhập).a) In ra các phần tử là số nguyên tố của dãy.b) Tính ước chung lớn nhất của tất cả các phần tử của dãy.c) Tính biểu thức sau:d) Sắp xếp dãy tăng dần và in ra dãy sau sắp xếp.HƯỚNG DẪNTa nên chia chương trình thành các chương trình con, mỗi chương trình thực hiện một yêu cầu. Ngoài ra ta cũng viết thêm các hàm kiểm tra nguyên tố, hàm mũ, hàm UCLN để thực hiện các yêu cầu đó.Chương trình như sau:Khai báo dữ liệu:uses crt;var n : integer; a : array[1..10] of integer; {n<=10 nên mảng có tối đa 10 phần tử}Thủ tục nhập dữ liệu, có kiểm tra khi nhập.procedure nhap;var i : integer;begin clrscr; write('NHAP VAO SO PHAN TU N = '); repeat readln(n); Tài liệu liên quan
Bài tập Kỹ thuật lập trình - TS. Nguyễn Duy Phương
180 trangBáo cáo bài tập lớp - Môn: Nhập môn về lập trình
11 trangBài tập Phần lập trình cơ bản
9 trangCác bài tập Pascal cơ bản
214 trangBài tập C và C++
196 trangThực tập Kỹ thuật lập trình: Thực hiện các báo cáo thống kê
W 5 trangThực tập Kỹ thuật lập trình: Thực hiện các chức năng tìm kiếm
W 5 trangThực tập Kỹ thuật lập trình: Thực hiện các chức năng sắp xếp
W 17 trangThực tập Kỹ thuật lập trình: Xây dựng cấu trúc dữ liệu và các chức năng nhập/xuất dữ liệu
W 29 trangThực tập Kỹ thuật lập trình: Xây dựng khung chương trình và menu chọn
W 16 trangTài liêu mới
Bài giảng môn Phát triển ứng dụng web: Responsive Web Design - Lê Đình Thanh
73 trangBài giảng môn Phát triển ứng dụng web: Chương 9 - Lê Đình Thanh
37 trangBài giảng môn Phát triển ứng dụng web: Chương 8 - Lê Đình Thanh
70 trangBài giảng môn Phát triển ứng dụng web: Chương 7 - Lê Đình Thanh
34 trangBài giảng môn Phát triển ứng dụng web: Chương 6 - Lê Đình Thanh
104 trangBài giảng môn Phát triển ứng dụng web: Chương 5.3 - Lê Đình Thanh
21 trangBài giảng môn Phát triển ứng dụng web: Chương 5.2 - Lê Đình Thanh
50 trangBài giảng môn Phát triển ứng dụng web: Chương 5.1 - Lê Đình Thanh
42 trangBài giảng môn Phát triển ứng dụng web: Chương 4 - Lê Đình Thanh
135 trangBài giảng môn Phát triển ứng dụng web: Chương 3 - Lê Đình Thanh
118 trangBài giảng môn Phát triển ứng dụng web: Chương 2 - Lê Đình Thanh
83 trangBài giảng môn Phát triển ứng dụng web: Chương 1 - Lê Đình Thanh
46 trangBài giảng môn Phát triển ứng dụng web: Chương giới thiệu - Lê Đình Thanh
10 trangTài liệu Nhập môn công nghệ phần mềm
308 trangLecture Software engineering - Chapter 9: Software evolution
28 trangAI tóm tắt
- Giúp bạn nắm bắt nội dung tài liệu nhanh chóng!Giới thiệu tài liệu
Đối tượng sử dụng
Từ khoá chính
Nội dung tóm tắt
Giới thiệu
Về chúng tôi
Việc làm
Quảng cáo
Liên hệ
Chính sách
Thoả thuận sử dụng
Chính sách bảo mật
Chính sách hoàn tiền
DMCA
Hỗ trợ
Hướng dẫn sử dụng
Đăng ký tài khoản VIP
Zalo/Tel:093 303 0098
Email:[email protected]
Phương thức thanh toán
Theo dõi chúng tôi
Youtube
TikTok
Chịu trách nhiệm nội dung: Nguyễn Công Hà Doanh nghiệp quản lý: Công ty TNHH Tài Liệu trực tuyến Vi Na - GCN ĐKDN: 0307893603 Địa chỉ: 54A Nơ Trang Long, P. Bình Thạnh, TP.HCM - Điện thoại: 0283 5102 888 - Email: [email protected]ấy phép Mạng Xã Hội số: 670/GP-BTTTT cấp ngày 30/11/2015 Từ khóa » Cách Xây Dựng Thuật Toán Trong Pascal
-
THUẬT TOÁN CƠ BẢN TRONG PASCAL - 123doc
-
Thuật Toán & Kỹ Thuật Lập Trình Pascal - Tài Liệu Text - 123doc
-
Thuật Toán Pascal Là Gì - Học Tốt
-
Xây Dựng Thuật Toán Và Viết Chương Trình Sắp Xếp 5 Số Thứ Tự Trong ...
-
Hướng Dẫn Học Pascal Cơ Bản, đơn Giản - Wiki Phununet
-
Sáng Tạo Trong Thuật Toán Và Lập Trình Pascal Và C# - SlideShare
-
Pascal - Độ Phức Tạp Của Thuật Toán - Tài Liệu đại Học
-
[DOC] MỘT SỐ GIÁO ÁN ÔN TẬP VÀ BÀI TẬP
-
Câu 8: Đại Lượng được đặt Tên Dùng để Lưu Trữ Dữ Liệu, Giá Trị Có Thể ...
-
A. Phần Khai Báo Và Phần Thân B. Phần Mở Bài, Thân Bài, Kết Luận C ...
-
SKKN Rèn Luyện Tư Duy Thuật Toán Trong Học Lập Trình Pascal
-
PHƯƠNG PHÁP TỔNG QUÁT ĐỂ GIẢI MỘT BÀI TOÁN BẰNG MÁY ...
-
[PPT] LẬP TRÌNH PASCAL