Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
Bài 1: Viết chương trình tính diện tích tam giác bằng công thức herong
S=
))()(( cpbpapp −−−
với p=(a+b+c)/2
*. Code:
#!/bin/bash
echo "Chuong trinh tinh dien tich tam giac"
echo "Nhap canh a: "
read a
echo "Nhap canh b:"
read b
echo "Nhap canh c:"
read c
if [ $(($a+$b)) -gt $c ] && [ $(($a+$c)) -gt $b ] && [ $(($b+$c)) -gt $a ]
then
p=$( echo "scale=2; ( ($a+$b+$c)/2)" | bc )
echo "nua chu vi cua tam giac la: $p"
dt=$( echo "scale=2; (sqrt($p*($p-$a)*($p-$b)*($p-$c)))" | bc )
echo "Dien tich tam giac la: $dt"
else
echo " Khong phai la tam giac"
fi
exit 0
*.Kết quả:
Bài 2: Tính n!
*.Code
#!/bin/sh
echo "nhap n="
read n
echo "chuong trinh tinh $n!"
i=0
gt=1
while [ $i -lt $n ]
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
1
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
do
i=$(($i + 1))
gt=$(($gt * $i))
done
echo "$n!=$gt"
exit 0
*.Kết quả
Bài 3: Giải phương trình bậc nhất ax+b=0
*.Code
#!/bin/sh
echo " Nhap a"
read a
echo "\n Nhap b"
read b
if [ $a -eq 0 ]
then
if [ $b -eq 0 ]
then
echo "Phuong trinh vo so nghiem"
else
echo "Phuong trinh vo nghiem"
fi
else
x=$( echo "scale=2; (-$b/$a)" | bc)
echo "nghiem phuong trinh la x=$x"
fi
exit 0
*.Kếtquả
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
2
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
Bài 4: Giải phương trình bậc hai ax+bx+c=0. Xét cả trường hợp a=0.
*.Code
#!/bin/sh
echo " Nhap a"
read a
echo "\n Nhap b"
read b
echo " Nhap c"
read c
#Phuong trinh suy bien thanh phuong trinh bac nhat
if [ $a -eq 0 ]
then
if [ $b -eq 0 ]
then
if [ $c -eq 0 ]
then
echo "Phuong trinh vo so nghiem"
else
echo "Phuong trinh vo nghiem"
fi
else
x=$( echo "scale=2; (-$c/$b)" | bc )
echo "nghiem phuong trinh la x=$x"
fi
else
# Phuong trinh bac hai
echo " Pt bac hai"
delta=$(($b*$b -4*$a*$c))
if [ $delta -lt 0 ]
then
echo "PT vo nghiem "
else
if [ $delta -eq 0 ]
then
x=$( echo "scale=2; (-$b/$((2*$a)))" | bc )
echo "Pt co nghiem kep x1=x2= $x"
else
x1=$( echo "scale=2; ((-$b+ (sqrt($delta))))/$((2*$a))" | bc )
x2=$( echo "scale=2; ((-$b-(sqrt($delta))))/$((2*$a))" | bc )
echo " PT co hai nhiem x1=$x1 va x2=$x2"
fi
fi
fi
exit 0
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
3
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
*.Kết quả
Bài 5: Giải hệ phương trình bậc nhất : ax + by = c
dx + ey = f
*.Code
#!/bin/bash
echo "Giai he phuong trinh"
echo "ax + by = c"
echo "dx + ey =f"
echo "Moi ban nhap:"
echo -n "a = "
read a
echo -n "b = "
read b
echo -n "c = "
read c
echo -n "d = "
read d
echo -n "e = "
read e
echo -n "f = "
read f
D=$(($a*$e-$b*$d))
Dx=$(($c*$e-$b*$f))
Dy=$(($a*$f-$c*$d))
if [ $D -ne 0 ]
then
x=$( echo "scale=2; ($Dx/$D)" | bc )
echo " Nghiem x = $x"
y=$( echo "scale=2; ($Dy/$D)" | bc )
echo " y = $y"
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
4
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
else
echo " He Vo nghiem"
fi
exit 0
*.Kết quả
Bài 6: Tính tống số các số lẽ bé hơn n, với n la so nguyên.
*.Code
#!/bin/bash
echo " Chuong trinh tinh cac so le nho hon n"
echo " Moi ban nhap n : "
read n
i=1
sum=0
while [ $i -le $n ] # -le la nho hon hoac bang
do
if [ $(($i%2)) -ne 0 ] # ne la khong bang
then
sum=$(($sum+$i))
fi
i=$(($i+1))
done
echo "$sum"
exit 0
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
5
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
*.Kết quả
Bài 7: Tính chu vi và diện tích hình tròn bán kính r
*.Code
#!/bin/bash
echo "Chuong trinh tinh dien tich va chu vi hinh tron"
echo "Nhap ban kinh r = "
read r
pi=3.1459
cv=$( echo "scale=2; (2*$pi*$r)" | bc )
dt=$( echo "scale=2; ($pi*$r*$r)" | bc )
echo "Duong tron ban kinh r = $r co chu vi $cv va dien tich $dt"
exit 0
*.Kết quả
Bài 8: Tim Ước chung lớn nhất và Bội chung nhỏ nhất của hai số a, b nhập từ bàn
phím
*.Code
#!/bin/bash
echo " CHUONG TRINH TIM UCLN VA BCNN"
echo " Moi ban nhap hai so "
echo -n "a = "
read a
echo -n "b= "
read b
Tich=$(($a*$b))
while [ $a -ne $b ]
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
6
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
do
if [ $a -gt $b ]
then
a=$(($a-$b))
else
b=$(($b-$a))
fi
done
echo "UCLN la : $a"
bcnn=$(($Tich/$a))
echo "BCNN la : $bcnn"
exit 0
*.Kết quả
Bai 9. Tim max, min của ba so a, b, c nhập từ bàn phím
*.Code
#!/bin/bash
echo "Chuong trinh tinh max min cua 3 so"
echo -n "nhap a = "
read a
echo -n "nhap b = "
read b
echo -n "nhap c = "
read c
if [ $a -gt $b ] && [ $a -gt $c ]
then
echo " max = $a"
else
if [ $b -gt $c ]
then
echo " max = $b "
else
echo "max = $c"
fi
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
7
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
fi
#Tim min
if [ $a -lt $b ] && [ $a -lt $c ]
then
echo " min = $a"
else
if [ $b -lt $c ]
then
echo "max = $b "
else
echo "min = $c"
fi
fi
exit 0
*.Kết quả
Bài 10. Tính trung binh cộng của các số nhỏ hơn hoặc bằng S= (1+2+3+…+n)/n
*.Code
#!/bin/bash
echo "Chuong trinh tinh (0+1+2+ +n)/n "
echo " nhap n = "
read n
i=0
sum=0
while [ $i -lt $n ]
do
i=$(($i+1))
sum=$(($sum+i))
done
kq=$( echo "scale=2 ; ($sum/$n)" | bc )
echo "Ket qua : $kq"
exit 0
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
8
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
*.Kết quả
Bài 11: Viết chương trình tính tiền Karaoke, biết giờ vào là a, giờ ra là b, nếu vào
trươc 18h thì 50k/h, sau 18h thì tính 60k/h.
*.Code
#!/bin/bash
echo " CHUONG TRINH TINH TIEN KARAOKE "
echo "Gio vao a: "
read a
echo "Gio ra b: "
read b
if [ $a -ge 0 ] && [ $b -lt 18 ]
then
echo "Tientra=$(($(($b-$a))*50000))"
else
if [ $a -gt 18 ] && [ $b -le 24 ]
then
echo "Tien tra=$(($(($b-$b))*60000))"
else
truoc=$(($((18-$a))*50000))
echo "Truoc 18h=$truoc"
sau=$(( $(($b-18))*60000))
echo "Sau 18h=$sau"
echo "Tong so tien tra: $(($truoc+$sau))"
fi
fi
exit 0
*.Kết quả
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
9
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
Bài 12: Viết chương trình tính s=1+1/2+1/3+1/4+…+1/n (n>0)
*.Code
#!/bin/bash
echo " Tinh s=1+1/2+1/3+ +1/n"
echo "nhap n"
read n
i=1
sum=0
while [ $i -le $n ] && [ $n -gt 0 ]
do
sum=$( echo "scale=2 ; ($sum+1/$i)" | bc )
i=$(($i+1))
done
echo " ket qua s= $sum"
exit 0
*Kết quả
Bai 13: Viết chương trinh minh họa các phép toán với một menu nhu sau
Bấm 1: Tổng =a+b
2: Hiệu =a-b
3: Tích =a*b
4: Thuong=a/b
0: Thoát
Còn khi bấm các số khác đều không thực hiện được
*.Code
#!/bin/bash
chon=1
while [ $chon -ne 0 ]
do
echo "CHUONG TRINH MINH HOA CAC PHEP TOAN "
echo "0:Thoat"
echo "1:Cong"
echo "2:Tru"
echo "3:Nhan"
echo "4:Chia"
read chon
if [ $chon -ne 0 ]
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
10
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
then
echo -n "Nhap a = "
read a
echo -n "Nhap b= "
read b
fi
case $chon in
1)Tong=$(($a+$b))
echo " Tong=$Tong"
;;
2)Hieu=$(($a-$b))
echo " Hieu=$Hieu"
;;
3)Nhan=$(($a*$b))
echo " Tich=$(($a*$b))"
;;
4)Chia=$( echo "scale=2;($a/$b)" | bc )
echo "Thuong=$Chia"
;;
0)break
;;
*) echo "Ban chon $chon la khong co trong menu";;
esac
done
exit 0
*.Kết quả
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
11
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
Bài 14: Nhập vào 1 số n, kiểm tra n có phải là số đối xứng hay không?
Vd: 1235321 là số đối xứng
123421 không phải là số đối xứng
*.Code
#!/bin/bash
echo " CHUONG TRINH KIEM TRA N SO DOI XUNG ? "
echo -n "Nhap so n= "
read n
sogoc=$n
sodao=0
while [ $sogoc -gt 0 ]
do
donvi=$(($sogoc%10))
sodao=$(($sodao*10+$donvi))
sogoc=$(($sogoc/10))
done
if [ $sodao -eq $n ]
then
echo "$n la so Doi xung"
else
echo "$n Khong doi xung"
fi
exit 0
*.Kết quả
Bài 15: In bảng cửu chương
*.Code
#!/bin/bash
echo " BANG CUU CHUONG "
for i in 1 2 3 4 5 6 7 8 9
do
for j in 1 2 3 4 5 6 7 8 9
do
echo -n $j
echo -n x
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
12
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
echo -n $i=
echo -n "$(($i*$j)) "
done
echo
done
exit 0
*.Kết quả
Bài 16 : In ra các câu chào trong ngày theo buổi.
*.Code
#!/bin/bash
chon=1
while [ $chon -ne 0 ]
do
echo " CHUONG TRINH IN RA CAU CHAO "
echo "0 : Thoat"
echo "1 : Sang"
echo "2 : Chieu"
echo "3 : Toi"
read chon
case $chon in
0)break;;
1)echo "Chao buoi sang";;
2)echo "Chao buoi chieu";;
3)echo "Chao buoi toi";;
*)echo "Ban chon sai buoi roi";;
esac
done
exit 0
*.Kết quả
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
13
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
Bài 17. Nhập mảng một chiều gồm n phần tử,và tìm max ,min của các phần tử trong
mảng đó.
*.Code
#!/bin/bash
# Ham nhap mang
nhap_mang(){
echo -n "Nhap so luong phan tu cua mang "
read n
i=0
while [ $i -lt $n ]
do
echo -n "a[$i]="
read a[$i]
i=$(($i+1))
done
}
#Ham tim max
Tim_max(){
max=${a[0]}
i=1
while [ $i -lt $n ]
do
if [ $max -lt ${a[$i]} ]
then
max=${a[$i]}
else
i=$(($i+1))
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
14
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
fi
done
echo " Gia tri lon nhat cua mang la max = $max"
}
# Ham tim min
Tim_min(){
min=${a[0]}
i=1
while [ $i -lt $n ]
do
if [ $min -gt ${a[$i]} ]
then
min=${a[$i]}
else
i=$(($i+1))
fi
done
echo " Gia tri nho nhat cua mang la min = $min"
}
nhap_mang
Tim_max
Tim_min
exit 0
*.Kết quả
Bài 18. Nhập mảng một chiều gồm n phần tử số nguyên hãy viết các hàm thực hiện
các công việc sau :
a) Xuất lại mảng a
b) Viết hàm để sắp xếp mảng a tăng dần và xuất lại mảng đã được sắp xếp
đó.
*.Code
#!/bin/bash
# Ham nhap mang
nhap_mang(){
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
15
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
echo -n "Nhap so luong phan tu cua mang "
read n
i=0
while [ $i -lt $n ]
do
echo -n "a[$i]="
read a[$i]
i=$(($i+1))
done
}
#Ham sap xep
sapxep(){
i=0
while [ $i -lt $n ]
do
j=$(($i+1))
while [ $j -lt $n ]
do
if [ ${a[$i]} -gt ${a[$j]} ]
then
tg=${a[$i]}
a[$i]=${a[$j]}
a[$j]=$tg
fi
j=$(($j+1))
done
i=$(($i+1))
done
}
#Ham xuat
xuat_mang(){
i=0
while [ $i -lt $n ]
do
echo "a[$i]=${a[$i]}"
i=$(($i+1))
done
}
nhap_mang
echo " Mang chua duoc sap xep la"
xuat_mang
sapxep
echo " Mang da duoc sap xep la"
xuat_mang
exit 0
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
16
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
*.Kết quả
Bài 19. In ra số ngày của tháng và năm bất kì biết rằng :năm nhuận là năm không
chia hết cho 100 và chia hết cho 4.
*.Code
#!/bin/bash
echo "CHUONG TRINH IN RA SO NGAY TUONG UNG VOI THANG CUA NAM"
echo " Chu y nhap "THANG" Trong khoang 1->12 va "NAM" bat ki"
echo -n "Thang = "
read thang
echo -n "Nam = "
read nam
case $thang in
4)echo " thang $thang cua nam $nam co 30 ngay" ;;
6)echo " thang $thang cua nam $nam co 30 ngay" ;;
9)echo " thang $thang cua nam $nam co 30 ngay" ;;
11)echo " thang $thang cua nam $nam co 30 ngay";;
1)echo " thang $thang cua nam $nam co 31 ngay" ;;
3)echo " thang $thang cua nam $nam co 31 ngay" ;;
5)echo " thang $thang cua nam $nam co 31 ngay" ;;
7)echo " thang $thang cua nam $nam co 31 ngay" ;;
8)echo " thang $thang cua nam $nam co 31 ngay";;
10)echo " thang $thang cua nam $nam co 31 ngay" ;;
12)echo " thang $thang cua nam $nam co 31 ngay" ;;
2)if [ $(($nam%100)) -ne 0 ] && [ $(($nam%4)) -eq 0 ]
then
echo " Thang $thang nam $nam co 29 ngay"
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
17
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
else
echo " Thang $thang nam $nam co 28 ngay"
fi
;;
*)echo " Ban nhap sai roi, vui long kiem tra lai " ;;
esac
exit 0
*.Kết quả
Bài 20 : Nhập số n và kiểm tra n có phải là số nguyên tố không ?
*.Code
#!/bin/sh
echo "Chuong trinh kiem tra so n co phai la so nguyen to "
echo -n "nhap n = "
read n
if [ $n -eq 1 ]
then echo "$n ko phai so nguyen to ";
fi
if [ $n -eq 2 ]
then echo "$n la so nguyen to" ;
fi
if [ $n -gt 2 ]
then
i=2
while [ $i -lt $n ]
do
if [ $(($n%$i)) -eq 0 ]
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
18
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
then echo " $n khong phai La so nguyento" ;break;
fi
i=$(($i+1))
if [ $(($n/2)) -lt $i ]
then echo "$n la so nguyen to ";break ;
fi
done
fi
exit 0
*.Kết quả
Bài 21 : Chương trình đếm số dòng của một tập tin
*.Code
#!/bin/bash
echo "nhap ten file:"
read file
echo "Dem so dong $file"
{
n=0
while read line
do
n=$(($n+1))
done
echo "So dong cua tap tin $file la:$n"
}<$file
exit 0
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
19
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
*.Kết quả
Bài 22 :Chương trình đếm số từ của một tập tin
*.Code
#!/bin/bash
echo "Nhap ten file :"
read file
{
n=0
while read line
do
for wd in $line
do
n=$(($n+1))
done
done
echo "Tong so tu trong file $file la: $n"
} <$file
exit 0
*.Kết quả
Bài 23 : Viết chương trình tìm dòng có độ dài lớn nhất trong file
*.Code
#!/bin/sh
echo "Chuong trinh tim dong dai nhat trong mot file"
echo "nhap ten file:"
read file
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
20
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
{ n=0
max=0
dong=""
while read line
do
n=`expr length "$line"`
if [ $n -gt $max ]
then
dong="$line"
max=$n
fi
done
echo " $file co 1 dong dai max = $max la dong:[$dong ] "
}<$file
exit 0
*.Kết quả
Bài 25. Viết chương trình minh họa các phép toán trong tập hợp (Hợp,Giao,Trừ)
*.Code
#!/bin/bash
echo "CHUONG TRINH TINH MINH HOA CAC PHEP TOAN TRONG TAP HOP"
NhapS1(){
echo -n "Nhap so phan tu cua tap hop S1: "
read n1
echo "Nhap tap hop S1: "
for i in `seq 0 $(($n1-1))`;
do
echo -n " S1[$i] = "
read n
local kt=0
for j in `seq 0 $((${#S1[*]}-1))`;
do
if [ $n -eq ${S1[$j]} ];then
kt=1
fi
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
21
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
done
if [ $kt -eq 0 ];then
S1[${#S1[*]}]=$n
fi
done
}
NhapS2(){
echo -n "Nhap so phan tu cua tap hop S2: "
read n2
echo "Nhap tap hop S2: "
for i in `seq 0 $(($n2-1))`;
do
echo -n " S2[$i] = "
read n
local kt=0
for j in `seq 0 $((${#S2[*]}-1))`;
do
if [ $n -eq ${S2[$j]} ];then
kt=1
fi
done
if [ $kt -eq 0 ];then
S2[${#S2[*]}]=$n
fi
done
}
xuat(){
echo -n "Tap hop S1: "
for i in `seq 0 $((${#S1[*]}-1))`;
do
echo -n " ${S1[$i]} "
done
echo ""
echo -n "Tap hop S2: "
for i in `seq 0 $((${#S2[*]}-1))`;
do
echo -n " ${S2[$i]} "
done
echo ""
}
HopS1S2(){
S=( "${S1[@]}" )
for i in `seq 0 $((${#S2[*]}-1))`;
do
local kt=0
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
22
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
for j in `seq 0 $((${#S1[*]}-1))`;
do
if [ ${S[$j]} -eq ${S2[$i]} ];then
kt=1
fi
done
if [ $kt -eq 0 ];then
S[${#S[*]}]=${S2[$i]}
fi
done
echo -n "Tap hop S=S1 v S2: "
for i in `seq 0 $((${#S[*]}-1))`;
do
echo -n " ${S[$i]} "
done
echo ""
}
GiaoS1S2(){
S=( )
for i in `seq 0 $((${#S2[*]}-1))`;
do
local kt=0
for j in `seq 0 $((${#S1[*]}-1))`;
do
if [ ${S1[$j]} -eq ${S2[$i]} ];then
kt=1
fi
done
if [ $kt -eq 1 ];then
S[${#S[*]}]=${S2[$i]}
fi
done
echo -n "Tap hop S=S1 ^ S2: "
for i in `seq 0 $((${#S[*]}-1))`;
do
echo -n " ${S[$i]} "
done
echo ""
}
TruS1S2(){
S=( )
for i in `seq 0 $((${#S1[*]}-1))`;
do
local kt=0
for j in `seq 0 $((${#S2[*]}-1))`;
do
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
23
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
if [ ${S2[$j]} -eq ${S1[$i]} ];then
kt=1
fi
done
if [ $kt -eq 0 ];then
S[${#S[*]}]=${S1[$i]}
fi
done
echo -n "Tap hop S=S1 - S2: "
for i in `seq 0 $((${#S[*]}-1))`;
do
echo -n " ${S[$i]} "
done
echo ""
}
NhapS1
NhapS2
xuat
HopS1S2
GiaoS1S2
TruS1S2
read btemp
exit 0
*.Kết quả
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
24
Đại học bách khoa Đà Nẵng-Khoa CNTT Thực hành chuyên đề II
Bài 26 : Viết chương trình in ra các biển số xe có 4 chữ số mà có tổng các chữ số
bằng 9
*.Code
#!/bin/bash
echo " CHUONG TRINH IN RA CAC BIEN SO XE CO TONG CAC SO BANG 9"
for ((a=0;a<=9;a++))
do
for ((b=0;b<=9;b++))
do
for ((c=0;c<=9;c++))
do
for ((d=0;d<=9;d++))
do
if [ $(($a+$b+$c+$d)) -eq 9 ]
then
echo -n "$a$b$c$d "
fi
done
done
done
done
exit 0
*.Kết quả
Bài 27. Nhập vào một mảng gồm n phần tử số nguyên, và kiểm tra xem có bao nhiêu
số hoàn thiện có trong mảng đó. Biết số a là số hoàn thiện nếu a có tổng các ước số
nhỏ nó bằng nó. Ví du: 6=1+2+3 nên 6 là số hoàn thiện
GVHD: Thầy Nguyễn Văn Nguyên SVTH: Nhóm 06A
25