Giải Tin học 10 Bài 27: Tham số của hàm
Khởi động
Trả lời:
Tham số là được định nhĩa khi khai báo hàm, đối số là giá trị truyền vào khi gọi hàm
1. Tham số và đối số của hàm
Hoạt động
Hoạt động 1 trang 131 Tin học 10: Phân biệt tham số và đối số
Quan sát ví dụ sau, tìm hiểu cách dữ liệu được truyền qua tham số vào hàm. Thảo luận để giải thích kết quả.
Trả lời:
- Đổi số là giá trị được truyền vào khi gọi hàm.
- Khi gọi hàm, các tham số (parameter) sẽ được truyền bằng giá trị thông qua đối số (argument) sẽ được truyền bằng giá trị thông qua đối số (argument) của hàm.
- Số lượng giá trị được truyền vào hàm bằng với số tham số trong khai báo của hàm.
Câu hỏi
Trả lời:
Không thể vì số lượng giá trị được truyền vào hàm phải bằng với tham số khi khai báo hàm.
Trả lời:
Lời hàm f(10,a) có lỗi vì tham số a chưa có giá trị.
2. Cách sử dụng chương trình con
Hoạt động
Hoạt động 2 trang 132 Tin học 10: Khi nào nên sử dụng chương trình con?
Bài toán đưa ra là viết chương trình chính yêu cầu nhập số tự nhiên n từ bàn phím và in các số nguyên tố nhỏ hơn hoặc bằng n ra màn hình. Trong phần thực hành của Bài 26 em đã biết hàm prime (n) kiểm tra số n có là số nguyên tố. Em sẽ viết chương trình giải bài toán này như thế nào?
Trả lời:
Chương trình hoàn chỉnh có thể viết nhau sau:
def prime(n):
c=0
k=1
while k
if n%k==0:
c=c+1
k=k+1
if c==1:
return True
else:
return False
n=int(input("Nhập số tự nhiên n:"))
for i in range(1,n+1):
if prime(i)==True:
print(i, end=" ")
Hình 1. Chương trình bài toán
Câu hỏi
Trả lời:
def prime(n):
if n<2:
return Fasle
C=0
K=2
while k
if n%k ==0:
return Fasle
k=k+1
return True
#chương trình chính
n=int(input(“nhập vào số tự nhiên n:”))
m=int(input(“nhập vào số tự nhiên m:”))
for k in range(n,m):
if prime(k):
print(k,end= “ ”)
Trả lời:
Bài toán tính độ dài xâu kí tự, tính các phép toán học….
Luyện tập
Trả lời:
def power(a,b,c):
t=1
for i in range(c): t=t*(a+b)
return t
Yêu cầu sử dụng hàm khi viết chương trình.
Trả lời:
def tong(s):
a=s.split()
t=0
for i in a:
x=int(i)
t=t+x
return t
n=input("Nhập n:")
s=input("Nhập vào "+n+" số nguyên cách nhau bởi dấu cách:")
t=tong(s)
print(t)
Vận dụng
Trả lời:
def UCLN(a,b):
while a!=b:
if a>b:a=a-b
else:b=b-a
return a
def Nhapso():
s=input("Nhập 2 số nguyên cách nhau bằng dấu phẩy:")
a=s.split(',')
x=int(a[0])
y=int(a[1])
return x,y
a,b=Nhapso()
print("UCLN là:",UCLN(a,b))
Trả lời:
def change(ho_ten,c):
if c==0:s=ho_ten.upper()
else: s=ho_ten.lower()
return s
print(change('ABC',1))
Xem thêm lời giải bài tập SGK Tin học 10 Kết nối tri thức hay, chi tiết khác:
Bài 25: Một số lệnh làm việc với xâu kí tự