Tải bản đầy đủ (.doc) (8 trang)

CÁC DẠNG BÀI TẬP TOÁN CƠ BẢN GIẢI BẰNG LOGO Ở TIỂU HỌC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (197.52 KB, 8 trang )

Bài 1: hãy vẽ đa giác cạnh p nhập từ bàn phím nếu đa giác lớn hơn 11 và bé hơn 3 thì báo không
hợp lệ
to dagiac :p :n
cs
rt 90
ifelse or(:p<3)(:p>11) [label(list "khong "hop "le)] [repeat :p[fd
:n rt 180-(1-2/:p)*180)]]
{nếu đa giác có cạnh p nhỏ hơn 3 hoặc lớn hơn 11 thì xuất thông
báo ra sân chơi “không hợp lệ” ngược lại thì vẽ đa giác p ra sân
chơi}
ht
end
bài 2: tính tổng S = 1 + 2 + ... + n biết tổng nhỏ hơn 100 tìm số n
cách 1:
to tong :n
cs
rt 90
make "s 0
make "i 0
while [:s < :n] [make "i :i + 1 make "s :s + :i]
label(list "so "can "tim "la :i - 1)
ht
end
cách 2:
to tong :n
cs {xóa sân chơi}
rt 90 {rùa quay phải 90 độ}
make "s 0 {gán cho tổng bằng 0}
make "i 0 {gán cho I bằng 0}
until [or(:s=:n)(:s > :n)] [make "i :i + 1 make "s :s + :i] {khi
tổng nhỏ hơn hoặc chưa bằng số cần tìm thì tằng biến I lên 1 và


tổng cộng dồn theo i}
label(list "so "can "tim "la :i - 1) {xuất thông báo ra sân chơi}
ht {rùa ẩn}
end
bài 3: tính tổng S= 1+2+ ... + n ; n nhập từ bàn phím
to tinhtong :n
cs
rt 90
make "s 0 {gán tổng bằng 0}
for [i 1 :n 1][make "s :s + :i] {biến I chạy từ 1 tới n; tổng cộng
dồn theo biến i}
label(list "tong "cua "day "1+2+3+...+n "= :s)
ht


sety -50 {xuống dòng}
end
bài 4: so sánh hai số bất kì a và b nhập từ bàn phím
to sosanh :a :b
cs
rt 90
ifelse :a<:b [label(list "so "lon "la :b)] [label(list "so "lon
"la :a)]
ht
end
bài 5: so sanh ba số bất kì a, b, c nhập từ bàn phím
to sobaso :a :b :c
cs
rt 90
make "max :a

make "min :a
if :b>:max [make "max :b]
if :c>:max [make "max :c]
if :b<:min [make "min :b]
if :c<:min [make "min :c]
label(list "so "lon "nhat "la :max)
pu {nhất bút không vẽ khi di chuyển}
sety -50
label(list "so "nho "nhat "la :min)
ht
end
bài 6: tính tổng S=0 + 2 + 4 + ....+ k ; tím số k biết tổng nhỏ hơn một số bất kì n nhập từ bàn phím
cách 1:
to tongchan :n
cs
rt 90
make "s 0
make "i 0
while [:s<:n] [make "i :i+2 make "s :s+:i]
label(list "so "can "tim :i-2)
pu
sety -50
label(list "tong "la :s-:i)
ht
cách 2:
to tongchan :n
cs
rt 90
make "s 0



make "i 0
until [or(:s=:n)(:s>:n)] [make "i :i+2 make "s :s+:i]
label(list "so "can "tim :i-2)
pu
sety -50
label(list "tong "la :s-:i)
ht
end
bài 7: tính tổng S= 1 + 3 + 5 + .... + k ; tìm số k biết tổng nhỏ hơn một số bất kì n nhập từ bàn phím
bài 8: tính tổng các số chẵn S = 2 + 4 + ... + n ; n nhập từ bàn phím
to tongchan :n
cs
rt 90
make "s 0
for [i 2 :n 2] [make "s :s+:i]
label(list "tong "cac "so "chan "cua "day "la :s)
ht
end
bài 9: tính tổng các số lẻ L = 1 + 3 + 5 + ... + n ; n nhập từ bàn phím
to tongle :n
cs
rt 90
make "s 0
for [i 1 :n 2] [make "s :s+:i]
label(list "tong "day "la :s)
ht
end
bt: duong tron màu đỏ, chữ màu xanh


to tron
cs
setpencolor 4
repeat 36[arc2 360 50 fd 20 rt 10]
pu
bk 150 rt 90
setpencolor 2
label[KI THI GVDG CAP HUYEN]


end
bài 10

to hinh
repeat 2 [fd 50 rt 72 fd 50 rt 108]
repeat 2 [fd 80 rt 72 fd 80 rt 108]
fd 80 rt 72 fd 80
setheading towards [0 0]
make "d distance [0 0]
fd :d
rt 144
end
to xoay
cs
repeat 5[hinh rt 72]
rt 36
repeat 5[hinh rt 72]
fd 50 rt 108
repeat 6[fd 50 rt 72 fd 50 rt 36]
lt 36 fd 50 rt 72

repeat 10[fd 50 rt 36]
end
Make "d 129.442719
Một số bài toán được giải bằng logo
Bai 11 : tính tổng s=1 + 2+3+…+n
to tong :n
make "s 0


make "a 1
repeat :n [make "s :s + :a make "a :a +1] rt 90 label :s
end
chạy thủ tục tong 3 ta được kết quả s=6
Bài 12 : tính tổng s=3+7+11+15+19+…cho đến khi số cuối cùng gần
bằng 100 nhất
to tong
make "s 0
make "a 3
while [:a <100 ][make "s :s +:a make "a :a +4] rt 90 label :s
end
chạy thủ tục tong ta được kết quả là 1275
Bài 13 :tính tổng các số lẻ nhỏ hơn 200
to tong
make "s 0
make "a 1
while [:a <200 ][make "s :s +:a make "a :a +2] rt 90 label :s
end
chạy

thủ


tục

tong ta đươc kết quả là 10000

Bài 14: tính tổng các dãy số sau s=1/2 +1/4 +1/8+1/16+…+1/512
to tong
make "s 0
make "a 2
while [:a <513 ] [make "s :s +1/:a make "a :a *2] rt 90 label :s
end


chạy thủ tục tong ta được kết quả

0.998046875

Bài 15:sư dụng vòng lặp while tính tổng các số lẻ bé hơn n với n
nhập trên bàn phím
to tong :n
make "s 0
make "a 1
while [:a <:n+1 ] [make "s :s +:a make "a :a+2] rt 90 label :s
end
chạy thủ tục tong 10 ta được kết quả 25
Bài 16:sử dụng vòng lặp while tính tổng s=1+1/2+1/3+...1/n với
nhập vào tự bàn phím
to tong :n
make "s 0
make "a 1

while [:a <:n +1 ] [make "s :s +1/:a make "a :a+1] rt 90 label :s
end
chạy thủ tục tong 2 ta được kết quả 1.5
Bài 17:tính tổng s=1*2*3*…*n
to tong :n
make "s 1
make "a 1
while [:a<:n+1][make "s :s*:a make "a :a+1] rt 90 label :s
end
chạy thủ tục tong 3 ta đươc kết quả 6
Bài 18: tính tổng:
S=1.2+2.3+3.4+…+8.9+9.10+10.11+…+28.29 +29.30


to tong
make "s1 0
make "a 1.2
while [:a<9][make "s1 :s1+:a make "a :a+1.1]
make "s2 0 make "b 9.1
while [:b<30][make "s2 :s2+:b make "b :b +1.01]
make "s :s1 +:s2
rt 90 label :s
end
chạy thủ tục tong ta được kết quả 443.6
Bài 19: Cho dãy số 5,8,11…trong đó số cuối cung không lớn hơn 64
000. Tính trung bình cộng của dãy số trên.
To tbc
make "s 0
make "a 5
while [:a<64000][make "s :s+:a

make "a :a+3]
make "n :a-3
make "n1 (:n-5)/3+1
make "tbc :s/:n1
rt 90 label :tbc
end
Chạy thủ tục tbc ta được kết quả 32001.5
Bài 20: Cho dãy số bất kỳ tính tổng của n số hạng và trung bình
cộng của nó


to timsohangthu :n :d :k
;n so hang ,d so hang dau, k khoang
cach
cs pennormal rt 90
make "s 0
make "c (:n-1)*:k+:d
for[i :d :c :k][make "s :s+:i ]
label(list "tong "cua :n "so "hang "la :s)
home pu bk 30 rt 90 pd
label(list "trung "binh "cong "cua "day "so "la :s/:n)
ht
end



×