TopStudy

Đáp án và lời giải

Bài tập Phạm vi của biến có đáp án

Về trang đề

Câu 1

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

- Biến đã khai báo bên ngoài hàm chỉ có thể truy cập giá trị để sử dụng bên trong hàm mà không làm thay đổi được giá trị của biến đó (trừ trường hợp với từ khoá global)

- Các biến khai báo bên trong hàm có tính địa phương, không có hiệu lực bên ngoài hàm.

Câu 2

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Các biến được khai báo bên trong một hàm chỉ được sử dụng bên trong hàm đó. Chương trình chính không sử dụng được.

Câu 3

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

a) a, b = 1, 2

a = 1 + 2 = 3

b = 2 * 3 = 6

b) a, b = 10, 20

a = 10 + 20 = 30

b = 20 * 30 = 600

Câu 4

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm được vì các biến khai báo bên trong hàm có tính địa phương, không có hiệu lực bên ngoài hàm

Câu 5

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Biến khai báo bên ngoài hàm không có tác dụng bên trong hàm và biến ở bên trong hàm có thể truy cập để sử dụng giá trị của biến đã khai báo trước đó bên ngoài hàm.

Câu 6

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Kết quả in ra: 16

a = 2 × (1 + 2) = 6

6 + 10 = 16

Câu 7

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Hàm:

def Select(A):

B=[]

for k in range(len(A)):

s=A[i]

B.append(s[0])

return B

Câu 8

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

def Tach_day(A):

B=[]

C=[]

for i in range(len(A)):

if i%2==0:

B.append(i)

else:

C.append(i)

return B,C

Câu 9

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

def UCBC(m,n):

a=m

b=n

r = a % b

while r != 0:

a = b

b = r

r = a % b

ucln=b

bcnn=m*n/ucln

return ucln, bcnn

Câu 10

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

def testDate(dd, month, yy):

if month == 1 or month == 3 or month == 5 or month == 7 or month == 8 or month== 10 or month == 12:

max1 = 31

elif month == 4 or month == 6 or month == 9 or month == 11:

max1 = 30

elif yy % 4 == 0 and yy % 100 != 0 or yy % 400 == 0:

max1 = 29

else:

max1 = 28

if month < 1 or month > 12:

return False

elif dd < 1 or dd > max1:

return False

elif yy < 1 or yy > 100000000:

return False

return True

s=input("Nhập thời gian")

list=s.split(" ")

if testDate(int(list[0]),int(list[1]),int(list[2])):

print("Thời gian nhập hợp lệ")

else:

print("Thời gian nhập không hợp lệ")