BASH programmēšana

BC veikt uzlabotas aritmētiskās darbības BASH

BC veikt uzlabotas aritmētiskās darbības BASH
Pamata kalkulators, kas pazīstams arī kā "bc", ir Linux komandrindas lietderība, ko izmanto, lai veiktu uzlabotu aritmētiku un algebru bash skriptos. Tas nodrošina daudz dažādu matemātisko funkciju, piemēram, sinusu, kosinusu, pieskares, dabisko logaritmu basā. Bašs nevar veikt uzlabotas aritmētiskās darbības, piemēram, salīdzināt pludiņus; tur noder BC. Pirms komandas “bc” bija UNIX utilīta “dc” (galda kalkulators). Šajā apmācībā mēs izmantosim komandu 'bc', lai veiktu uzlabotas aritmētiskās darbības.

Aritmētisko pamatdarbību veikšana

Izmantojot komandu 'bc', var veikt vienkāršas aritmētiskās darbības, piemēram, saskaitīšanu, atņemšanu, dalīšanu un reizināšanu. Sintakse vienkāršu bināro operatoru lietošanai bash, izmantojot komandu 'bc', ir šāda.

[aizsargāts ar e-pastu]: ~ $ echo “ ”| bc

Šajā sadaļā mēs izmantosim komandu 'bc', lai veiktu vienkāršas aritmētiskās darbības.

[e-pasts aizsargāts]: ~ $ num1 = 2.35322 5
[e-pasts aizsargāts]: ~ $ num2 = 1.223353
[e-pasts aizsargāts]: ~ $ atbalss “$ num1 + $ num2” | bc
3.576578
[e-pasts aizsargāts]: ~ $ echo “$ num1- $ num2” | bc
1.129872
[e-pasts aizsargāts]: ~ $ atbalss “$ num1 * $ num2” | bc
2.878824
[aizsargāts ar e-pastu]: ~ $ echo “$ num1 / $ num2” | bc
1

Iepriekš minētajā piemērā, veicot dalīšanu, mēs saņēmām rezultātu bez komata. Lai iegūtu rezultātu līdz “n” zīmēm aiz komata, mums ir jāiestata skalas vērtība “n”, kā parādīts nākamajā piemērā.

[e-pasts aizsargāts]: ~ $ echo “skala = 10; $ num1 / $ num2 ”| bc
1.9235862420

Alternatīvi, lai iegūtu decimāldaļu, mēs varam izmantot karogu '-l' un komandu 'bc'.

[e-pasts aizsargāts]: ~ $ atbalss “$ num1 / $ num2” | bc -l
1.92358624207403750184

Komandu 'bc' var izmantot arī, lai veiktu moduļu dalīšanu un aprēķinātu skaitļa jaudu bash skriptos.

[e-pasts aizsargāts]: ~ $ atbalss “10% 4” | bc
2
[e-pasts aizsargāts]: ~ $ atbalss “10 ^ 2” | bc
100

Veicot uzlabotas aritmētiskās darbības

Līdz šim mēs esam izmantojuši komandu "bc", lai veiktu dažas pamata aritmētiskās darbības, piemēram, saskaitīšanu, atņemšanu, reizināšanu utt., tagad; šajā sadaļā mēs izmantosim komandu 'bc', lai veiktu dažas uzlabotas aritmētiskās darbības. Mēs apspriedīsim, kā mēs varam izmantot salīdzināšanas operatorus, loģiskos vai būla operatorus, uzlabotas matemātiskās funkcijas un nosacījuma priekšrakstus bash, izmantojot komandu 'bc'.

Operatoru salīdzinājums

Salīdzināšanas operatori ņem divus skaitļus, salīdzina tos un pēc tam atgriežas 1 vai 0 atkarībā no salīdzinājuma. Ja salīdzinājums ir patiess, tad rezultāts ir PATIESA (1); pretējā gadījumā tā ir FALSE (0). Tālāk ir sniegti daži salīdzināšanas operatoru piemēri.

  • num1> num2: Šis salīdzinājums atgriezīsies 1 ja num1 ir lielāks par num2.
  • num1 < num2: Rezultāts būs 1 ja num1 ir mazāks par num2.
  • num1 <= num2: Rezultāts būs 1 ja num1 ir mazāks vai vienāds ar num2.
  • num1> = num2: Rezultāts būs 1 ja num1 ir lielāks vai vienāds ar num2.
  • num1 == num2: Rezultāts būs 1 ja num1 ir vienāds ar num2.
  • num1 != num2: Rezultāts būs 1 ja abi skaitļi nav vienādi.

Tālāk ir sniegti daži salīdzināšanas operatoru piemēri, kas izmantoti kopā ar komandu 'bc'.

[e-pasts aizsargāts]: ~ $ atbalss “5 == 5” | bc
1
[aizsargāts ar e-pastu]: ~ $ echo “4!= 4 ”| bc
0
[e-pasts aizsargāts]: ~ $ atbalss “2> 5” | bc
0
[aizsargāts ar e-pastu]: ~ $ echo “4<=4” | bc
1

Būla operatori

Būla vai loģiskie operatori tiek izmantoti nosacījumos, lai veiktu dažus loģiskus lēmumus. Tālāk ir minēti trīs galvenie loģiskie operatori.

  • stat1 && stat2: Tas atgriezīsies 1 ja abi apgalvojumi ir nav nulle.
  • stat1 || stat2: Tas atgriezīsies 1 ja kāds no apgalvojumiem ir nav nulle.
  • ! stat: Tas atgriezīsies 1 ja paziņojums ir nav nulle un otrādi.

Šie piemēri parāda, kā loģiskie operatori tiek izmantoti komandā 'bc'.

[e-pasts aizsargāts]: ~ $ atbalss “-5 && 0” | bc
0
[e-pasts aizsargāts]: ~ $ echo “-1 || 0 ”| bc
1
[aizsargāts ar e-pastu]: ~ $ echo “! 0 ”| bc
1

Nosacījuma paziņojumi

Nosacījuma paziņojumus izmanto, lai izpildītu īpašas komandas atkarībā no piemērotā nosacījuma. Pielietotais nosacījums nosacītajā paziņojumā ietver loģiskos un salīdzināšanas operatorus. Šis ir nosacīto paziņojumu piemērs ar komandu 'bc'.

[aizsargāts ar e-pastu]: ~ $ a = 15
[aizsargāts ar e-pastu]: ~ $ b = 20
[e-pasts aizsargāts]: ~ $ echo ', ja (a> b) drukāt “a ir lielāks”, citādi drukāt “b ir lielāks”' | bc -l
b ir lielāks

Iepriekš minētajā piemērā apgalvojums pārbauda, ​​vai a ir lielāks par b vai nē. Ja a ir lielāks par b, tas drukā “a ir lielāks”; pretējā gadījumā tas drukās “b ir lielāks."Mēs varam piemērot jebkuru nosacījumu, izmantojot loģiskos un salīdzināšanas operatorus iepriekš minētajā piemērā.

Matemātiskās funkcijas

Komanda “bc” nodrošina arī dažas iebūvētas matemātiskās funkcijas, kuras mēs varam izmantot, tās nenosakot. Tālāk ir norādītas dažas būtiskas funkcijas, kas tiek izmantotas kopā ar komandu “bc”.

  • s (x): atgriež x sinusu, kur x ir radiānos
  • c (x): atgriež x kosinusu, kur x ir radiānos
  • a (x): atgriež x arctangentu, un rezultāts ir radiānos
  • sqrt (x): atgriež x kvadrātsakni. Ja x ir negatīvs, tas izraisa izpildlaika kļūdu
  • l (x): atgriež x dabisko žurnālu.

Šīs funkcijas var izmantot ar komandu 'bc', kā parādīts turpmākajos piemēros.

[e-pasts aizsargāts]: ~ $ pi = 3.1415. gads
[e-pasts aizsargāts]: ~ $ echo “s ($ pi / 2)” | bc -l
1
[e-pasts aizsargāts]: ~ $ echo “c ($ pi / 2)” | bc -l
0
[e-pasts aizsargāts]: ~ $ atbalss “a (1)” | bc -l
0.7854

Skaitļa kvadrātsakni var aprēķināt bash, izmantojot komandu 'bc', kā parādīts nākamajā attēlā.

[e-pasts aizsargāts]: ~ $ echo “sqrt (4)” | bc -l
2

Mēģinot aprēķināt negatīvā skaitļa kvadrātsakni, čaula izmet izpildlaika kļūdu.

[e-pasts aizsargāts]: ~ $ echo “sqrt (-2)” | bc -l
Izpildlaika kļūda (func = (main), adr = 4): Negatīvā skaitļa kvadrātsakne

Skaitļa naturālo logaritmu var aprēķināt bash formātā, izmantojot komandu 'bc' šādi.

[e-pasts aizsargāts]: ~ $ atbalss “l (2)” | bc -l
.69314718055994530941

Secinājums

Rakstot automatizācijas skriptus bash, dažreiz komandu izpildei mums ir nepieciešamas uzlabotas matemātiskās funkcijas un loģiskie operatori. Komanda 'bc' nodrošina daudzas uzlabotas matemātiskās funkcijas un operatorus augsta līmeņa aritmētisko aprēķinu veikšanai. Šajā apmācībā tika apspriests komandas “bc” izmantošana, lai veiktu uzlabotas aritmētiskās darbības bash.

Instalējiet jaunāko Dolphin emulatoru Gamecube un Wii operētājsistēmai Linux
Delfīnu emulators ļauj jums spēlēt izvēlētās Gamecube un Wii spēles Linux personālajos datoros (PC). Tā kā Dolphin Emulator ir brīvi pieejams un atvē...
Kā lietot GameConqueror Cheat Engine Linux
Rakstā ir sniegts ceļvedis par GameConqueror apkrāptu dzinēja izmantošanu Linux. Daudzi lietotāji, kas spēlē spēles operētājsistēmā Windows, bieži izm...
Labākie Linux spēļu konsoles emulatori
Šajā rakstā tiks uzskaitīta populārā Linux spēļu konsoles atdarināšanas programmatūra. Emulācija ir programmatūras saderības slānis, kas atdarina spēļ...