Mot so bai tap pascal co ban va nang cao
Chia sẻ bởi Doãn Thế Anh Tuấn |
Ngày 14/10/2018 |
31
Chia sẻ tài liệu: Mot so bai tap pascal co ban va nang cao thuộc Tư liệu tham khảo
Nội dung tài liệu:
Một số bài tập lập trình Pascal
Created by NgoHung
Vấn đề 1: Cấu trúc điều khiển
Bà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 = 15
Yê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 N
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 tính tổng S:
Khởi gán giá trị ban đầu cho tổng S
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 N
if ( i % 5 == 0) // Kiem tra i co’ phai la 5, 10, 15… hay khong
S := S + i; // Dung ==>Tinh tong cong don i vao S
Bà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 to
Yê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ến
Chươ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
Created by NgoHung
Vấn đề 1: Cấu trúc điều khiển
Bà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 = 15
Yê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 N
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 tính tổng S:
Khởi gán giá trị ban đầu cho tổng S
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 N
if ( i % 5 == 0) // Kiem tra i co’ phai la 5, 10, 15… hay khong
S := S + i; // Dung ==>Tinh tong cong don i vao S
Bà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 to
Yê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ến
Chươ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
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Doãn Thế Anh Tuấn
Dung lượng: 230,00KB|
Lượt tài: 0
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)