You are on page 1of 17

HC VIN CNG NGH BU CHNH VIN THNG

KHOA/VIN/B MN: CNG NGH THNG TIN/CNG NGH PHN MM

NGN HNG CU HI THI T LUN


Tn hc phn: m bo cht lng phn mm
Ngnh o to:

M hc phn: INT 416


Trnh o to:

Mu xm: b qua
Mu : bt buc
Cn li: cn hc
1. Ngn hng cu hi thi
Cu hi loi 1 im
Cu hi 1.1: Li phn mm l g? Nguyn nhn gy ra li phn mm?
Cu hi 1.2: C s kim nh cht lng phn mm?
Cu hi 1.3: m bo phn mm xut pht t u? Tin trin ca n nh th no?
Cu hi 1.4: K ra cc o c trng cht lng chnh ca McCall? Gii thch ni
dung ca n?
Cu hi 1.5: Nu cc c trng cht lng theo Hawlett? Gii thch ni dung mi
loi?
Cu hi 1.6: Trnh by k thut Walkthrough
Cu hi 1.7: Trnh by k thut Inspection
Cu hi 1.8: Trnh by tm tt SQA trong tiu chun ISO 9000-3
Cu hi 1.9: Trnh by cc c tnh cht lng ISO 9126.
Cu hi 1.10: Trnh by tm tt SQA trong tiu chun IEEE std1028
Cu hi 1.11: Trnh by cc mc tiu chun trong CMM?
Cu hi 1.12: Mc tiu ca SQA l g? Cc hot ng chnh m bo cht lng
phn mm l nhng hot ng no?
Cu hi 1.13: Kho st nhu cu SQA gm nhng ni dung g? Nhm tr li cc cu
hi g?
Cu hi 1.14: Trnh by cu trc t chc n v SQA?
Cu hi 1.15: Ca kim th l ci g? Mc tiu thit k ca kim th?
Cu hi 1.16: Kim th hp trng l g? Nu cc c trng ca n?
Cu hi 1.17: Kim th hp en l g? Nu cc c trng ca n?
Cu hi 1.18: C nhng loi cng c t ng no tr gip kim th, m t ni dung
ca mi loi?
Cu hi 1.19: Ai l ngi phi tham gia kim th phn mm? Nu vai tr v trch
nhim ca mi i tng?
Cu hi 1.20: th lung iu khin gm nhng yu t no? th lung iu
khin dng lm g?
Cu hi 1.20: th lung d liu gm nhng yu t no? th lung d liu dng
lm g?

Cu hi 1.21: Nu cc loi iu kin trong cu trc iu khin v cho v d? C


nhng loi sai no trong iu kin khi kim th?
Cu hi 1.22: Chin lc kim th phn nhnh (Branch) ngha l g? Yu cu t ra
cho kim th phn nhnh l g?
Cu hi 1.23: Kim th n v l g? Hot ng kim th n v gm nhng ni
dung g? N lin quan n nhng nhn t no?
Cu hi 1.24: Kim th tch hp l g? Kim th tch hp thc hin khi no?
Cu hi 1.25: Ni dung chnh ca kim th h thng?
Cu hi 1.26: Khi no nn dng test tools? u/nhc ca vic dng Test tools?
Cu hi 1.27: K tn mt vi test tools cho kim th chc nng, hiu nng?
Cu hi 1.28: Quy trnh kim th phn mm ni chung?
Cu hi 1.29: Test plan l g, gm nhng ni dung g?
Cu hi loi 2 im
Cu hi 2.1: Ti sao phi kim th phn mm? Mc tiu kim th l g?
Cu hi 2.2: Gii thch s khc nhau gia validation v verification.
Cu hi 2.3: Gii thch s khc nhau gia failure, error, v fault.
Cu hi 2.4: im mnh v im yu ca kim th t ng v kim th bng tay?
Cu hi 2.5: Kim th Beta l ci g? Kim th Alpha l ci g? Nu s ging v
khc nhau c bn gia chng?
Cu hi 2.6: Nu cc bc kim th tch hp t trn xung? u nhc im ca
cch tip cn ny?
Cu hi 2.7: Nu cc bc kim th tch hp t di ln? u nhc im ca cch
tip cn ny?
Cu hi 2.8: Th no l mt ca kim th tt? ca kim th thnh cng? Li ch ph
ca kim th l g?
Cu hi 2.9: Gii thch s khc nhau gia kim th hp trng v kim th hp en?
Cu hi 2.10: Nu chng trnh thnh cng tt c cc b kim th ca kim th hp en.
Liu ta c cn kim th hp trng na khng? Ti sao?
Cu hi 2.11: Khi no dng k thut bng quyt nh, kim th bin, kim th theo cp?
Cu hi 2.12: Khi no dng k thut kim th bin, kim th theo cp, s chuyn
trng?
Cu hi 2.13: cc thnh phn cn c trong test plan?
Cu hi 2.14: Cc giai on chnh ca 1 tin trnh test?
Bi tp
Cu hi 2.15: Cho Form gm 1 ratio button N, 1 ratio button c thn v 1 Danh
sch chn Chuyn ngnh gm: CNTT, QTKD, VT, K ton.
a. Nu kim th tt c cc trng hp xy ra th cn bao nhiu test cases,
b. Mi test case cha bao nhiu cp gi tr?
c. Lit k cc cp gi tr c th xy ra?
d. Thit k b pairwise test suite (kim th theo cp)
Cu hi 2.16: Mt phn mm iu khin chi game n gin gia 2 ngi chi. Mi
ngi iu khin mt nt bm a bng vo l. Mi ln bng vo l, ngi

c cng 1 im. Ai c 5 im trc s thng. Nu bng khng vo l, ngi


cn li c quyn iu khin bng.
a. Lp s chuyn trng thi
b. Xc nh cc ng chy ph ht cc cnh
c. Thit k test case tng ng
Cu hi 2.17: Thng tin v block1 bao gm size(small, large), color(red, green, blue),
shape (circle, triangle, square).
a. N u ki m th t t ca ca c tru
n g h p xa y ra thi c n bao nhieu ca ki m th ?
b. S cp
t i a ma mt ca ki m th co th ch a
c. Xa c i n h ca c cp
gia tri co th xa y ra
d. Thi t k b ki m th theo cp
(pairwise test suite)
di.

Cu hi 2.18: Cn pht trin module kim tra iu kin d thi ca sinh vin gm:
Nu sinh vin i hc >=80% s bui, im gia k >0, im bi tp ln >0 s c thi.
Nu sinh vin iu kin d thi v c im bi tp ln = 10 hoc im gia k = 10 s
c min thi.
a. Dng k thut bng quyt nh xc nh test cases
b. Dng k thut th nguyn nhn kt qu xc nh test cases
Cu hi 2.19: Cho h thng S nhn n tham s u vo, mi tham s c m gi tr. Tr
li cu hi:
a. S cp ti a m mt ca kim th cha ti a bao nhiu cp
b. Trong trng hp l tng, ta cn bao nhiu ca kim th bao ph tt c cc cp ca h
thng?
c. Tnh tng s cp m b kim th phi bao ph?
d. Cho n = 13, m = 3. S ca kim th ti thiu cn chn thu c b kim th theo cp
(pairwise test suite)?
Cu hi 2.20: Form ng k mua v tu c cho nh hnh v. Danh sch ga Ga i v Ga
n l {H Ni, Vinh, Hu, Nng, Si Gn}. Danh sch mc tu l {SE,TN}. Khng tnh
trng Ngy i, hy thc hin:

a. Nu kim th tt c cc trng hp xy ra th cn bao nhiu ca kim th?


b. S cp ti a m mt ca kim th c th cha
c. Xc nh cc cp gi tr c th xy ra
d. Thit k b kim th theo cp (pairwise test suite)
Cu hi 2.21: Xt tab ty chn View t mt phin bn ca phn mm Powerpoint
Microsoft. Bng (c) chnh l d liu sau trch xut.
a. Nu kim th tt c cc trng hp xy ra th cn bao nhiu ca kim th?
b. S cp ti a m mt ca kim th c th cha
c. Xc nh cc cp gi tr c th xy ra

d. Thit k b kim th theo cp (pairwises test suite)

Cu hi 2.22: Cn pht trin module tnh thu thu nhp c nhn da trn phn thu
nhp tnh thu. Biu thu thu nhp c nhn c cho nh bng di:
Phn thu nhp
Phn thu nhp
Bc thu
tnh thu/nm
tnh thu/thng
Thu sut (%)
(triu ng)
(triu ng)
1
n 60
n 5
5
2
Trn 60 n 120
Trn 5 n 10
10
3
Trn 120 n 216 Trn 10 n 18
15
4
Trn 216 n 384 Trn 18 n 32
20
5
Trn 384 n 624 Trn 32 n 52
25
6
Trn 624 n 960 Trn 52 n 80
30
7
Trn 960
Trn 80
35
(a) Thit k cc ca kim th dng k thut phn tch gi tr bin
(b) Thit k cc ca kim th dng k thut phn vng tng ng
Cu hi 2.23: Li sut tin gi theo nm ca khch hng c nhn ti ngn hng X
c cho bng di. Li c tnh trn s ngy thc t.
K hn
Tit kim
Khng k hn
7 ngy

VND

EUR

USD

1.20 %
1.20 %

0.01 %

0.10 %

14 ngy
1 thng
2 thng
3 thng
6 thng
9 thng
12 thng
24 thng

1.20 %
5.00 %
6.50 %
6.80 %
7.00 %
7.00 %
7.50 %
8.00 %

0.10 %
0.10 %
0.20 %
0.30 %
0.40 %
0.50 %
0.80 %

1.20 %
1.20 %
1.20 %
1.20 %
1.20 %
1.20 %
1.20 %

(a) Thit k cc ca kim th dng k thut phn tch gi tr bin


(b) Thit k cc ca kim th dng k thut phn vng tng ng

Cu hi 2.24: Mt chng trnh phn loi tam gic c vo cc gi tr s nguyn


trong khong [0,100]. 3 gi tr A, B, v C c dng biu din di 3 cnh tam
gic. Chng trnh in ra thng bo 3 gi tr ny c phi l 3 cnh tam gic khng.
(a) Thit k cc ca kim th dng k thut phn tch gi tr bin
(b) Thit k cc ca kim th dng k thut phn vng tng ng
Cu hi 2.25: Mt chng trnh phn loi tam gic c vo cc gi tr s nguyn
trong khong [0,100]. 3 gi tr A, B, v C c dng biu din di 3 cnh tam
gic. Chng trnh in ra thng bo 3 gi tr ny c phi l 3 cnh tam gic cn
khng.
(a) Thit k cc ca kim th dng k thut phn tch gi tr bin
(b) Thit k cc ca kim th dng k thut phn vng tng ng
Cu hi 2.26: Mt chng trnh phn loi tam gic c vo cc gi tr s nguyn
trong khong [0,100]. 3 gi tr A, B, v C c dng biu din di 3 cnh tam
gic. Chng trnh in ra thng bo 3 gi tr ny c phi l 3 cnh tam gic u
khng.
(a) Thit k cc ca kim th dng k thut phn tch gi tr bin
(b) Thit k cc ca kim th dng k thut phn vng tng ng
Cu hi 2.27: Mt chng trnh phn loi tam gic c vo cc gi tr s nguyn
trong khong [0,100]. 3 gi tr A, B, v C c dng biu din di 3 cnh tam
gic. Chng trnh in ra thng bo 3 gi tr ny c phi l 3 cnh tam gic vung
khng.
(a) Thit k cc ca kim th dng k thut phn tch gi tr bin
(b) Thit k cc ca kim th dng k thut phn vng tng ng
Cu hi loi 3 im
Cu hi 3.1: Cho hm tm kim nh phn vit bng C. input array v c sp xp theo gi
tr tng dn, n l kch thc mng, ta cn tm ch s mng ca phn t x. Nu khng tm thy
x trong mng, tr v gi tr -1.
int binSearch(int x, int v[], int n){
int low, high, mid;

low = 0;
high = n - 1;
while (low<=high){
mid = (low + high)/2;
if (x<v[mid])
high = mid - 1;
else if (x > v[mid])
low = mid + 1;
else
return mid;
}
return -1;
}
a. V th lung iu khin
b. T th lung iu khin, xc nh tp cc ng t u vo ti u ra bao ph c
ton b cu lnh
c. B xung thm ng (nu cn) bao ph ht cc ng r (branch)
d. Vi mi ng xc nh trn, tm biu thc tin t tng ng
e. Gii biu thc tin t trn sinh ra cc u vo ca kim th v sau c lng u ra
tng ng
f. Liu tt c cc ng trn c kh thi hay khng? Nu khng ch ra nhng ng khng
kh thi.
Cu hi 3.2: Gi m bn di tnh tng cc phn t >0 ca mng a
sum_of_all_positive_numbers(a, num_of_entries, sum)
sum =0;
init = 1;
while(init <= num_of_entries)
if a[init] > 0
sum = sum + a[init]
endif
init = init + 1
endwhile
end sum_of_all_positive_numbers
a. V th lung iu khin
b. T th lung iu khin, xc nh tp cc ng t u vo ti u ra bao ph c
ton b cu lnh
c. B xung thm ng (nu cn) bao ph ht cc ng r (branch)
d. Vi mi ng xc nh trn, tm biu thc tin t tng ng
e. Gii biu thc tin t trn sinh ra u vo cc ca kim th v sau c lng u ra
tng ng
f. Liu tt c cc ng trn c kh thi hay khng? Nu khng ch ra nhng ng khng
kh thi.

Cu hi 3.3: Hm bn di tr v ch s phn t cui cng trong x c gi tr bng y. Nu


khng tn ti, tr v gi tr -1.
int findLast(int[] x, int y){
for (int i = x.length -1; i > 0; i--){
if (x[i] == y)
return i;
}
return -1;
}
a. V th lung iu khin
b. T th lung iu khin, xc nh tp cc ng t u vo ti u ra bao ph c
ton b cu lnh
c. B xung thm ng (nu cn) bao ph ht cc ng r (branch)
d. Vi mi ng xc nh trn, tm biu thc tin t tng ng
e. Gii biu thc tin t trn sinh ra u vo cc ca kim th v sau c lng u ra
tng ng
f. Liu tt c cc ng trn c kh thi hay khng? Nu khng ch ra nhng ng khng
kh thi.
Cu hi 3.4: Hm bn di tr v ch s phn t cui cng trong x c gi tr bng 0. Nu
khng tn ti, tr v gi tr -1.
int lastZero(int[] x){
for (int i = 0; i < x.length; i++){
if (x[i] == 0)
return i;
}
return -1;
}
a. V th lung iu khin
b. T th lung iu khin, xc nh tp cc ng t u vo ti u ra bao ph c
ton b cu lnh
c. B xung thm ng (nu cn) bao ph ht cc ng r (branch)
d. Vi mi ng xc nh trn, tm biu thc tin t tng ng
e. Gii biu thc tin t trn sinh ra u vo cc ca kim th v sau c lng u ra
tng ng
f. Liu tt c cc ng trn c kh thi hay khng? Nu khng ch ra nhng ng khng
kh thi.
Cu hi 3.5: Hm bn di tr v s phn t l s >0.
int countPositive(int[] x){
int count = 0;
for (int i = 0 ; i < x.length; i++){
if (x[i] >=0)
count++;
}
return count;
}
a. V th lung iu khin

b. T th lung iu khin, xc nh tp cc ng t u vo ti u ra bao ph c


ton b cu lnh
c. B xung thm ng (nu cn) bao ph ht cc ng r (branch)
d. Vi mi ng xc nh trn, tm biu thc tin t tng ng
e. Gii biu thc tin t trn sinh ra u vo cc ca kim th v sau c lng u ra
tng ng
f. Liu tt c cc ng trn c kh thi hay khng? Nu khng ch ra nhng ng khng
kh thi.
Cu hi 3.6: Cho on code
public static void f1 (int x, int y) {
if (x < y) { f2 (y); }
else { f3 (y); };
}
public static void f2 (int a) {
if (a % 2 == 0) {
f3 (2*a);
};
}
public static void f3 (int b) {
if (b > 0) { f4(); }
else { f5(); };
}
public static void f4()
{... f6()....}
public static void f5()
{... f6()....}
public static void f6()
{...}
a. V th lung iu khin
b. T th lung iu khin, xc nh tp cc ng t u vo ti u ra bao ph c
ton b cu lnh
c. B xung thm ng (nu cn) bao ph ht cc ng r (branch)
d. Vi mi ng xc nh trn, tm biu thc tin t tng ng
e. Gii biu thc tin t trn sinh ra u vo cc ca kim th v sau c lng u ra
tng ng
f. Liu tt c cc ng trn c kh thi hay khng? Nu khng ch ra nhng ng khng
kh thi.
Cu hi 3.7: Cho hm tm kim nh phn vit bng C. Input array v c sp xp theo gi
tr tng dn, n l kch thc mng, ta cn tm ch s mng ca phn t x. Nu khng tm thy
x trong mng, tr v gi tr -1.
int binSearch(int x, int v[], int n){
int low, high, mid;
low = 0;
high = n - 1;
while (low<=high){
mid = (low + high)/2;

if (x<v[mid])
high = mid - 1;
else if (x > v[mid])
low = mid + 1;
else
return mid;
}
return -1;
}
Cho u vo cc ca kim th di y:
t1= (x=1, v={1,2,5,7,9},n=5)
t2= (x=3, v={1,3,9},n=3)
t3= (x=9, v={1,2,5,7,9},n=5)
t4= (x=4, v={1,2,5,7,9},n=5)
t5= (x=10, v={1,2,5,7,9},n=5)
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo trn
c. Tm tp u vo ca kim th nh nht bao ph ht cu lnh
d. Tm tp u vo ca kim th nh nht bao ph ht ng r
e. Tm tp u vo ca kim th nh nht bao ph ht ng vi n = 4
f. Liu tt c cc ng tng ng e c kh thi hay khng? Nu khng ch ra nhng ng
khng kh thi.
Cu hi 3.8: Gi m bn di tnh tng cc s dng ca mng a
sum_of_all_positive_numbers(a, num_of_entries, sum)
sum =0;
init = 1;
while(init < num_of_entries)
if a[init] > 0
sum = sum + a[init]
endif
init = init + 1
endwhile
end sum_of_all_positive_numbers
Cho u vo ca kim th di y:
t1= (a={0,2,-5,7,-9}, num_of_entries=5)
t2= (a={1,-3,9}, num_of_entries=3)
t3= (a={1,-2,5,7,0}, num_of_entries=5)
t4= (a={-1,2,0,7,-9}, num_of_entries=5)
t5= (a={1,-2,5,7,9}, num_of_entries=5)
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo ca kim th
c. Tm tp u vo ca kim th nh nht bao ph ht cu lnh
d. Tm tp u vo ca kim th nh nht bao ph ht ng r
e. Tm tp u vo ca kim th nh nht bao ph ht ng vi num_of_entries = 4

f. Liu tt c cc ng tng ng e c kh thi hay khng? Nu khng ch ra nhng


ng khng kh thi.
Cu hi 3.9: Hm di y tnh s ngy gia 2 ngy/thng cho trc trong cng 1 nm. Bit
1<=month1, month2<=12
1<=day1,day2<=31;
1<=year<=10000
public static int cal (int month1, int day1, int month2, int day2, int year) {
int numDays;
if (month2 == month1)
numDays = day2 - day1;
else {
// bo qua thang thu 0.
int daysIn[] = {0, 31, 0, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
// kiem tra nam nhuan
int m4 = year % 4;
int m100 = year % 100;
int m400 = year % 400;
if ((m4 != 0) || ((m100 ==0) && (m400 != 0)))
daysIn[2] = 28;
else
daysIn[2] = 29;
// bt u tnh t ngy
numDays = day2 + (daysIn[month1] - day1);
//cng thm s ngy khong gia cc thng
for (int i = month1 + 1; i <= month2-1; i++)
numDays = daysIn[i] + numDays;
}
return (numDays);
}
Cho u vo ca kim th di y:
t1= (12,20,12,30,2013)
t2= (2,10,11,1,2013)
t3= (1,1,12,1,2004)
t4= (2,20,3,1,2004)
t5= (2,20,3,1,1900}
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo ca kim th
c. Tm tp u vo ca kim th nh nht bao ph ht cu lnh
d. Tm tp u vo ca kim th nh nht bao ph ht ng r
e. Tm tp u vo ca kim th nh nht bao ph ht ng vi month1 = 2
f. Liu tt c cc ng tng ng e c kh thi hay khng? Nu khng ch ra nhng
ng khng kh thi.
Cu hi 3.10: Hm bn di tr v ch s phn t cui cng trong x c gi tr bng y. Nu
khng tn ti, tr v gi tr -1.

int findLast(int[] x, int y){


for (int i = x.length -1; i > 0; i--){
if (x[i] == y)
return i;
}
return -1;
}
Cho u vo ca kim th di y:
t1= (x={5}, y=5)
t2= (x={1,-3,5}, y=5)
t3= (x={5,-2,5,7,0}, y=5)
t4= (x={-1,2,0,5,-9}, y=5)
t5= (x={1,-2,3,7,9}, y=5)
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo ca kim th
c. Tm tp u vo ca kim th nh nht bao ph ht cu lnh
d. Tm tp u vo ca kim th nh nht bao ph ht ng r
e. Tm tp u vo ca kim th nh nht bao ph ht ng vi s phn t ca mng x =
4
f. Liu tt c cc ng tng ng e c kh thi hay khng? Nu khng ch ra nhng
ng khng kh thi.
Cu hi 3.11: Hm bn di tr v ch s phn t cui cng trong x c gi tr bng 0. Nu
khng tn ti, tr v gi tr -1.
int lastZero(int[] x){
for (int i = 0; i < x.length; i++){
if (x[i] == 0)
return i;
}
return -1;
}
Cho u vo ca kim th di y:
t1= (x={5})
t2= (x={0})
t3= (x={5,-2,5,7,0})
t4= (x={-1,2,0,5,-9})
t5= (x={0,-2,3,7,9})
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo ca kim th
c. Tm tp u vo ca kim th nh nht bao ph ht cu lnh
d. Tm tp u vo ca kim th nh nht bao ph ht ng r
e. Tm tp u vo ca kim th nh nht bao ph ht ng vi s phn t ca mng x =
4
f. Liu tt c cc ng tng ng e c kh thi hay khng? Nu khng ch ra nhng
ng khng kh thi.

Cu hi 3.12: Hm bn di tr v s phn t l s >0.


int countPositive(int[] x){
int count = 0;
for (int i = 0 ; i < x.length; i++){
if (x[i] >=0)
count++;
}
return count;
}
Cho u vo ca kim th di y:
t1= (x={5})
t2= (x={0})
t3= (x={5,-2,5,7,0})
t4= (x={-1,2,0,5,-9})
t5= (x={0,-2,3,7,9})
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo ca kim th
c. Tm tp u vo ca kim th nh nht bao ph ht cu lnh
d. Tm tp u vo ca kim th nh nht bao ph ht ng r
e. Tm tp u vo ca kim th nh nht bao ph ht ng vi s phn t ca mng x =
4
f. Liu tt c cc ng tng ng e c kh thi hay khng? Nu khng ch ra nhng
ng khng kh thi.
Cu hi 3.13: Phng thc printPrimes bn di tm v in ra n s nguyn t.
private static void printPrimes (int n)
{
int curPrime;
int numPrimes;
boolean isPrime;
int [] primes = new int [MAXPRIMES];
primes [0] = 2;
numPrimes = 1;
curPrime = 2;
while (numPrimes < n)
{
curPrime++;
isPrime = true;
for (int i = 0; i <= numPrimes-1; i++)
{
if (isDivisible (primes[i], curPrime))
{
isPrime = false;
break;
}
}
if (isPrime)
{

primes[numPrimes] = curPrime;
numPrimes++;
}
}
for (int i = 0; i <= numPrimes-1; i++)
{
System.out.println ("Prime: " + primes[i]);
}
}
Cho u vo ca kim th di y:
t1= (n=0)
t2= (n=1)
t3= (n=2)
t4= (n=3)
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo ca kim th
c. Tm tp u vo ca kim th nh nht bao ph ht cu lnh
d. Tm tp u vo ca kim th nh nht bao ph ht ng r
Cu hi 3.14: Cho on code
public static void f1 (int x, int y) {
if (x < y) { f2 (y); }
else { f3 (y); };
}
public static void f2 (int a) {
if (a % 2 == 0) {
f3 (2*a);
};
}
public static void f3 (int b) {
if (b > 0) { f4(); }
else { f5(); };
}
public static void f4()
{... f6()....}
public static void f5()
{... f6()....}
public static void f6()
{...}
S dng u vo ca kim th di y:
t1= f1(0, 0)
t2= f1(1, 1)
t3= f1(0, 1)
t4= f1(3, 2)
t5= f1(3, 4)
a. V th lung iu khin
b. Ch ra ng trn th lung iu khin tng ng vi mi u vo ca kim th

c. Tm tp u vo ca kim th nh nht bao ph ht nt


d. Tm tp u vo ca kim th nh nht bao ph ht cnh
e. Tm tp u vo ca kim th nh nht bao ph ht ng
Cu hi 3.15: public void foo2(int a, int b, int x) {
if (a>1 && b==0) {
x=x/a;
}
for ( int i = 1; i < 3; i++){
if true x=x+1;
}
}
a. Ve thi lung iu khin
b. T thi lung iu khin, xac inh tp cac u
ng t u vao ti u ra bao phu u c
toan bnga re (branch)
c. Liu tt ca cac u
ng tren co kha thi hay khong?
Nu khong
chi ra nhng u
ng khong

kha thi.
d. Xc nh test case tng ng vi cc ng kh thi
Cu hi 3.16:
sum(a, numEntry,sum){
sum = 0;
for (init =1; init <=numEntry;init++)
if (a[init]>0)
sum = sum + a[init];
if (false)
sum = 0;
}
a. Ve thi lung iu khin
b. T thi lung iu khin, xac inh tp cac u
ng t u vao ti u ra bao phu u c
toan bnga re (branch)
c. Liu tt ca cac u
ng tren co kha thi hay khong?
Nu khong
chi ra nhng u
ng khong

kha thi.
d. Xc nh test case tng ng vi cc ng kh thi
Cu hi 3.17: Cho s gi cc module nh sau
A

(cn thiu)

a. Xc nh th t tch hp v cc stub/driver (nu cn) khi dng k thut topdown


b. Xc nh th t tch hp v cc stub/driver (nu cn) khi dng k thut bottom up

c. Xc nh th t tch hp v cc stub/driver (nu cn) khi dng k thut sandwich

Cu hi 3.18: Cho code


1. int modifiedbinsearch(int X, int V[], int n){
2. int low, high, mid;
3. low = 0;
4. high = n - 1;
5. while (low <= high) {
6. mid = (low + high)/2;
7. if (X < V[mid]) {
8. high = mid - 1;
9. mid = mid - 1; }
10. else if (X > V[mid])
a. low = mid + 1;
b. else
c. return mid;
d. }
11. return -1; }
a. V th lung d liu.
b. Xc nh im bt thng (anomaly) ca code trn
c. Gi s mng V[] c t nht 1 phn t, xc nh ng khng kh thi.
Cu hi 3.19: Chng trnh SquaresLoopRange(start-number, stop-number) hin th bnh
phng ca 1 dy s t start-number ti stop-number. Nu start-number ln hn stopnumber error message cn c hin th: Start-limit greater than stop-limit!Sq
a. Vit chng trnh
b. Thit k test cases
c. Vit code JUnit tng ng
Cu hi 3.20: Vit chng trnh MultiplesLoopRange(start-number, stop-number, num)
hin th dy s trong khong [start-number, stop-number] v dy s phi l bi s ca num.
Nu start-number ln hn stop-number, chng trnh s hin th dy gim dn.
a. Vit chng trnh
b. Thit k test cases
c. Vit code JUnit tng ng
Cu hi 3.21:
H thng ghi li nht k nhit theo thi gian. Nhng output mt format ring, bao gm
mt dy cc symbols, u tin l 1 s biu din nhit bt u, k hiu tip biu din s
thay i nhit so vi trc . Cc symbols c gii m nh sau:

'.' khng thay i

'+' tng 1 so vi trc n

'-' gim 1 so vi trc n


Cc gi tr c bin dch thnh cc s kiu int.

Ta cn tnh median ca d liu nhit . u tin, ta cn sp xp. Sau :


Nu mng cha s l phn t n, median l phn t chnh gia:phn t th (n+1)/2.
Nu mng cha s chn phn t, median l gi tr trung bnh ca 2 phn t th n/2v
(n/2)+1.
Lu : nhit l integer, nhng gi tr median l float.
a. Vit chng trnh TempMedian
b. Thit k test cases
c. Vit code JUnit tng ng
Cu hi 3.22:
DNA c to bi 2 DNA-Strands (chui), chng xon vi nhau to thnh 1 double helix.
Mi chui DNA l chui cc bases. Gm 4 bases:
adenine (abbreviated A)
cytosine (C)
guanine (G)
thymine (T)
Bases c cp: A bt cp vi T, C bt cp vi G. V d, mt si l A-C-G-G-T-C
Si cn li s l : T-G-C-C-A-G
V ta c cc cp A:T, C:G, G:C, G:C, T:A v C:G. Cch lu tr thng tin nh vy l d tha,
nhng ta c th phn i 1 double helix v b 1 pha i, ta vn c th ti to li n. Ngoi ra,
nu l mun nhn i double helix, ta c th chia thnh 2 chui, ti to li mi pha v s thu
c 2 bn copy t bn gc.
Ta cn to 1 class biu din 1 chui DNA. API cho class DNAStrand:
public DNAStrand(String dna): khi to
public boolean isValidDNA(): Tr v true nu DNA l valid, ngha l ch c cc k t hoa A,
T, C, G v cha t nht 1 k t.
public String complementWC(): Tr v Watson Crick complement, l chui DNA b si
cn li trong double helix. Thay T bng A, A bng T, C bng G v G bng C.
public String palindromeWC(): Tr v Watson Crick Palindrome, chui o ca chui DNA
b.
public boolean containsSequence(String seq): Tr v true nu DNA cha chui con seq.
public String toString(): Tr v string DNA.
a. Vit chng trnh TempMedian
b. Thit k test cases
c. Vit code JUnit tng ng

Ghi ch: K hiu (m) cu hi c quy nh X.Y


Trong : + X tng ng vi s im cu hi (X chy t 1 n 5)
+ Y l cu hi th Y (Y chy t 1 tr i)

You might also like