1. Trang chủ
  2. » Mẫu Slide

Bai tap chuong 3 Tin hoc 11

4 6 0

Đ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 48,5 KB

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

Nội dung

Trong quá trình kiểm tra ta dùng một biến flag, ban đầu flag được gán là false, nếu n chia hết cho số nào đó thì flag được bậc lên thành True, đến khi kết thúc vòng lặp, nếu như flag [r]

Trang 1

Bài tập chương 3 tin học 11 - Cấu trúc Rẽ Nhánh và Lặp Phần 1: Cấu Trúc Rẽ Nhánh

Bài 1: Viết chương trình nhập vào ba số a, b, c, xuất ra màn hình số lớn nhất (max) của

ba số đó

Bài 2: Viết chương trình nhập vào số kw điện, tính và xuất ra số tiền phải trả (T) theo công thức sau:

- Nếu kw <=100 thì Tính 2000 đ cho 1kw

- Nếu 100<kw<=200 thì những kw vượt 100 tính 2500 đ cho 1 kw

Phần 2: Cấu Trúc Lặp

Bài 1: Viết chương trình nhập vào số nguyên n, xuất ra dãy số từ 1 đến n

Bài 2: Viết chương trình nhập vào số n, xuất ra dãy số chẵn trong khoảng 1 đến n Bài 3: Viết chương trình nhập vào hai số m, n, xuất ra dãy số chẵn từ m đến n

Bài 4: Nhập vào hai số m, n, xuất ra dãy số bội 3 từ m đến n

Bài 5: Nhập vào số nguyen dương n, tính và xuất ra tổng S = 1 + 2 + +n

Bài 6: Nhập vào số nguyên dương n, tính và xuất ra tổng S = 2 + 4 + + (n-k) với k=1 hay 0 Tức là tổng dãy số chẵn trong khoảng 1 đến n

Bài 7: Nhập số nguyên dương n, kiểm tra xem n có phải số nguyên tố trong tập số nguyên dương hay không

Bài 8: Nhập số nguyên dương n, tính n!, biết n! = 1.2.3.4.5 n

Bài 9: Nhập vào số a và số nguyên dương n, tính a mũ n

Phần 1: Cấu trúc rẽ nhánh:

Bài 1: Xác định yêu cầu:

B i 1: à

*Xác định yêu cầu:

+ Input: a, b, c ( số thực)

+Output: max ( số thực)

* Thuật toán:

B1: Nhập a, b, c

B2: max< a

B3 Nếu max<b thì max< b

B4: nếu max <c thì max < c

B5: Xuất max, kết thúc

* Chương trình:

Program Tim_Max;

Uses crt;

Var a, b, c, max: Real;

Begin Clrscr;

Write(‘Hay nhap ba so a, b,c:’); Readln(a, b, c);

Max:=a;

If ( Max < b) Then Max:= b;

If (Max < c) Then Max:=c;

Write(‘Max cua a, b, c la:’, Max); Readln;

Trang 2

Bài 2:

* Xác định yêu cầu:

+ Input: kw ( số thực)

+ Output: T ( số thực)

* Thuật toán:

B1: Nhập kw

B2: Nếu kw <= 100 thì Tß kw*2000

B3: Nếu 100< kw<=200 thì Tß100* 2000 + ( kw-100) * 2500

B4: Xuất T, kết thúc

Học sinh tự viết chương trình

Phần 2: Cấu trúc lặp

Bài 1:

* Xác định yêu cầu:

+ Input: n ( nguyên)

+ Output: Dãy số từ 1 đến n

* Thuật toán:

B1: Nhập n

B2: Cho i chạy từ 1 đến n thực hiện:

Xuất i

B3: Kết thúc

* Chương trình:

Program Dayso;

Uses crt;

Var i,n: Integer;

Begin Clrscr;

Write(‘ nhap n:’); Readln(n);

For i:=1 to n do Write(i:4);

Readln;

End

Bài 2:

* Xác định yêu cầu:

+ Input: n ( nguyên)

+ Output: Dãy số chẵn từ 1 đến n

* Thuật toán:

B1: Nhập n

B2: Cho i chạy từ 1 đến n thực hiện:

Nếu I chia hết cho 2 thì Xuất i

B3: Kết thúc

* Chương trình:

Program Dayso;

Uses crt;

Var i,n: Integer;

Begin Clrscr;

Write(‘ nhap n:’); Readln(n);

For i:=1 to n do If ( i mod 2= 0) then Write(i:4);

Readln;

End

Bài 3: Nhập 2 số m, n ( m<n) Xuất dãy số lẻ từ m đến n

*Xác định yêu cầu

Trang 3

+ output: dãy số lẻ từ m đến n

* Thuật toán:

B1: Nhập m, n

B2: Cho i chạy từ m đến n, nếu i không chia hết cho 2 thì xuất i

B3: Bước 3, kết thúc

*Chương trình:

Học sinh tự viết, lưu ý để i không chia hết cho 2 thì i mod 2 <>0

Bài 4: Nhập 2 số m, n Xuất ra dãy số bội 3 từ m đến n

Tương tự bài 3, chỉ khác là thay vì kiểm tra I có chia hết cho 2 hay không ta kiểm tra I

có chia hết cho 3 hay không Nghĩa là i mod 3 = 0

Bài 5:

Ý tưởng: bài này yeu cầu chúng ta tính tổng S của dãy số từ 1 đến n Để tính được tổng S, chúng ta tưởng tượng S như chiếc thùng rỗng, chúng ta sẽ đổ lần lượt các ly nước vào thùng theo quy tắc sau:

Số ly nước đổ vào tương ứng với số lần đổ: lần 1 đổ 1 ly, lần 2 đổ 2 ly, …

Như vậy số nước trong thùng lúc sau bằng số nước trước đó cộng với số ly nước ở lần

đổ đó

* Xác định yêu cầu:

+ Input: n ( nguyên)

+ Output: S ( số nguyên)

* Thuật toán:

B1: Nhập n

B2: S< 0

B3: Cho i chạy từ 1 đến n thực hiện:

S< S+ i

B4: Xuất S

B5: Kết thúc

* Chương trình:

Program TongDaySo;

Uses crt;

Var i,n, S: Integer;

Begin Clrscr;

Write(‘ nhap n:’); Readln(n);

S:= 0;

For i:=1 to n do S:= S+i ; Write( ‘ Tong S=’, S);

Readln;

End

Bài 6: Bài này tương tự như bài 5, chỉ khác là chúng ta kiểm tra i trước khi cộng vào S, chỉ i nào chia hết cho 2 mới cộng;

B3: Cho i chạy từ 1 đến n thực hiện: nếu i chia hết cho 2 thì S < S+i

Bài 7: Nhập vào số nguyên dương n, kiểm tra xem n có nguyên tố trong tập số nguyên dương hay không

* Xác định yêu cầu:

+input: n

Trang 4

+out put: n là nguyên tố hay không

* ý tưởng:

Trong tập số nguyên dương, số 1 không phải số nguyên tố, số 2 và 3 là hai số nguyên

tố Từ số 4 trở lên, nếu số nào chỉ có hai ước là 1 và chính nó thì đó là số nguyên tố để kiểm tra, ta kiểm tra từ 2 đến n-1 xem n có chia hết số nào không Tuy nhiên ta chỉ cần kiểm tra đến căn bậc 2 của n, mà không phải kiểm tra đến n-1 Trong quá trình kiểm tra ta dùng một biến flag, ban đầu flag được gán là false, nếu n chia hết cho số nào đó thì flag được bậc lên thành True, đến khi kết thúc vòng lặp, nếu như flag vẫn là False chứng tỏ n không chia hết cho số nào, vậy nó là nguyên tố, ngược lại thì nó không nguyên tố Từ ý tưởng trên ta có thể xây dựng thuật toán như sau:

* Thuật toán:

B1 : nhập n

B2: Nếu n=1, xuất n không nguyên tố, đến bước 5

B3: Nếu n <4 thì xuất n nguyên tố, đến bước 5

B2: Cho flag< False

B3: Chi i chạy từ 2 đến căn bậc 2 của n thực hiện: nếu n chia hết cho i thì gán flag< True

B4: Nếu flag = True thì xuất ra n không nguyên tố ngược lại xuất n nguyên tố

B5: kết thúc

* Chương trình:

Học sinh tự viết

Ngày đăng: 01/05/2021, 02:52

w