1. Trang chủ
  2. » Giáo án - Bài giảng

Bài tập Pascal 02 Procedure và Function

4 901 5

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 196,81 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài 01 – In ra giá trị giai thừa của mảng 1 chiều Bài 02 – In ra giá trị luỹ thừa 2 của các phần tử trong mảng 1 chiều Bài 03 – In ra giá trị nhân đôi của các phần tử trong mảng 1 chiều Bài 04 – In ra giá trị nhân 4 của các phần tử trong mảng 1 chiều Bài 05 – In ra số nguyên tố trong mảng 1 chiều

Trang 1

Biên soạn: Th.s Nguyễn Anh Việt Trang 1

Function là hàm do người lập trình tự tạo để thực hiện một chức năng nào đó, TD:

Function GiaiThua(k: Integer): LongInt;

là hàm dùng để tính giai thừa của một số k và trả về giá trị giai thừa của K

Function GiaiThua(k: Integer): LongInt;

Var

GTGT: LongInt;

Begin

GTGT := 1;

For i := 1 to k do

GTGT := GTGT * i;

GiaiThua := GTGT;

End;

Bài 01 – In ra giá trị giai thừa của mảng 1 chiều

Bạn hãy nhập một dãy số nguyên và tính giai thừa của từng số trong dãy đó

(Dãy 1, 4, 7, 5, 2 => In ra 1, 24, 5040, 120, 2)

Var

A: Array [1 10] of Integer;

i, n: Integer;

Function GiaiThua(k: Integer): LongInt;

Var

GTGT: LongInt;

Begin

GTGT := 1;

For i := 1 to k do

GTGT := GTGT * i;

GiaiThua := GTGT;

End;

Begin

WriteLn('Hay nhap so phan tu cua day so');

ReadLn(n);

{Nhập dãy số}

For i := 1 to n do begin

WriteLn('Hay nhap phan tu thu ', i);

ReadLn(A[i]);

End;

Trang 2

Biên soạn: Th.s Nguyễn Anh Việt Trang 2

{In ra giá trị giai thừa}

For i := 1 to n do

Write(GiaiThua(A[i]):6);

ReadLn;

End

Bài 02 – In ra giá trị luỹ thừa 2 của các phần tử trong mảng 1 chiều

Bạn hãy nhập một dãy số nguyên và tính luỹ thừa 2 của từng số trong dãy đó

(Dãy 1, 4, 7, 5, 2 => In ra 1, 16, 49, 25, 4)

Var

A: Array [1 10] of Integer;

i, n: Integer;

Function LuyThua(a, k: Integer): LongInt;

Var

GTLT: LongInt;

Begin

GTLT := 1;

For i := 1 to k do

GTLT := GTLT * a;

LuyThua := GTLT;

End;

Begin

WriteLn('Hay nhap so phan tu cua day so');

ReadLn(n);

{Nhập dãy số}

For i := 1 to n do begin

WriteLn('Hay nhap phan tu thu ', i);

ReadLn(A[i]);

End;

{In ra giá trị luỹ thừa 2}

For i := 1 to n do

Write(LuyThua(A[i], 2):6);

ReadLn;

End

Procedure cũng tương tự như Function, có thể có đối số, nhưng không giá trị trả về TD:

Procedure NhanDoiMang ;

Trang 3

Biên soạn: Th.s Nguyễn Anh Việt Trang 3

Procedure NhanDoiMang;

Begin

For i := 1 to n do

A[i] := A[i] * 2;

End;

Bài 03 – In ra giá trị nhân đôi của các phần tử trong mảng 1 chiều

Bạn hãy nhập một dãy số nguyên và nhân đôi từng số trong dãy đó

(Dãy 1, 4, 7, 5, 2 => In ra 2, 8, 14, 10, 4)

Var

A: Array [1 10] of Integer;

i, n: Integer;

Procedure NhanDoiMang;

Begin

For i := 1 to n do

A[i] := A[i] * 2;

End;

Begin

WriteLn('Hay nhap so phan tu cua day so');

ReadLn(n);

{Nhập dãy số}

For i := 1 to n do begin

WriteLn('Hay nhap phan tu thu ', i);

ReadLn(A[i]);

End;

{Nhân đôi các phần tử của mảng}

NhanDoiMang;

{In dãy số}

For i := 1 to n do

Write(A[i]:4);

End;

WriteLn;

ReadLn;

End

Trang 4

Biên soạn: Th.s Nguyễn Anh Việt Trang 4

Bài 04 – In ra giá trị nhân 4 của các phần tử trong mảng 1 chiều

Bạn hãy nhập một dãy số nguyên và nhân 4 từng số trong dãy đó Chỉ được sử dụng Procedure

NhanDoiMang như trong Bài 03

(Dãy 1, 4, 7, 5, 2 => In ra 4, 16, 28, 20, 8)

Bài 05 – In ra số nguyên tố trong mảng 1 chiều

Bạn hãy nhập một dãy số nguyên và in ra các số nguyên tố trong dãy đó Số nguyên tố là các số chỉ chia hết cho 1 và chính nó như 2, 3, 5, 7, 11, 13, …

(Dãy 1, 4, 7, 5, 23 => In ra 7, 5, 23)

Var

A: Array [1 10] of Integer;

i, n, Dem: Integer;

Function NguyenTo(k: Integer): Boolean; {Boolean: Chỉ có True và False}

Var

j: Integer;

Begin

If (k <= 0) or (k = 1) then begin NguyenTo := False; Exit; End;

For j := 2 to Trunc(Sqrt(k)) do

If k mod j = 0 then begin NguyenTo:= False; Exit; End;

NguyenTo := True;

End;

Begin

WriteLn('Hay nhap so phan tu cua day so');

ReadLn(n);

{Nhập dãy số}

For i := 1 to n do begin

WriteLn('Hay nhap phan tu thu ', i);

ReadLn(A[i]);

End;

{In ra các số nguyên tố }

For i := 1 to n do

If NguyenTo(A[i]) then Begin Write(A[i]:3); Dem := Dem + 1; End;

If Dem = 0 then WriteLn('Khong co so nguyen to nao');

ReadLn;

End

Ngày đăng: 11/09/2017, 22:03

TỪ KHÓA LIÊN QUAN

w