Mathematesch Aspekt vun Linux Shell Programméiere - Deel IV
An dësem Post wäert ech d'Skripten aus der Mathematik an der Zuel Siicht diskutéieren. Och wann ech e méi komplexe Skript (Einfach Rechner) am virege Post gepost hunn, awer op engem Benotzerdeel war et schwéier ze verstoen an dofir hunn ech geduecht datt Dir d'Leit déi aner nëtzlech Säit vum Léieren a klenge Pakete léieren.
Virun dësem Artikel ginn dräi Artikele vun der Shell Scripting Serie publizéiert a si sinn:
- Linux Shell a Basic Shell Scripting verstoen - Deel I
- 5 Shell Scripte fir Shell Programméierung ze léieren - Deel II
- Segelen duerch d'Welt vu Linux BASH Scripting - Deel III
Loosst eis de weidere Léierprozess ufänken mat e puer neie spannende Scripten, fänkt mat Mathematik Scripten un:
Skript 1: Ergänzunge
Erstellt eng Datei Addition.sh an chmod 755 zum Skript wéi am virege Post beschriwwen a lafen se.
#!/bin/bash echo “Enter the First Number: ” read a echo “Enter the Second Number: ” read b x=$(expr "$a" + "$b") echo $a + $b = $x
vi Additions.sh chmod 755 Additions.sh ./Additions.sh “Enter the First Number: ” 12 “Enter the Second Number: ” 13 12 + 13 = 25
Skript 2: Substraktioun
#!/bin/bash echo “Enter the First Number: ” read a echo “Enter the Second Number: ” read b x=$(($a - $b)) echo $a - $b = $x
Bemierkung: Hei hu mir den expr ersat a loosse déi mathematesch Berechnung a Shell gemaach ginn.
vi Substraction.sh chmod 755 Substraction.sh ./Substraction.sh “Enter the First Number: ” 13 “Enter the Second Number: ” 20 13 - 20 = -7
Skript 3: Multiplikatioun
Bis elo géift Dir vill genéissen, Scripten op sou eng einfach Manéier ze léieren, sou datt déi nächst an chronologescher Uerdnung Multiplikatioun ass.
#!/bin/bash echo “Enter the First Number: ” read a echo “Enter the Second Number: ” read b echo "$a * $b = $(expr $a \* $b)"
Notiz: Jo! Hei hu mir de Wäert vun der Multiplikatioun net an enger Variabel gesat, awer et direkt an der Ausso ausgefouert.
vi Multiplication.sh chmod 755 Multiplication.sh ./Multiplication.sh “Enter the First Number: ” 11 “Enter the Second Number: ” 11 11 * 11 = 121
Schrëft 4: Divisioun
Riets! Nächst ass Divisioun, an erëm ass et e ganz einfache Skript. Check et selwer.
#!/bin/bash echo “Enter the First Number: ” read a echo “Enter the Second Number: ” read b echo "$a / $b = $(expr $a / $b)"
vi Division.sh chmod 755 Division.sh ./Division.sh “Enter the First Number: ” 12 “Enter the Second Number: ” 3 12 / 3 = 4
Schrëft 5: Dësch
Gutt! Wat no dësen Basis mathematesch Operatioun. Loosst eis e Skript schreiwen deen Dësch vun all Zuel dréckt.
#!/bin/bash echo “Enter The Number upto which you want to Print Table: ” read n i=1 while [ $i -ne 10 ] do i=$(expr $i + 1) table=$(expr $i \* $n) echo $table done
vi Table.sh chmod 755 Table.sh ./Table.sh “Enter The Number upto which you want to Print Table: ” 29 58 87 116 145 174 203 232 261 290
Skript 6: EvenOdd
Mir als Kand hunn ëmmer Berechnung gemaach fir erauszefannen ob d'Zuel komesch oder souguer ass. Wäert et net eng gutt Iddi sinn et am Skript ëmzesetzen.
#!/bin/bash echo "Enter The Number" read n num=$(expr $n % 2) if [ $num -eq 0 ] then echo "is a Even Number" else echo "is a Odd Number" fi
vi EvenOdd.sh chmod 755 EvenOdd.sh ./EvenOdd.sh Enter The Number 12 is a Even Number
./EvenOdd.sh Enter The Number 11 is a Odd Number
Skript 7: Faktor
Als nächst ass d'Factorial ze fannen.
#!/bin/bash echo "Enter The Number" read a fact=1 while [ $a -ne 0 ] do fact=$(expr $fact \* $a) a=$(expr $a - 1) done echo $fact
vi Factorial.sh chmod 755 Factorial.sh ./Factorial.sh Enter The Number 12 479001600
Dir kënnt elo relax mat engem Gefill datt d'Berechnung vun 12*11*10*9*7*7*6*5*4*3*2*1 méi schwéier wier wéi en einfache Skript wéi uewen produzéiert. Denkt un d'Situatioun wou Dir braucht 99 ze fannen! oder sou eppes. Sécher! Dëst Skript wäert an dëser Situatioun ganz praktesch sinn.
Skript 8: Armstrong
Armstrong Zuel! Ohhh Dir vergiess wat eng Armstrong Nummer ass. Gutt, eng Armstrong Zuel vun dräi Zifferen ass eng ganz Zuel sou datt d'Zomm vun de Wierfel vu sengen Zifferen d'selwecht ass wéi d'Zuel selwer. Zum Beispill ass 371 eng Armstrong Zuel zënter 3**3 + 7**3 + 1**3 = 371.
#!/bin/bash echo "Enter A Number" read n arm=0 temp=$n while [ $n -ne 0 ] do r=$(expr $n % 10) arm=$(expr $arm + $r \* $r \* $r) n=$(expr $n / 10) done echo $arm if [ $arm -eq $temp ] then echo "Armstrong" else echo "Not Armstrong" fi
vi Armstrong.sh chmod 755 Armstrong.sh ./Armstrong.sh Enter A Number 371 371 Armstrong
./Armstrong.sh Enter A Number 123 36 Not Armstrong
Skript 9: Prime
Dat lescht Skript ass fir z'ënnerscheeden ob eng Zuel Prime ass oder net.
#!/bin/bash echo “Enter Any Number” read n i=1 c=1 while [ $i -le $n ] do i=$(expr $i + 1) r=$(expr $n % $i) if [ $r -eq 0 ] then c=$(expr $c + 1) fi done if [ $c -eq 2 ] then echo “Prime” else echo “Not Prime” fi
vi Prime.sh chmod 755 Prime.sh ./Prime.sh “Enter Any Number” 12 “Not Prime”
Dat ass alles fir elo. An eisem ganz nächsten Artikel wäerte mir aner mathematesch Programmer an der Shell Scripting Programméierungssprooch ofdecken. Vergiesst net Är Meenung iwwer den Artikel an der Kommentar Sektioun ze ernimmen. Like an deelt eis an hëlleft eis ze verbreeden. Kommt Besicht linux-console.net fir Neiegkeeten an Artikelen betreffend FOSS. Bis dohinner Stay tuned.