Danh mục

Một số bài tập lập trình Pascal

Số trang: 5      Loại file: doc      Dung lượng: 69.50 KB      Lượt xem: 21      Lượt tải: 0    
10.10.2023

Phí lưu trữ: miễn phí Tải xuống file đầy đủ (5 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Mời các bạn cùng tham khảo một số bài tập lập trình Pascal có hướng dẫn kèm theo. Tài liệu có tổng cộng 5 bài tập giúp các bạn rèn luyện kỹ năng lập trình và củng kiến thức để chuẩn bị tốt cho các kỳ kiểm tra và thi cử trên lớp.
Nội dung trích xuất từ tài liệu:
Một số bài tập lập trình PascalMột số bài tập lập trình PascalVấn đề 1: Cấu trúc điều khiểnBài toán số 1.1: Tính tổng của các số tự nhiên từ 1 đến N. S=1+2+…+N Ví dụ : N = 5, S = 1 + 2 + 3 + 4 + 5 = 15Yêu cầu: Input: N, là số tự nhiên bất kỳ. Output: S, là tổng của các số từ 1 đến NHướng dẫn: Bài toán được thực hiện qua 3 bước cụ thể như sau: - Thông báo nhập liệu, và nhập dữ liệu vào cho N - Tiến hành tính tổng S: o Khởi gán giá trị ban đầu cho tổng S o Tiến hành tính tổng, cộng dồn với các giá trị của i vào S (với i được lặp từ 1 cho đến N) - Xuất kết quả của tổng S ra màn hình.Chương trình: Program TinhTong; Uses crt; Var S,i,n:Integer; // Khai bao bien su dung BEGIN Write( ‘ Nhap so n:’ ); // Thong bao nhap lieu Readln( n ); // Nhap gtri N, (voi &N la lay d/c bien N) S: = 0; // Khoi gan gia tri ban dau cho S For i:=1 to n do // Lap voi moi i co gia tri tu 1 den N S:=S + i; // Tinh tong cong don i vao S Writeln( ‘Tong = ’, S); // Xuat ket qua tong S ra man hinh Readln; END.Các phiên bản khác nhau của bài toán là: ⊕ Tính tổng (với giả sử N là số lẻ) ⊕ Tính tổng các số tự nhiên lẻ nhỏ hơn hoặc bằng N. ⊕ Tính tổng các số tự nhiên chia hết cho 5 như 5, 10, 15, 20, 25, 30….N (N chia hết cho 5)Hướng dẫn: - Điều chỉnh bước lặp cho phù hợp. - Trước khi cộng dồn giá trị của i vào tổng S, phải kiểm tra điều kiện giá trị của i có thỏa mãn điều kiện bài toán hay không.Cụ thể là: ⊕ For i:= 1 to n do // Lap voi moi i co gia tri tu 1 den N S:= S + i / (i+1); // Tinh tong cong don i/(i+1) vao S (Luu y, truong hop nay bien S phai duoc khai bao kieu du lieu la so thuc Real ) ⊕ For i:=1 to n do // Lap voi moi i co gia tri tu 1 den N if ( i mod 2 == 1) // Kiem tra i co’ phai la so le hay khong S := S + i; // Dung ==> Tinh tong cong don i vao S ⊕ for i:=1 to n do // Lap voi moi i co gia tri tu 1 den Nif ( i % 5 == 0) // Kiem tra i co’ phai la 5, 10, 15… hay khong S := S + i; // Dung ==>Tinh tong cong don i vao SBài toán số 1.2: Kiểm tra số N có phải là số nguyên tố hay không. Ví dụ: N = 19 Kết quả là: 19 la so nguyen to N = 33 Kết quả là: 33 khong phai la so nguyen toYêu cầu: Input: N, là số tự nhiên bất kỳ. Output: Trả lời “N la so nguyen to” hoặc “N khong phai la so nguyen to” tùy theo N.Lưu ý: Số nguyên tố là số chỉ có thể chia hết cho 1 và chính nó ( N ). Ngược lại, N là không phải là số nguyên ==> N chia hết cho một số trong khoảng từ 2 đến (N-1).Hướng dẫn: Bài toán được thực hiện qua 3 bước cụ thể như sau: - Thông báo nhập liệu, và nhập dữ liệu vào cho N - Tiến hành kiểm tra N có phải là số nguyên tố hay không: - Xuất câu trả lời “N la so nguyen to” hoặc “N khong phai la so nguyen to” tùy theo giá trị của biếnChương trình: Program SNT; Uses crt; Var n , i :Integer; // Khai bao bien su dung BEGIN Write(‘Nhap vao mot so:’); // Thong bao nhap lieu Readln(n); // Nhap gtri N, (voi &N la lay d/c bien N) i := round( sqrt(n) ); If( n mod i 0) then // Xuat cau tra loi cuoi cung Writeln(‘ N la so nguyen to’) Else Writeln(‘ N khong la so nguyen to’); Readln; END. Bài toán số 1.3: Tìm USCLN(a, b) va BSCNN(a, b) Ví dụ: USCLN(18, 24) = 4 và BSCNN(18, 24) = 72Yêu cầu: Input: a, b là 2 số tự nhiên. Output: USCLN và BSCNN của a và bMột số lưu ý: - Nếu i là ước số của a và b thì a và b đồng thời chia hết cho i - Luôn luôn có tối thiểu một USCLN của a và b là 1. - Nếu i là USCLN thì i là ước số nhỏ hơn cả a lẫn b và gần a, b nhất. Như vậy, nếu sử dụng một vòng lặp để kiểm tra a,b có đồng thời chia hết cho i hay không thì i là USCLN khi: + i là USC (a, b cùng chia hết cho i) cuối cùng nếu i lặp từ 1 đến a (hoặc b). + i là USC (a, b cùng chia hết cho i) đầu tiên nếu lặp từ a (hoặc b) quay về 1. - BSCNN(a, b) = a * b / (USCLN(a, b)Hướng dẫn: Bài toán được thực hiện qua 3 bước cụ thể như sau: - Thông báo nhập liệu, và nhập ...

Tài liệu được xem nhiều: