Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh

K THUT LP TRNH
Bi tp Tun 2 Prototype v Flow Chart

Hng dn: Prototype ca mt vn s c biu din nh sau: out fname(in1, in2,..., inn) Trong out l d liu xut, fname l tn ca vn , ini l cc d liu nhp ca bi ton. V d: Vn : Tnh tng c ca hai s nguyn a v b Bi ton ny c d liu nhp l a v b, d liu xut l c. Nh vy prototype ca bi ton s l nh sau: c tong(a,b) M rng (Cha yu cu phi lm trong phn bi tp ny): Trong cc bi hc sau, khi hc v cch khai bo kiu d liu ca bin, tn ca d liu nhp xut s c thay bng kiu, cc d liu nhp cng s c khai bo vi kiu tng ng. Lc prototype s l int tong(int a, int b)

Bi tp bt buc
Xy dng prototype v v flow chart cho cc bi tp sau

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 1. Tnh tng d ca ba s nguyn a,b v c Prototype: d tong(a,b,c) Flowchart:

Start

Input a,b,c

d a+b+c

Print d

Stop Hnh 1. Tnh tng 3 s nguyn a,b,c

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 2. Tnh chu vi P ca mt hnh trn c bn knh R Prototype: P chuvi(R) Flowchart: Start

Input R

P 2*3.14*R

Print P

Stop Hnh 2. Tnh chu vi hnh trn bn knh R

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 3. So snh din tch A1 ca mt hnh vung c cnh E vi din tch ca mt hnh trn c bn knh R (d liu xut ca bi ny s l mt bin B c gi tr ng hoc sai) Prototype: B sosanhdientich(E,R) Flowchart: B c gi tr ng (true) nu A1 A2 (din tch hnh trn) B c gi tr sai (false) nu A1 < A2 Start

Input E,R

A1 E*E A2 3.14*R*R

A1 A2? Yes B True

No

B False

Print B

Stop Hnh 3. So snh din tch hnh vung cnh E v din tch hnh trn cnh R

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 4. So snh tui ca hai ngi c ngy thng nm sinh ln lt l D1,M1,Y1 (i vi ngi th nht) v D2, M2, Y2 (i vi ngi th hai) Prototype: B sosanhtuoi(D1,M1,Y1,D2,M2,Y2) Flowchart: Start //B=1: ngi I nh tui hn ngi II //B=2: ngi I bng tui ngi II //B=3: ngi I ln tui hn ngi II

Input D1,M1,Y1,D2,M2,Y 2

diffm M1-M2+(Y1-Y2)*12 diffd D1-D2

diffm<0? Yes

No

diffm>0? No

Yes

Yes

diffd<0? No No

diffd>0? Yes

B3

B2

B1

Print B

Stop Hnh 4. So snh tui 5

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh

Bi tp nng cao
Bi 5. M t lm th no tnh giai tha ca mt s nguyn dng N, N l gi tr nhp vo.
Prototype : f giaithua(N) Flowchart :

Start

Input N

f1 i2

i N? Yes f f*i i i+1

No

Print f

Stop Hnh 5. Tnh giai tha

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 6. M t gii thut Euclid tm c chung ln nht ca hai s nguyn dng, sau , tm bi chung nh nht ca hai s nguyn dng. Tm c s chung ln nht Prototype : uscln(a, b) Flowchart 1: a,b > 0. Start

Input a,b

r a mod b ab br

Yes

b > 0? No Print a

Stop Hnh 6. Tm c s chung ln nht ca 2 s nguyn dng

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Tm bi s chung nh nht Prototype : p bscnn(a, b) ; Flowchart : bscnn(a, b)

| a *b | uscln(a, b)

Start

Input a,b

p a*b

r a mod b ab br

Yes

b > 0? No p p/a

Print p

Stop Hnh 7. Tm bi s chung nh nht ca 2 s nguyn dng

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 7. M t qu trnh tm kim gi tr ln nht v gi tr nh nht trong mt mng c N s nguyn. In cc gi tr tm c ra mn hnh. Prototype : minmax(N,a) ; Flowchart : Start

Input N,a

i1 min a max a

i < N? Yes Input a

No

Yes max a

a>max?

No

No

a<min? Yes

i i+1 Print min,max Stop

min a

Hnh 8. Tm min, max trong mng N s nguyn 9

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh

Bi 8. Vit chng trnh nhn vo l mt ng trn tm O(x0, y0) v bn knh R. Kim tra xem mt im A(x, y) l nm trn, trong hay ngoi ng trn .
Prototype : diemduongtron(x0,y0,R,Ax,Ay) ; Flowchart :

Start

Input x0,y0,R,Ax,Ay dist sqrt(sqr(Ax-x0)+sqr(Ay-y0))

Yes

dist<R? No dist=R? Yes

No

Print Trong T

Print Trn T

Print Ngoi T

Stop Hnh 9. Xc nh v tr tng i ca im v ng trn

10

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 9. Vit chng trnh tnh ng knh, chu vi, din tch to bi ca ng trn bn knh R.
Prototype : duongtron(R) ; Flowchart :

Start

Input R

d 2*R p 2*3.14*R s R*R

Print d,p,s

Stop Hnh 10. Tnh ng knh, chu vi, din tch hnh trn bn knh R

11

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 10. Vit chng trnh chuyn i gia mt v inch. Hng dn: 1 inch = 2,54 cm
Prototype : convert(a, sel) ; //sel=1: inch sang mt, sel 1: mt sang inch Flowchart :

Start

Input sel

Yes Input a

sel=1?

No Input a

m a*2.54/100

inch a*100/2.54

Print Chieu dai met: m

Print Chieu dai inch: icnh

Stop Hnh 11. i n v mt v inch

12

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 11. Vit chng trnh nhn vo nm hp l, kim tra xem c phi l nm nhun hay khng, ghi kt qu ra mn hnh. Hng dn: mt nm l nhun khi m n chia ht cho 4 nhng khng chia ht cho 100, hoc l n chia ht cho 400.
Prototype : kiemtranhuan(year) Flowchart :

Start

Input year

mod4 year%4 mod100 year%100 mod400 year%400

Yes

(mod4==0&&mod100<>0)| |(mod400==0)?

No

Print Nhun

Print Khng nhun

Stop Hnh 12. Kim tra mt nm l nhun.

13

Khoa Khoa hc v K thut My tnh B mn Khoa hc My tnh Bi 12. Cho di 3 cnh a, b, c, kim tra xem n c phi l 3 cnh ca mt tam gic cn, tam gic u, tam gic vung hay tam gic vung cn khng.
Prototype : tamgiac(a,b,c) ; Flowchart :

Start

Input a,b,c

No

((a>|b-c|)&&(a<b+c))&& ((b>|a-c|)&&(b<a+c))&& ((c>|b-a|)&&(c<b+a))?

Yes

Yes

(a==b)&& (b==c)? No

Yes

(a*a==b*b+c*c)|| (b*b==a*a+c*c)|| (c*c==b*b+a*a)?

No

(a==b)||(b==c) ||(c==a)? Yes Print Khng l tam gic Print u Print VungCn

No

(a==b)||(b==c) ||(c==a)? Yes

No

Print Vung

Print Cn

Print Thung

Stop Hnh 13. Xc nh c im tam gic to thnh t 3 cnh a,b,c 14

You might also like