Linux / Unix Command: expr

Igama

Hlola - Vavanya intetho

Isiqendu

expr arg ? arg arg ... ?

Idibanisa i- arg 's (idibanisa iindawo ezihlukanisiweyo phakathi kwabo), ihlola umphumo njengombonakalo weTcl, iphinda iphinde ibuyise ixabiso. Abaqhubi abavunyelwe kwiimpawu ze-Tcl yi-subset ye-operators evunyelwe kwiintetho ze-C, kwaye zinentsingiselo efanayo kunye nokuhamba phambili njengabaqhubi beC. Izivakalisi ziphantse zivelise iziphumo zamanani (amanqaku amaninzi okanye amanqaku ajikelezayo). Umzekelo, ibinzana

expr 8.2 + 6

livavanya ukuya ku-14.2. Iintlobo zeTcl zihluke kwiimbonakalo zeC ekuhambeni kweendlela zokusebenza. Kwakhona, ii-Tcl zenkxaso zincedisa abaqhubi beenombolo kunye nokuqhathaniswa komtya.

Sebenza

Ibinzana leTcl liqukethe udibaniso lwabasebenzi, abasebenzisi kunye nabazali. Isikhundla esimhlophe singasetyenziselwa phakathi kwabaqhubi kunye nabaqhubi kunye nabazali; ayigcinwa yimigaqo yegama. Xa kunokwenzeka, iifowuni zitsholwa njengexabiso elipheleleyo. Iimpawu ezininzi zingabonakaliswa kwisidanga (imeko eqhelekileyo), kwi-octal (ukuba umlingisi wokuqala we-operand ngu- 0 ), okanye kwi-hexadecimal (ukuba abalinganiswa bokuqala be-operand bangama- 0x ). Ukuba i-operand ayinayo yefomathi epheleleyo enikezwe ngasentla, ngoko iphathwa njengenombolo ejikelezayo xa kunokwenzeka. Amanqaku angamanzi ajikelezayo angacaciswa kuyo nayiphi na indlela elamkelwe yi-ANSI-Compliance C compiler (ngaphandle kokuba iifom zeF , F , l , kunye neL ezingavumelekanga kwiinkqubo ezininzi). Ngokomzekelo, zonke ezi zilandelayo zinamanani ajikelezayo-amanqaku: 2.1, 3., 6e4, 7.91e + 16. Ukuba akukho ncazelo yenkalo inokwenzeka, ke i-operand ishiywe njengomtya (kwaye kuphela isetyenzisiweyo esiphezulu se-operators singasetyenziswa kuyo).

I-Operands ingachazwa ngenye yezi ndlela zilandelayo:

[1]

Njengexabiso leenombolo, nokuba yi-integer okanye indawo ejikelezayo.

[2]

Njengokutshintsha kweTcl, usebenzisa i - notation standard ye-$ . Inani lexabiso liza kusetyenziswa njenge-operand.

[3]

Njengomtya ohlanganiswe kwiingcaphula ezimbini. I-expression parser iya kwenza i-backslash, iguquguqukayo, kunye nokufakelwa kwamagama endaweni ekhoyo phakathi kweengcaphuno, kwaye isebenzise ixabiso eliyiphumo njengoko u-operand

[4]

Njengomtya ohlanganiswe kwiibrasi. Abalinganiswa phakathi kwe-brace evulekileyo kunye nokudibanisa i-brace esondeleyo kuya kusetyenziswa njenge-operand ngaphandle kweyonke indawo.

[5]

Njengomyalelo weTcl odibeneyo kubakaki. Umyalelo uya kwenziwa kwaye isiphumo saso siya kusetyenziswa njenge-operand.

[6]

Njengomsebenzi wemathematika onokuthi iingxabano zinayo nayiphi na ifom apha ngasentla yeefowuni, njengesono ($ x) . Jonga ngezantsi uludwe lwemisebenzi echaziweyo.

Xa kufakwe indawo engenhla (umz: ngaphakathi kwintambo ecatshulwayo), zenziwa ngamazwi okuthetha. Nangona kunjalo, isalathiso esongezelelweyo sokufaka endaweni esele senziwe ngokubhaliweyo ngomyalelo ngaphambi kokuba iprojekthi yesikhulumi sabizwa. Njengoko kuxoxwa ngezantsi, ngokuqhelekileyo kulungelelanisa amagama ngama-braces ukukhusela umyalelo womyalelo ekusebenziseni indawo endaweni.

Kweminye imizekelo yegama elilula, cinga ukuba uguquko lunexabiso elingu -3 kwaye iguquguquko b inenani 6. Emva koko umyalelo okhohlo kwicala ngalinye elingezantsi uza kukhupha ixabiso kwicala elifanelekileyo lomgca:

expr 3.1 + $ a6.1 expr 2 + "$ a. $ b" 5.6 expr 4 * [llength "6 2"] 8 expr {{igama one} <"igama $ $"} 0

Ba sebenzi

Abaqhubi abasebenzayo bahlulwe ngezantsi, baqokelelwe kumyalelo wokuhla

- + ~ ~!

Unary minus, unary plus, unobulumko-AKHONA, unengqiqo HAYI. Akukho nanye kula ma-opharetha angasetyenziselwa kwiintambo zokusebenza, kwaye unobulumko ongekho nto ingasetyenziswa kuphela kubafundi.

* /%

Yandisa, hlukanisa, isisele. Akukho nanye yale mi sebenzi ingasetyenziselwa kwiintambo zokusebenza, kwaye intsalela ingasetyenziswa kuphela kubafundi. Isisele sisoloko sinomqondiso ofanayo kunye nomthengisi kunye nexabiso elincinci kunomcebisi.

+ -

Yongeza kwaye u thabathe. Kuvumelekile kuyo nayiphi na imisebenzi yeenombolo.

<< >>

Ukutshintshwa kwesobunxele nangakwesokudla. Kuvumelekile ukuba usebenze ngokubanzi kuphela. Ukutshintshwa kwesokudla kusasaza rhoqo.

<> <=> =

I-Boolean ngaphantsi, inkulu, ingaphantsi okanye iyalingana, kwaye inkulu kunokuba iyalingana. Umqhubi ngamnye uvelisa 1 ukuba imeko iyiyo, 0 ngaphandle koko. Aba baqhubi bangasetyenziselwa kumacandelo kunye nokusebenza kweenombolo, apho kuqhathaniswa noluphi uhlobo lwentambo.

==! =

I-Boolean elinganayo kwaye ingalingani. Umqhubi ngamnye uvelisa i-zero / esinye siphumo. Kuvumelekile kuzo zonke iintlobo ze-operand.

&

NOKUBHUNGA KWEZINTLOKO. Kuvumelekile ukuba usebenze ngokubanzi kuphela.

^

I-B-intelligence ekhethekileyo OKANYE. Kuvumelekile ukuba usebenze ngokubanzi kuphela.

|

Bulumko-NYE OKANYE. Kuvumelekile ukuba usebenze ngokubanzi kuphela.

&&

IQHUBA NO. Uvelisa umphumo we-1 ukuba zombini ii-opharetha zingekho zero, 0 ngaphandle koko. Ukuqinisekiswa kwe-boolean kunye nenani (inani okanye i-point-floating point) isebenza kuphela.

||

Uluvo OKANYE. Uvelisa isiphumo se-0 ukuba zombini i-opharetha iyona, 1 ngaphandle koko. Ukuqinisekiswa kwe-boolean kunye nenani (inani okanye i-point-floating point) isebenza kuphela.

x ? y : z

Ukuba-ke-ke, njengaye C. Ukuba x uvavanya kwi-non-zero, ke umphumo luxabiso le y . Ngaphandle koko, isiphumo sixabiso s . I-operand x kufuneka ibe nexabiso lexabiso.

Jonga iC Manual ukuze uthole iinkcukacha ezingaphezulu kwiziphumo eziveliswa ngumqhubi ngamnye. Yonke iqela labaqhubi bebhanari ukusuka kwesokunxele kuya kwesokudla kwinqanaba elifanayo lokuqala. Umzekelo, umyalelo

expr 4 * 2 <7

ubuyisela 0.

I && , || , kunye?: abaqhubi 'bahlalutyo' ', njengokuba ku-C, oko kuthetha ukuba ii-opharetha zivivinywa ukuba azifunanga ukuba zifumane isigqibo. Umzekelo, kumyalelo

expr {$ v? [a]: [b]}

enye ye [[] okanye [b] iya kuhlolwe ngokwenene, kuxhomekeke kwixabiso le $ v . Qaphela, nangona kunjalo, oku kukuphela kwenyaniso ukuba yonke ibinzana lifakwe kwiibhonceshi; ngenye indlela, umqhubi we-Tcl uza kuhlola iimbini [a] kunye [b] ngaphambi kokucela umyalelo we- expr .

Imisebenzi yeMathematika

I-Tcl isekela imisebenzi elandelayo yemathematika kumazwi:

i-abs cosh log sqrt i- acos i- log i-log ye- 2 ye- log e- asin i- exp u- tan atan ngaphantsi kwe- rand ngaphantsi kwe- fmod ngeenxa zonke .

engekho ( arg )

Ibuyisela inani elipheleleyo le- arg . I-Arg inokuba yinani okanye inqaku elijikelezayo, kwaye umphumo ubuyelwe kwifomu efanayo.

acos ( arg )

Ibuyisela i-arc cosine ye- arg , kwibanga [0, pi] i-radians. I-Arg kufuneka ibe kwibanga [-1,1].

asin ( arg )

Ibuyisela i-arc sine ye- arg , kwinqanaba [-pi / 2, pi / 2] i-radians. I-Arg kufuneka ibe kwibanga [-1,1].

atan ( arg )

Ibuyisela i-arc tangent ye- arg , kwibanga [-pi / 2, pi / 2] i-radians.

i-atan2 ( x, y )

Ibuyisela i-arc tangent ye- y / x , kwibanga [-pi, pi] i-radians. x kunye no- y abanako ukuba bobabini babe ngu-0.

ceil ( arg )

Ibuyisela inani elincinci le-integer lingaphantsi kwe- arg .

cos ( arg )

Ibuyisela i-cosine ye- arg , ilinganiswe kuma-radians.

cosh ( arg )

Ibuyisela i-hyperbolic cosine ye- arg . Ukuba isiphumo siza kubangela ukuphuphuma, iphutha libuyiselwa.

kabini ( arg )

Ukuba ixabiso lijikelezayo , buyisela i-arg , kungenjalo iguqula i- arg ukuya kwi-floating kwaye ibuyisela inani eliguqukileyo.

exp ( arg )

Ibuyisela ukubonakaliswa kwe- ar , ichazwa njenge-** arg . Ukuba isiphumo siza kubangela ukuphuphuma, iphutha libuyiselwa.

mgangatho ( arg )

Ibuyisela ixabiso elikhulu lokubambisana elingaphezulu kweg .

fmod ( x, y )

Ibuyisa intsalela ejikelezayo yecandelo le x nge y . Ukuba yingu- 0, ikopi ibuyiselwa.

hypot ( x, y )

Uhlalutya ubude be-hypotenuse yenxantathu enobungqina obunene ( x * x + y * y ).

int ( ar )

Ukuba ixabiso liyinani elipheleleyo, ubuyisela i- arg , mhlawumbi iguqula i- arg ukuya kwi-truncation iphinde ibuyise inani eliguqulelwe.

log ( arg )

Ibuyisela i-logarithm yemvelo ye- arg . I-Arg kufuneka ibe yixabiso elihle.

log10 ( arg )

Ibuyisela isiseko se-logarithm ye- arg . I-Arg kufuneka ibe yixabiso elihle.

pow ( x, y )

Iqulunqa ixabiso le x liphakanyiswe kumbane y . Ukuba i-negative negative, y kufuneka ibe yinani elipheleleyo.

randi ()

Ibuyisela inombolo ejikelezayo esuka kwi-zero ukuya ngaphantsi kweyodwa okanye, ngokwemathematika, uluhlu [0,1]. Imbewu ivela kwiwashi yangaphakathi lomatshini okanye isetyenziswe ngokulandelelana kunye nomsebenzi.

macala ( ar )

Ukuba ixabiso liyinani elipheleleyo, ubuyisela i- arg , mhlawumbi iguqula i- arg ukuya kwi-integer ngokujikeleza kwaye ubuyisele ixabiso eliguqulwe.

isono ( arg )

Ibuyisela i-sine ye- arg , ilinganiswe kuma-radians.

sinh ( arg )

Ibuyisela i-hyperbolic sine ye- arg . Ukuba isiphumo siza kubangela ukuphuphuma, iphutha libuyiselwa.

sqrt ( arg )

Ibuyisela ingcambu yesigca se- arg . I-Arg kufuneka ibe yinto engeyiyo.

( ar )

I- arg , ekufuneka ibe yinani elipheleleyo, isetyenziselwa ukusetha kwakhona imbewu kwi-generator number random. Ibuyisa inombolo yokuqala yokungahleliwe kule mbewu. Isitoli ngasinye sinembewu yaso.

tan ( arg )

Ibuyisela i-tangent ye- arg , ilinganiswe kuma-radians.

tanh ( arg )

Ibuyisela i-hyperbolic tangent ye- arg .

Ukongeza kule mi sebenzi ekhankanywe ngaphambili, izicelo zingachaza imisebenzi eyongezelelweyo usebenzisa i- Tcl_CreateMathFunc ().

Iintlobo, ukuPhala, kunye nokuPhelela

Zonke iingcombolo zangaphakathi ezibandakanya iinombolo ziyenziwa ngohlobo lwe-C ubude , kwaye zonke iikhompyutheni zangaphakathi ezibandakanya i-point-floating zenziwa ngohlobo lwe-C kabini . Xa uguqula umtya kwi-point-floating-point, ukukhukhula okugqithisileyo kuyafunyanwa kwaye kukhokelela kwiphutha le-Tcl. Ukuguqulwa kwi-integer yochungechunge, ukufumanisa ukukhukhula kukuxhomekeke ekuphatheni kwezinye iindlela kwiilayibrari zasekuhlaleni, ngoko kufuneka kuthathwe ngokungathembeki. Kukho nawuphi na, inani elikhuphayo kwaye liphuphuma liqhelekanga lingabonakali lithembekileyo kwiziphumo eziphakathi. Iphoyinti elikhulayo lokukhukhula kunye nokuhamba ngaphantsi kufunyenwe kwinqanaba elixhaswe yi-hardware, ngokuqhelekileyo enokuthenjwa.

Ukuguqulwa phakathi kweempawu zangaphakathi ze-integer, i-floating-point, kunye neefowuni zomsebenzi zenziwe ngokuzenzekelayo njengoko zifunekayo. Iingcamango ze-arithmetic, i-integers isetyenzisiweyo de kube nenombolo ethile ejikelezayo, emva koko i-point-floating point is used. Umzekelo,

expr 5/4

kubuya 1, ngelixa

expr 5 / 4.0 expr 5 / ([umtya wocingo "abcd"] + 0.0)

bobabini babuyele 1.25. Iimpawu zendawo ekhulayo zihlala zibuyiselwa nge `` . '' okanye i - e ukuze bangabonakali njengexabiso lemali. Umzekelo,

expr 20.0 / 5.0

ubuyisela i- 4.0 , kungekhona 4 .

Iintambo zokusebenza

Iimpawu zentambo zingasetyenziselwa njengabaqhubi beendlela zokuqhathanisa nabasebenzisi, nangona i-expression evaluator izama ukuthelekisa njenge-integer okanye i-floating-point when it can. Ukuba enye yee-operands zokuthelekisa ngumtya kunye nomnye unenani lexabiso, u-operand wenombolo uguqulwa kulayini usebenzisa i-C sprintf format specifier % d yeen integers kunye ne- % g yexabiso eliphambili. Umzekelo, imiyalelo

expr {"0x03"> "2"} expr {"0y" <"0x12"}

bobabini babuyele 1. Ukuthelekiswa kokuqala kwenziwa ngokuthelekisa okupheleleyo, kwaye okwesibini kwenziwa ngokuthelekiswa komgca emva kokuba u-operand wesibili uguqulwe kwintambo 18 . Ngenxa yokuthambekela kweTCl yokuphatha ixabiso njengama nombolo xa kunokwenzeka, akuyiyo ingcamango efanelekileyo yokusebenzisa abaqhubi njenge == xa ufuna ngokwenene ukuqhathaniswa komgca kwaye ixabiso le-operands lingadibanisa; kungcono kula maxesha ukuba usebenzise umyalelo womtya endaweni endaweni.

Ukuqwalaselwa komsebenzi

Gxininisa amagama kwi-braces ukwenzela ukuba isantya esiphezulu kunye neemfuno ezincinci zokugcina. Oku kuvumela i-tcl bytecode iqhagamshela ukudala ikhowudi engcono.

Njengoko kuchaziwe ngasentla, amazwi atshintsho kabini: ngeyodwa ngu-TCl umsebenzisi kwaye kanye kanye ngomyalelo we- expr . Umzekelo, imiyalelo

setha i-3 ebekwe b {$ a + 2} expr $ b * 4

ukubuya kwe-11, kungekhona i-multiple ye-4. Le nto kuba umqhubi we-Tcl uza kuqala ukufaka i $ $ + 2 kwi-variable variable, ke umyalelo we- expr uza kuhlola i-$ a + 2 * 4 .

Uninzi lwamazwi aludingi umjikelezo wesibini weendawo. Kungakhathaliseki ukuba zifakwe kwiibhonksi okanye, ukuba akunjalo, ukutshintshwa kwazo okuguquguqukayo kunye nomyalelo ukuvelisa amanani okanye amaqhinga angazifunelanga indawo. Nangona kunjalo, ngenxa yeembonakaliso ezimbalwa ezingafunekiyo zifuna iinguqu zombini zendawo, i-bytecode iqulunqa kufuneka ikhuphe imiyalelo eyongeziweyo yokusingatha le meko. Ikhowudi ebiza kakhulu kakhulu iyadingeka kumazwi angatshitshiweyo aqulethe ukufakelwa komyalelo. La magama kufuneka aphunyezwe ngokuvelisa ikhowudi entsha ngethuba ngalinye eli gama lenziwa.

Amagama angundoqo

i-arithmetic, i- boolean , uqhathanise, ibonakaliso, ukuthelekiswa okungafani

Kubalulekile: Sebenzisa umyalelo womntu ( % umntu ) ukubona indlela umyalelo usetyenziswa ngayo kwiikhomputha yakho ethile.