Bài Tập Thuật Toán Trong Pascal - TaiLieu.VN

logo 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 1949 lượt xem 2740Bà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ủ đề:

vuthuthao06

Kỹ 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 /57Bai_tap_PascalBai tap PascalCÁC THUT TOÁN V STHUT TOÁN KIM TRA S NGUYÊN TThut toán ca ta da trên ý tưởng: nếu n >1 không chia hết cho s nguyên nào trong tt c các s t 2 đến thì n là s nguyên t. Do đó ta s kim tra tt 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 thy biu thc round(sqrt(n)) khó viết thì ta có th kim tra t 2 đến n div 2.Hàm kim tra nguyên t nhn vào mt s nguyên n và tr li kết qu là true (đúng) nếu n là nguyên t và tr li 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ú ý: Da trên hàm kim tra nguyên t, ta có th tìm các s nguyên t t 1 đến n bng cách cho i chy t 1 đến n và gi hàm kim tra nguyên t vi tng giá tr i.THUT TOÁN TÍNH TNG CÁC CH S CA MT S NGUYÊNÝ tưởng là ta chia s đó cho 10 ly dư (mod) thì được ch s hàng đơn v, và ly s đó div 10 thì s được phn còn li. Do đó s chia liên tc cho đến khi không chia được na (s đó bng 0), mi ln chia thì được mt ch s và ta cng dn ch s đó vào tng.Hàm tính tng ch s nhn vào 1 s nguyên n và tr li kết qu là tng các ch s ca 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 cn chú ý ban đu gán s là 1 và thc hin phép nhân s vi n mod 10.THUT TOÁN EUCLIDE TÍNH UCLNÝ tưởng ca thut toán Euclide là UCLN ca 2 s a,b cũng là UCLN ca 2 s b và a mod b, vy ta s đi a là b, b là a mod b cho đến khi b bng 0. Khi đó UCLN là a.Hàm UCLN nhn vào 2 s nguyên a,b và tr li kết qu là UCLN ca 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ú ý: Da trên thut toán tính UCLN ta có th kim tra được 2 s nguyên t cùng nhau hay không. Ngoài ra cũng có th dùng đ ti gin phân s bng cách chia c t và mu cho UCLN.THUT TOÁN TÍNH TNG CÁC ƯỚC S CA MT S NGUYÊNĐ tính tng các ước s ca s n, ta cho i chy t 1 đến n div 2, nếu n chia hết cho s nào thì ta cng s đó vào tng. (Chú ý cách tính này chưa xét n cũng là ước s ca 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ú ý: Da trên thut toán tính tng ước s, ta có th kim tra được 1 s nguyên có là s hoàn thin không: s nguyên gi là s hoàn thin nếu nó bng tng các ước s ca nó.CÁC THUT TOÁN V VÒNG LPTHUT TOÁN TÍNH GIAI THA MT S NGUYÊNGiai tha n! là tích các s t 1 đến n. Vy hàm giai tha 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; THUT TOÁN TÍNH HÀM MŨTrong Pascal ta có th tính ab bng công thc exp(b*ln(a)). Tuy nhiên nếu a không phi là s dương thì không th áp dng được.Ta có th tính hàm mũ an bng công thc lp 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;THUT TOÁN TÍNH CÔNG THC CHUIThut toán tính hàm ex: Đt: và , ta được công thc truy hi:Khi đó, ta có th tính công thc chui 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 TP V MNG 1 CHIU VÀ 2 CHIUBÀI TP 1Nhp vào mt s n (5<=n<=10) và n phn t ca dãy a, 1<ai<100 (có kim tra d liu khi nhp).a) In ra các phn t là s nguyên t ca dãy.b) Tính ước chung ln nht ca tt c các phn t ca dãy.c) Tính biu thc sau:d) Sp xếp dãy tăng dn và in ra dãy sau sp xếp.HƯỚNG DNTa nên chia chương trình thành các chương trình con, mi chương trình thc hin mt yêu cu. Ngoài ra ta cũng viết thêm các hàm kim tra nguyên t, hàm mũ, hàm UCLN đ thc hin các yêu cu đó.Chương trình như sau:Khai báo d liu:uses crt;var n : integer; a : array[1..10] of integer; {n<=10 nên mng có ti đa 10 phn t}Th tc nhp d liu, có kim tra khi nhp.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 Pascal cơ bản: Tổng hợp đầy đủ nhất

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

214 trang Bài tập C và C++: Tổng hợp đầy đủ, chi tiết nhất

Bài tập C và C++

196 trang Bài tập Pascal lớp 11: Cơ bản đến nâng cao theo chương trình Tin học (không phân ban)

Bài tập Pascal cơ bản đến nâng cao theo chương trình Tin học lớp 11 không phân ban

W 48 trang 77 bài tập C++: [Hướng dẫn] từ cơ bản đến nâng cao

77 bài tập C++

18 trang 100 bài tập Turbo Pascal: Tổng hợp đầy đủ, chi tiết

100 bài tập turbo pasca

55 trang Tổng hợp bài tập C, C++ cơ bản, từ A đến Z

Tổng hợp bài tập c-c++ cơ bản

W 1 trang Mẫu bài tập lập trình hợp ngữ: Tổng hợp các dạng bài tập

Một số các mẫu bài tập lập trình hợp ngữ

18 trang Bài tập Kỹ thuật lập trình C: Hướng dẫn và Thực hành

Bài tập Kỹ thuật lập trình - Lập trình C

12 trang Bài tập lớn Matlab và ứng dụng: Kinh nghiệm làm bài, chuẩn nhất

Bài tập lớn môn matlad và ứng dụng

42 trang 100 bài tập Turbo Pascal: Kinh nghiệm giải nhanh và hiệu quả

100 bài tập Turbo Pascal

W 54 trang

Tài liêu mới

Thiết kế hệ thống theo hướng đối tượng: Bài giảng chương 4

Bài giảng Thiết kế hướng đối tượng: Chương 4 - Thiết kế hệ thống

95 trang Bài giảng Thiết kế hướng đối tượng: Phân tích hệ thống (Chương 3)

Bài giảng Thiết kế hướng đối tượng: Chương 3 - Phân tích hệ thống

138 trang Bài giảng Thiết kế hướng đối tượng: Ngôn ngữ mô hình hóa hướng đối tượng - Chương 2

Bài giảng Thiết kế hướng đối tượng: Chương 2 - Ngôn ngữ mô hình hóa hướng đối tượng

58 trang Thiết kế hướng đối tượng: Bài giảng chương 1 - Tổng quan thiết kế hướng đối tượng

Bài giảng Thiết kế hướng đối tượng: Chương 1 - Tổng quan thiết kế hướng đối tượng

40 trang Bài giảng Lập trình website ThS. Trần Thịnh Mạnh Đức

Bài giảng Lập trình website - ThS. Trần Thịnh Mạnh Đức

79 trang Tài liệu ôn tập môn Lập trình web 1 [mới nhất/chuẩn nhất]

Tài liệu ôn tập môn Lập trình web 1

W 34 trang Tài liệu thực hành Phát triển ứng dụng Web 1

Tài liệu thực hành Phát triển ứng dụng Web 1

189 trang Xây dựng hệ thống dạy và học trực tuyến: Bài thuyết trình tích hợp công nghệ Android cho di động

Bài thuyết trình: Xây dựng hệ thống hỗ trợ dạy và học trực tuyến với tích hợp công nghệ Android cho di dộng

35 trang Bài giảng Lập trình hướng đối tượng ThS. Trương Thị Minh Châu

Bài giảng Lập trình hướng đối tượng - ThS. Trương Thị Minh Châu

35 trang Bài giảng Lập trình Java: Kết nối cơ sở dữ liệu (JDBC) - Chương 5

Bài giảng Lập trình Java: Chương 5 - Kết nối cơ sở dữ liệu (JDBC)

26 trang Bài giảng Lập trình Java: Luồng (streams) - Chương 4

Bài giảng Lập trình Java: Chương 4 - Luồng (streams)

25 trang Bài giảng Lập trình Java: Kế thừa - Đa hình - Đóng gói (Chương 3)

Bài giảng Lập trình Java: Chương 3 - Kế thừa - Đa hình - Đóng gói

11 trang Bài giảng Lập trình Java: Đối tượng, lớp và phương thức (Chương 2)

Bài giảng Lập trình Java: Chương 2 - Đối tượng - lớp - phương thức

13 trang Bài giảng Lập trình Java: Tổng quan ngôn ngữ Java - Chương 1

Bài giảng Lập trình Java: Chương 1 - Tổng quan ngôn ngữ Java

29 trang Bài tập lớn quản lý thư viện: Kinh nghiệm và giải pháp

Bài tập lớn: Quản lý thư viện

W 202 trang

AI 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

Facebook

Youtube

TikTok

chứng nhậnChị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