1. Trang chủ
  2. » Công Nghệ Thông Tin

shell full code tim hiểu

88 3.4K 18

Đ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

Nội dung

Code shell full cho các bạn tham khảo và tìm hiểu về shell, muốn học lập trình shell một cách tốt, hãy chọn tài liệu này, rất hữu ích cho các bạn mới bắt đầu. Nào hãy tải về và học nhéChúc bạn thành công trong việc học về shell

Đạ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 [...]... Đà 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... 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))... 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... 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" }

Ngày đăng: 24/10/2014, 13:37

TỪ KHÓA LIÊN QUAN

w