Ṣe iṣiro Awọn Ifarahan Iṣiro ninu Ede Iwe-kikọ Ikarahun - Apakan V


Iwọ Eniyan yoo ni irọrun, ni oye Awọn iwe afọwọkọ Ikarahun ati kikọ wọn ni irọrun, bi o ṣe nilo rẹ. Eyi ni ifiweranṣẹ ti o kẹhin ti jara ikẹkọ yii, nibi ti a yoo ṣe Awọn iṣẹ Iṣiro Mimọ ti o nira pupọ nipa lilo ede kikọ. Awọn nkan mẹrin ti o kẹhin ti Ikawe Ikarahun Ikarahun eyiti o jẹ akoole.

  1. Loye Awọn imọran Ede Ikarahun Ikarahun Linux - Ipilẹ I
  2. Awọn iwe afọwọkọ Shell 5 fun Awọn tuntun Linux lati Kọ ẹkọ Eto Ikarahun - Apakan II
  3. Gbigbe Nipasẹ Agbaye ti Linux BASH Writing - Apá III
  4. Isiro Iṣiro ti Siseto Ikarahun Ikarahun Linux - Apakan IV

Jẹ ki bẹrẹ pẹlu Fibonacci Series

Apẹrẹ awọn nọmba nibiti nọmba kọọkan jẹ apao awọn nọmba ti o ṣaju meji. Jara naa jẹ 0, 1, 1, 2, 3, 5, 8 …… Nipa itumọ, awọn nọmba akọkọ akọkọ ninu ilana Fibonccai jẹ 0 ati 1.

#!/bin/bash
echo "How many numbers do you want of Fibonacci series ?" 
  read total 
  x=0 
  y=1 
  i=2 
  echo "Fibonacci Series up to $total terms :: " 
  echo "$x" 
  echo "$y" 
  while [ $i -lt $total ] 
  do 
      i=`expr $i + 1 ` 
      z=`expr $x + $y ` 
      echo "$z" 
      x=$y 
      y=$z 
  done
 chmod 755 Fibonacci.sh
 ./Fibonacci.sh

How many numbers do you want of Fibonacci series ? 
10 
Fibonacci Series up to 10 terms :: 
0 
1 
1 
2 
3 
5 
8 
13 
21 
34

O ni Imọmọ pẹlu otitọ pe kọnputa loye nikan ni Ọna alakomeji, eyini ni, '0' ati '1' ati pe ọpọlọpọ wa ni igbadun kọ ẹkọ iyipada ti Eleemewa si Alakomeji. Bawo ni nipa kikọ iwe afọwọkọ ti o rọrun fun iṣẹ iṣọpọ yii.

#!/bin/bash 

for ((i=32;i>=0;i--)); do 
        r=$(( 2**$i)) 
        Probablity+=( $r  ) 
done 

[[ $# -eq 0 ]] &echo -en "Decimal\t\tBinary\n" 
for input_int in [email ; do 
s=0 
test ${#input_int} -gt 11 &printf "%-10s\t" "$input_int" 

        for n in ${Probablity[@]}; do 

                if [[ $input_int -lt ${n} ]]; then 
                        [[ $s = 1 ]] && printf "%d" 0 
                else 
                        printf "%d" 1 ; s=1 
                        input_int=$(( $input_int - ${n} )) 
                fi 
        done 
echo -e 
done
 chmod 755 Decimal2Binary.sh
 ./Decimal2Binary.sh 1121

Decimal		Binary 
1121      	10001100001

Akiyesi: Iwe afọwọkọ ti o wa loke gba Input ni akoko ṣiṣe, eyiti o han ni iranlọwọ.

Daradara inbuilt ‘bc’ aṣẹ le ṣe iyipada eleemewa si alakomeji ninu iwe afọwọkọ ti laini kan. Ṣiṣe, ni ebute rẹ.

 echo "obase=2; NUM" | bc

Rọpo 'NUM' pẹlu nọmba naa, eyiti o fẹ yipada lati Eleemewa si Alakomeji. Fun apere,

 echo "obase=2; 121" | bc 

1111001

Nigbamii ti a yoo kọ iwe afọwọkọ kan ti o ṣiṣẹ ni idakeji ti iwe afọwọkọ ti o wa loke, Yiyipada Awọn iye Alakomeji si Eleemewa.

#!/bin/bash 
echo "Enter a number :" 
read Binary 
if [ $Binary -eq 0 ] 
then 
echo "Enter a valid number " 
else 
while [ $Binary -ne 0 ] 
do 
Bnumber=$Binary 
Decimal=0 
power=1 
while [ $Binary -ne 0 ] 
do 
rem=$(expr $Binary % 10 ) 
Decimal=$((Decimal+(rem*power))) 
power=$((power*2)) 
Binary=$(expr $Binary / 10) 
done 
echo  " $Decimal" 
done 
fi
 chmod 755 Binary2Decimal.sh
 ./Binary2Decimal.sh

Enter a number : 
11 
3

Akiyesi: Iṣẹ ti o wa loke le ṣee ṣe ni ebute nipa lilo 'bc' pipaṣẹ bi.

 echo "ibase=2; BINARY" | bc

Rọpo 'BINARY' pẹlu nọmba Alakomeji, bii,,

 echo "ibase=2; 11010101" | bc 

213

Bakan naa o le kọ iyipada lati octal, hexadecimal si eleemewa ati ni idakeji funrararẹ. Ṣiṣe abajade ti o wa loke ni ebute nipa lilo 'bc' pipaṣẹ jẹ.

 echo "obase=8; Decimal" | bc
 echo "obase=16; Decimal" | bc
 echo "ibase=8; Octal" | bc
 echo "ibase=16; Hexadecimal" | bc
 echo "ibase=2;obase=8 Binary" | bc

Diẹ ninu awọn idanwo Nọmba Wọpọ ti a lo ninu ede afọwọkọ ikarahun pẹlu apejuwe ni.

Test : INTEGER1 -eq INTEGER2
Meaning: INTEGER1 is equal to INTEGER2
Test : INTEGER1 -ge INTEGER2
Meaning: INTEGER1 is greater than or equal to INTEGER2
Test: INTEGER1 -gt INTEGER2
Meaning: INTEGER1 is greater than INTEGER2
Test:INTEGER1 -le INTEGER2
Meaning: INTEGER1 is less than or equal to INTEGER2
Test: INTEGER1 -lt INTEGER2
Meaning: INTEGER1 is less than INTEGER2
Test: INTEGER1 -ne INTEGER2
Meaning: INTEGER1 is not equal to INTEGER2

Iyẹn ni gbogbo fun nkan yii, ati lẹsẹsẹ nkan. Eyi ni nkan ti o kẹhin ti Ọkọ iwe afọwọkọ Shell ati pe ko tumọ si pe ko si nkan lori ede Mimọ yoo wa ni ibi lẹẹkansi, o tumọ si pe ikarahun kikọ iwe ikarahun ti pari ati nigbakugba ti a ba rii koko ti o nifẹ ti o tọ lati mọ tabi ibeere lati ọdọ eniyan rẹ, a yoo ni idunnu lati tẹsiwaju jara lati ibi.

Wa ni ilera, aifwy ati sopọ si Tecmint. Laipẹ pupọ Emi yoo wa pẹlu akọle ọrọ miiran ti o nifẹ, iwọ eniyan yoo nifẹ lati ka. Pin awọn ero rẹ ti o niyelori ni Abala Ọrọìwòye.