1. Trang chủ
  2. » Giáo án - Bài giảng

Bài 10 - Cau truc lap

14 533 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 14
Dung lượng 886,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

Bài toán Dữ liệu ra Output : Dữ liệu vào Input : Hãy xác định INPUT, OUTPUT và nêu thuật toán giải bài toán trên?. thì dừng lại... WHILE DO ;Điều kiện Đúng Câu lệnh Điều kiện: Là bi

Trang 1

Gi¸o ¸n ®iÖn tö tin häc líp 11

Bµi 10

(tiÕt 2)

Trang 2

Bài toán 1:

Bài toán 2:

100

1

2

1 1

1

1

a a

a a

S

1

2

1 1

1

1

N a

a a

a S

Bài toán : Tính tổng S, với a là số nguyên và a>2

cho đến khi 1  0 0001

N a

Trang 3

Bài toán 1: Bài toán 2:

100

1

2

1 1

1

1

a a

a a

N a

a a

a S

Cho đến khi 10.0001

N a

Số lần lặp biết tr ớc.

• Việc tăng giá trị cho tổng

S đ ợc lặp đi lặp lại cho

đến khi

0.0001 N

a

1

• Việc tăng giá trị cho

tổng S đ ợc lặp đi lặp

lại

tìm sự khác biệt

Số lần lặp ch a biết tr ớc.

100 lần

Trang 4

CÊu tróc lÆp

Trang 5

1 Bài toán

Dữ liệu ra (Output) :

Dữ liệu vào (Input) :

Hãy xác định INPUT, OUTPUT

và nêu thuật toán giải bài toán trên?

1

2

1 1

1

1

N a

a a

a S

Cho đến khi 1 0.0001

a N 

Tính giá trị tổng S, với a là số nguyên và a>2

thì dừng lại.

II Lặp với số lần lặp không biết tr ớc

Nh p a ập a

T ng S ổng S

Trang 6

B íc 2 :

S:=1/a; N:=1;

{Khëi t¹o S vµ N}

B íc 3 :

NÕu 1/(a+N) < 0.0001

=> B íc 5

B íc 4 :

S:=S+1/(a+N);

N:=N+1;

=> quay l¹i b íc 3

thuËt to¸n

B íc 1: NhËp a.

S:=1/a ; N:=1

§ a ra S

=> KÕt thóc

S:= S+1/(a+N);

N:= N+1;

 Vßng lÆp chØ dõng khi

NhËp a

S

§

1/(a+N) >= 0.0001

B íc 5: In S => KÕt thóc.

1/(a+N)<0.0001

Trang 7

WHILE <Điều kiện> DO <Câu lệnh> ;

Điều kiện

Đúng

Câu lệnh

Điều kiện: Là biểu thức

quan hệ hoặc lôgic.

Câu lệnh: Là một câu lệnh của

Pascal.

Sai

3 Lặp với số lần lặp ch a biết tr ớc và câu lệnh

while do: – do:

Trong đó:

Chừng nào điều kiện còn đúng thì câu lệnh còn đ ợc thực hiện.

(Ghi tập)

Trang 8

WHILE 1/(a+N) >= 0.0001 DO

Begin

S:=S+1/(a+N);

N:=N+1;

END;

Ví dụ 1: (sgk)

Bài toán :

Nhận xét:

hiện:

+ Tăng giá trị của tổng S thêm 1/(a+N).

+ Tăng N thêm 1 đơn vị

1

2

1 1

1

1

N a

a a

a S

1

0.0001

aN

Tính giá trị tổng S, với a là số nguyên và a>2

thì dừng lại.

Cho đến khi

Trang 9

Ch ¬ng tr×nh

Program Tinhtong_2;

Uses Crt;

Var a,N:Integer;

S:Real;

BEGIN

Clrscr;

Write(‘Nhap gia tri cua a = ‘);Readln(a);

S:=1/a;N:=1;

WHILE 1/(a+N)>=0.0001 DO

BEGIN

S:=S+1/(a+N);

N:=N+1;

END;

Writeln(‘Gia tri cua tong S = ‘,S);

Readln;

END.

(Ghi tập)

Trang 10

Lập ch ơng trình nhập vào hai số nguyên d ơng M,N Tìm ƯCLN của hai số đó.

B1: Nhập M,N;

B2 : Chừng nào MN

nếu M>N thì M:=M-N,

ng ợc lại thì N:=N-M;

B3: Đến khi M=N thì

=> Đ a ra ƯCLN(M,N)=M;

=> Kết thúc.

B1: Nhập M,N B2 : While M<>N DO

Begin

IF M>N then M:=M - N

else N:=N - M; end;

B3: In ƯCLN(M,N)

Thuật toán các b ớc viết ch ơng trình

Ví dụ 2: (sgk)

Trang 11

Ch ¬ng tr×nh

Program UCLN;

Uses Crt;

Var M,N:Integer;

BEGIN

Clrscr;

Write(‘M, N= ‘);Readln(M,N);

WHILE M <> N DO

IF M>N then M:=M - N

else N:=N - M;

Writeln(‘UCLN = ‘,M);

Readln;

END.

(Ghi tập)

* Chó ý: (SGK)

Trang 12

Tham kh¶o:

D¹ng kh¸c cña c©u lÖnh lÆp víi sè lÇn lÆp kh«ng biÕt tr íc

REPEAT <C©u lÖnh> UNTIL <§iÒu kiÖn >;

§iÒu kiÖn

Sai

C©u lÖnh

§óng

Trang 13

Ch ¬ng tr×nh

Program Bai_toan;

Uses Crt;

Var a,N:Integer;

S:Real;

BEGIN

Clrscr;

Write(‘Nhap gia tri cua a= ‘);Readln(a);

S:=1/a;N:=1;

REPEAT {Bat dau lap}

S:=S+1/(a+N);

N:=N+1

UNTIL 1/(a+N)< 0.0001; {Ket thuc lap} Writeln(‘Gia tri cua tong S = ‘,S);

Readln;

END.

Trang 14

Toựm taột!

 Câu lệnh rẽ nhánh.

 Câu lệnh lặp

IF <đk> THEN <câu lệnh>;

FOR TO DO …

IF <đk> THEN <câu lệnh 1>

ESLE <câu lệnh 2>;

FOR Downto DO

+ Dạng khuyết.

+ Dạng đầy đủ.

+ Lặp với số lần lặp biết tr ớc + Lặp với số lần lặp không

biết tr ớc.

Ngày đăng: 20/05/2015, 21:00

TỪ KHÓA LIÊN QUAN

w