bai 18lop11

20 675 5
bai 18lop11

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài 18 VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON (tiết 2) KIỂM TRA BÀI CỦ Nêu cấu trúc thủ tục? Cho phần đầu thủ tục sau: Procedure Tong(x,y:integer; var s:integer); Trong lời gọi thủ tục chương trình ta gọi: Tong(a,b,T); - Hãy xác định tham số hình thức, tham số thực sự? - Xác định tham số giá trị, tham số biến? NỘI DUNG  Cách viết sử dụng thủ tục a Cấu trúc thủ tục: b Ví dụ thủ tục Cách viết sử dụng hàm a Cấu trúc hàm b Ví dụ hàm 2 Cách viết sử dụng hàm a.Cấu trúc hàm: Function [()]: ; [] Begin [] := ; End; kiểu nào? Kiểu Kiểudữ dữliệu liệutrả chỉvề cócó thểthể gồm kiểu liệu chuẩn (integer, real, boolean, char, string) Cách viết sử dụng hàm Cấu trúc hàm Function [()]: ; [] Begin [] := ; End; Cấu trúc thủ tục Procedure [()]; [] Begin [] End; So sánh giống khác hàm thủ tục? Cách viết sử dụng hàm a.Cấu trúc hàm: Giống nhau: + Đều chương trình con, có cấu trúc giống chương trình + Đều có tham số (tham biến tham trị), tuân theo quy định khai báo sử dụng tham số Khác nhau: + Việc thực hàm trả giá trị thuộc kiểu xác định qua tên hàm + Trong thân hàm thường có câu lệnh gán giá trị cho tên hàm 2 Cách viết sử dụng hàm b Ví dụ hàm: Ví dụ 1: Lập chương trình thực việc rút gọn phân số, có sử dụng hàm tính ước số chung lớn (ƯCLN) hai số nguyên Chương trình rút gọn phân số Program Rutgon_phanso; USES CRT; Var tuso,mauso,a:integer; tuso,mauso,a Function UCLN(x,y:integer):integer; Var sodu:integer; sodu Begin While y0 Do Tham Begin trị: x,y:integer sodu:=x mod y; x:=y; y:=sodu; End; UCLN:=x; End; Begin Write(‘Nhap tu so, mau so’);Readlln(tuso,mauso); a:=UCNL(tuso,mauso) a:=UCNL(tuso,mauso); If a>1 Then Begin UCLN:=x tuso:=tuso div a; mauso:=mauso div a; End; Write(tuso:5, mauso:5); End HÃY XÁC ĐỊNH Trong chương trình có hàm? Có hàm Hàm UCLN dùng để làm gì? Tìm ước số chung lớn x,y Biến biến toàn cục? Biến biến cục bộ? Tham số hình thức tham biến hay tham trị? Lời gọi hàm: Câu lệnh gán giá trị cho tên hàm? CHƯƠNG TRÌNH RÚT GỌN Cách viết sử dụng hàm a Cấu trúc hàm: b Ví dụ hàm: Hàm hàm: sử dụng chương trình? Sử dụng + Việc sử dụng hàm tương tự sử dụng hàm chuẩn + Lệnh gọi hàm tham gia vào biểu thức toán hạng làm tham số cho chương trình khác Ví dụ: a:=UCLN(tuso,mauso)+5; write(UCLN(tuso,mauso); Ví dụ 2: Viết chương trình tìm số nhỏ số (xây dựng hàm tính giá trị nhỏ số) Giả sử x = 3, y = => số nhỏ x =  Làm để biết số nhỏ nhất? So sánh giá trị số Nếu x>y số nhỏ y, ngược lại số nhỏ x Chương trình tìm số nhỏ số Program Minbaso; var a, b, c: real; Function Min(x,y:real):real; Begin if x>y then Min:=y else Min:=x; End; Begin Write(‘ Nhap vao ba so’); Readln(a,b,c); Writeln(‘So nho nhat so la:’,Min(Min(a,b),c)); Readln End Biến toàn cục: a,b,c Tham số giá trị: x,y Hàm sử dụng làm tham số hay tham gia biểu thức? Làm tham số Chương trình tìm số nhỏ số Ví du 3: Viết chương trình tính tổng nguyên số nhập vào từ bán phím Nên sử dụng thủ tục hàm? Sử dụng hàm Sửhay dụng thủ tục Function Tong(x,y:integer):integer; Begin Tong:=x+y; End; => Nên sử dụng hàm Procedure Tong(x,y:integer; var t:integer); Begin t:=x+y; End; Ví dụ 4: Viết chương trình kiểm tra số nguyên a số chẵn hay số lẻ Nên sử dụng thủ tục hay hàm? Sử dụng thủ tục Procedure KT(a:integer); Begin IF a mod = Then Write(‘ La so chan’) Else Write(‘La so le); End; Sử dụng hàm Function KT(a:integer):boolean; Begin IF a mod = Then KT:=true Else KT:=false; End; => Nên sử dụng thủ tục Khi mộthàm, công việcnào nàothì đósử người Khicần nàothực sử dụng dụng ta dùng tục, cần tính giá trị thủthủ tục? người ta dùng hàm Ví du 3: Chương trình tính tổng số nhập vào từ bàn phím (sử dụng hàm tính tổng hai số) Program Tinh_tong; Var a,b:integer; Function Tong(x,y:integer):integer; Begin Tong :=x+y; End; Begin Writeln(‘Nhap so:’); readln(a,b); Writeln(‘Tong cua so’,Tong(a,b)); Readln HAM End THUTUC Ví du 4: Chương trình kiểm tra số nguyên nhập vào từ bàn phím số chẳn hay lẻ Program Kiem_tra; Var a:integer; Procedure KT(x:integer); Begin IF x mod = Then Write(‘ La so chan’) Else Write(‘La so le’); End; Begin Writeln(‘Nhap vao so:’); readln(a); KT(a); Readln End THUTUC HAM Kiến thức cần nhớ - Khái niệm chương trình - Phân loại chương trình + Thủ tục + Hàm - Cấu trúc chương trình [] - Tham số hình thức + Tham số giá trị + Tham số biến - Biến cục - Biến toàn cục KÍNH CHÀO CÁC THẦY CÔ VÀ CÁC EM! Bài tập Bài 1:Viết chương trình kiểm tra số nguyên số âm hay số dương? Bài 2: Viết chương trình tính tổng bình phương số nguyên

Ngày đăng: 21/12/2015, 05:33

Từ khóa liên quan

Mục lục

  • Bài 18.

  • KIỂM TRA BÀI CỦ

  • NỘI DUNG

  • 2. Cách viết và sử dụng hàm.

  • Slide 5

  • Slide 6

  • Slide 7

  • Chương trình rút gọn phân số

  • CHƯƠNG TRÌNH RÚT GỌN

  • Slide 10

  • Ví dụ 2: Viết chương trình tìm số nhỏ nhất trong 3 số. (xây dựng hàm tính giá trị nhỏ nhất của 2 số)

  • Chương trình tìm số nhỏ nhất trong 3 số

  • Slide 13

  • Slide 14

  • Ví dụ 4: Viết chương trình con kiểm tra số nguyên a là số chẵn hay số lẻ.

  • Ví du 3: Chương trình tính tổng của 2 số nhập vào từ bàn phím (sử dụng hàm tính tổng của hai số)

  • Ví du 4: Chương trình kiểm tra 1 số nguyên nhập vào từ bàn phím là số chẳn hay lẻ.

  • Kiến thức cần nhớ

  • Slide 19

  • Bài tập

Tài liệu cùng người dùng

Tài liệu liên quan