Linux / Unix Iwu: expr

Aha

expr - Nyochaa okwu

Nkọwapụta

na-ekwu okwu ? arg arg ... ?

Concatenates arg 's (na - agbakwunye ha ohere nkewa), na - enyocha nsonaazụ dị ka okwu Tcl, ma weghachite uru. Ndị ọrụ ahụ kwere na okwu Tcl bụ mpaghara nke ndị ọrụ kwere na C, ha nwekwara otu ihe ahụ na ọkwa dịka ndị ọrụ C. Nkwupụta okwu na-eme ka ọ bụrụ mgbe ọ bụla na -ebute nsonaazụ ọnụọgụ (ọnụ ọgụgụ ma ọ bụ na-ese n'elu mmiri). Dị ka ihe atụ, okwu ahụ

expr 8.2 + 6

na-enyocha 14.2. Okwu Tcl dị iche na okwu C na ụzọ ndị ọrụ na-akọwapụta. Ọzọkwa, okwu Tcl na-akwado ndị ọrụ na-abụghị ọnụọgụ na njirịta ọnụ.

Operands

Otu okwu Tcl nwere nghazi nke ndi oru, ndi oru, na ndi nne na nna. A pụrụ iji oghere sara mbara n'etiti ndị ọrụ na ndị ọrụ na ndị nne na nna; a na-eleghara ya anya site na ntụziaka ahụ. N'ebe o kwere mee, a na-asụgharị opera dị ka ọnụọgụ ọnụ. Enwere ike ịkọwa ụkpụrụ dị iche iche na ọnụọgụ (ikpe nkịtị), na octal (ọ bụrụ na njirimara mbụ nke operand bụ 0 ), ma ọ bụ na hexadecimal (ma ọ bụrụ na akpa abụọ nke operand bụ 0x ). Ọ bụrụ na ọrụ opera enweghị otu n'ime usoro ọnụọgụgụ nke enyere n'elu, mgbe ahụ, a na-emeso ya dị ka nọmba na-ese n'elu mmiri ma ọ bụrụ na ọ ga-ekwe omume. Enwere ike ịkọwa nọmba ọnụọgụ na ụdị ọ bụla nke otu onye na-akwado CSI na-akwado CSI (ma e wezụga na fọdụghị f , F , l , na L agaghị ekwe na ọtụtụ nrụnye). Dịka ọmụmaatụ, ihe ndị a niile bụ nọmba akara mmiri dị ichiiche: 2.1, 3., 6e4, 7.91e + 16. Ọ bụrụ na enweghị nsụgharị nchịkọta ga-ekwe omume, mgbe ahụ, a na-ahapụ ọrụ ịchọrọ dịka eriri (ọ bụ naanị ndị ọrụ nchịkọta nwere ike itinye ya n'ọrụ).

Enwere ike ịkọwa ọrụ ọ bụla n'ime ụzọ ndị a:

[1]

Dị ka ọnụọgụ ọnụọgụ, ma ọ bụ ọnụ ọgụgụ ma ọ bụ na-ese n'elu mmiri.

[2]

Dịka variable Tcl, jiri akwụkwọ ọkọlọtọ. A ga-eji uru agbanwe agbanwe dị ka ọrụ.

[3]

Dị ka eriri nke a na-ejikọta ya na okpukpu abụọ. Parser okwu ahụ ga-eme nkwụsịtụ, agbanwe agbanwe, na ntinye iwu n'usoro ihe ọmụma n'etiti ọnụego, ma jiri uru bara uru dị ka operand

[4]

Dị ka eriri nke ejidere nkwado. A ga - eji ihe odide dị n'etiti ihe nkwado nkwado na ihe nkwado nkwado dị ka ọrụ na-enweghị ihe ọ bụla.

[5]

Dị ka iwu Tcl nke e dere na brackets. A ga-egbu iwu ahụ ma a ga-eji arụpụta ya rụọ ọrụ.

[6]

Dị ka ọrụ mgbakọ na mwepụ nke arụmụka nwere ụdị ọ bụla nke ụdị ndị a dị n'elu maka ndị ọrụ, dị ka mmehie ($ x) . Lee n'okpuru maka ndepụta nke ọrụ ndị a kọwara.

Ebee ka ndapụta a na-eme n'elu (dịka mkpụrụokwu ndị e hotara), ha na-eme ihe ntụziaka ahụ. Otú ọ dị, o nwere ike ịbụ na ọ bụrụ na a na-akpọ usoro nhazi okwu ahụ, ọ ga-abụrịrị na ọ bụrụ na ọ bụ onye na-emepụta ihe ngosi ahụ. Dịka a tụlere n'okpuru ebe a, ọ kachasị mma ịmepụta ihe n'eme ihe nkwado iji gbochie iwu parser site na ịgbanye ihe ndị dị na ya.

Maka ihe atụ nke okwu dị mfe, were ya na mgbanwe a nwere uru 3 na agbanwe b nwere uru 6. Mgbe ahụ, iwu ahụ dị n'akụkụ aka ekpe nke ọ bụla dị n'okpuru ebe a ga-emepụta uru n'akụkụ aka nri nke akara:

expr 2 + $ $ a $ b "5.6 expr 4 * [llength" 6 2 "] 8 expr {{word one} <" word $ a "} 0

Ndị ọrụ

A na-edepụta ndị na-arụ ọrụ dị mma n'okpuru ebe a, ha na-agbakọta n'usoro iji belata usoro nke:

- + ~!

Enweghi ihe ọ bụla, nke na-ejikọtaghị ya, bit-wise BỤGHỊ, ihe ezi uche dị na ya. Enweghị ike iji ọrụ ndị a rụọ ọrụ na ndị na-arụ ọrụ ntanetị, ma ọ bụ na-ejighị ihe ọ bụla mara.

* /%

Mee otutu, kewaa, ihe fọdụrụnụ. Enweghị ike iji ọrụ ndị a na-arụ ọrụ na ndị na-arụ ọrụ na igwe, ọ pụkwara itinye ihe fọdụrụnụ nanị na ọnụọgụgụ. Ndị fọdụrụ ga-enwe otu ihe ịrịba ama ahụ dịka onye nkwekọrịta na uru dị oke ala karịa onye nkesa.

+ -

Tinye ma wepu. Valid maka ope ọrụ ọ bụla.

<< >>

Nkwụsị aka ekpe na aka nri. Valid maka ope ọrụ ope ọrụ naanị. Ntụgharị aka nri ọ bụla na-eme ka bọọdụ akara ahụ na-agbasa.

<> <=> =

Boolean obere, ukwuu, ihe na-erughị ma ọ bụ hà, ma karịa ma ọ bụ hà. Onye ọ bụla na-emepụta ọrụ 1 ọ bụrụ na ọnọdụ ahụ bụ eziokwu, 0 ma ọ bụghị. Ndị ọrụ ndị a nwere ike itinye aka na ụdọ dị ka nke a na-ejikarị arụ ọrụ, bụ nke a na-eji atụnyere ntanetị eme ihe.

==! =

Boolean nha anya na nhata. Onye ọ bụla na-arụ ọrụ na-arụpụta zero / nsonaazụ. Valid maka ụdị ọrụ ọ bụla.

&

Ezigbo amamihe NA. Valid maka ope ọrụ ope ọrụ naanị.

^

Ezigbo maara ihe. Valid maka ope ọrụ ope ọrụ naanị.

|

Ezigbo amamihe OR. Valid maka ope ọrụ ope ọrụ naanị.

&&

Eziokwu na. Nweta otu nsonaazụ ma ọ bụrụ na operand abụọ ahụ abụghị efu, 0 ma ọ bụghị. Valid maka njirimara na njirimara (ọnụọgụgụ ma ọ bụ na-ese n'elu mmiri) naanị ọrụ.

||

Eziokwu ma ọ bụ. Nweta 0 ọ bụrụ na ọ bụrụ na opera abụọ ahụ bụ efu, 1 ma ọ bụghị. Valid maka njirimara na njirimara (ọnụọgụgụ ma ọ bụ na-ese n'elu mmiri) naanị ọrụ.

x ? y : z

Ọ bụrụ na-ọzọ, dị ka C. Ọ bụrụ na x nyochaa na-abụghị efu, mgbe ahụ, nsonaazụ bụ uru y . Ma ọ bụghị ya, nsonaazụ bụ uru nke z . Ọrụ x ga-enwe ọnụọgụ ọnụọgụgụ.

Lee akwụkwọ C maka nkọwa ndị ọzọ gbasara ihe ndị ọrụ ọ bụla rụpụtara. Ndị ọrụ ọnụọgụ abụọ na- ekpe otu aka ekpe gaa n'aka nri n'ime ọkwa ahụ. Dịka ọmụmaatụ, iwu ahụ

expr 4 * 2 <7

laghachi 0.

The && , || , na:: ndị ọrụ nwere 'nyocha umengwụ' ', dịka na C, nke pụtara na a gaghị enyocha ndị na-arụ ọrụ ma ọ bụrụ na ha adịghị mkpa iji chọpụta ihe ga-esi na ya pụta. Dịka ọmụmaatụ, na iwu ahụ

expr {$ v? (a): (b)}

naanị otu n'ime [a] ma ọ bụ (b) ga-atụle, dabere na uru nke $ v . Ma, rịba ama, na nke a bụ eziokwu ma ọ bụrụ na nkwupụta niile ahụ ejidere nkwado; ma ọ bụghị ya, Tcl parser ga-enyocha ma [a] na (b) tupu ịjụ iwu ahụ.

Ọrụ Math

Tcl na-akwado ọrụ mgbakọ na mwepụ na-esonụ:

abs cosh log sqrt acos double log10 srand asin exp pow tan atan floor rand tanh atan2 fmod round ceil hypot sin cos int sinh

abs ( arg )

Weghachite uru zuru oke nke arg . Arg nwere ike ịbụ ma ọ bụ ọnụ ọgụgụ ma ọ bụ nke na-ese n'elu mmiri, ma a na-esi na ya nwetaghachi ya.

acos ( arg )

Weghachite arc cosine nke arg , na nso [0, pi] radians. Arg kwesịrị ịdị na nso [-1,1].

nhazi ( arg )

Weghachite arc sine nke arg , na dịgasị [-pi / 2, pi / 2] radians. Arg kwesịrị ịdị na nso [-1,1].

atan ( arg )

Weghachite ihe mkpuchi nke arg , dị na radii [-pi / 2, pi / 2].

atan2 ( x, y )

Weghachite tangent arc nke y / x , na nso [-pi, pi] radians. x na y enweghị ike ịbụ 0.

ceil ( arg )

Ighachite ọnụọgụ ọnụọgụgụ dị ntakịrị abụghị ihe na-erughị arg .

cos ( arg )

Na-alaghachi cosine nke arg , tụnyere ndị radians.

cosh ( arg )

Weghachite hyperbolic cosine nke arg . Ọ bụrụ na nsonaazụ ahụ ga-eme ka mmiri jubiga ókè, enweghachiri ihe nlele.

okpukpu abụọ ( arg )

Ọ bụrụ na arg bụ uru na-ese n'elu mmiri, laghachi na arg , ma ọ bụ na-agbanwegharị arg ka ọ na-ese n'elu ma na-alaghachi uru bara uru.

exp ( arg )

Weghachite njirimara nke arg , akọwapụtara dị ka e ** arg . Ọ bụrụ na nsonaazụ ahụ ga-eme ka mmiri jubiga ókè, enweghachiri ihe nlele.

ala ( arg )

Weghachite uru kachasị ọnụ ahịa karịa nnukwu arg .

fmod ( x, y )

Weghachite isi ihe na-ese n'elu mmiri nke nha nke x site y . Ọ bụrụ na y bụ 0, ezighachi njehie.

nkwenye ( x, y )

Gụnye ogologo nke hypotenuse nke triangle aka nri ( x * x + y * y ).

int ( arg )

Ọ bụrụ na arg bụ ọnụọgụ ọnụọgụ, laghachiri arg , ma ọ bụrụ na ọ na-atụgharị arg na integer site na truncation ma laghachighachi uru bara uru.

log ( arg )

Weghachite na logarithm nke arg . Arg aghaghị ịbụ ezigbo uru.

log10 ( arg )

Weghachite isi 10 logarithm nke arg . Arg aghaghị ịbụ ezigbo uru.

pow ( x, y )

Kọba uru nke x zitere na ike y . Ọ bụrụ na x bụ ihe ọjọọ, y ga-abụ uru ọnụọgụ.

rand ()

Aghaghachitere isi ihe na-ese n'elu site na zero na ihe na-erughị otu ma ọ bụ, n'usoro mgbakọ na mwepụ, [0.1]. Mkpụrụ ahụ na-esi n'ime ụlọ ọrụ nke igwe ma ọ bụ nwee ike idebe ntuziaka na ọrụ srand.

gburugburu ( arg )

Ọ bụrụ na arg bụ ọnụọgụ ọnụọgụgụ, laghachi na arg , ma ọ bụ na-agbanwegharị arg na integer site n'ịchigharị ma weghachite uru bara uru.

mmehie ( arg )

Weghachite sine nke arg , a tụrụ na radians.

mmehie ( arg )

Weghachite sine arg . Ọ bụrụ na nsonaazụ ahụ ga-eme ka mmiri jubiga ókè, enweghachiri ihe nlele.

sqrt ( arg )

Weghachite mgbọrọgwụ nke arg . Arg aghaghị ịbụ onye na-adịghị mma.

srand ( arg )

A na-eji arg , nke ga-abụ nọmba ọnụọgụ, iji tọgharịa mkpụrụ maka nchịkọta ọnụ ọgụgụ random. Weghachite ọnụọgụ mbụ nke mkpụrụ ahụ. Onye ntụgharị okwu nwere mkpụrụ nke ya.

tan ( arg )

Weghachite ihe mgbagwoju anya nke arg , a tụrụ na radians.

tanh ( arg )

Weghachite ọnụọgụ abụọ nke arg .

Na mgbakwunye na ọrụ ndị a bu ụzọ họrọ, ngwa nwere ike ịkọwa ọrụ ndị ọzọ iji Tcl_CreateMathFunc ().

Ụdị, Iju Mmiri, na Nkọwa

Ejiri ogologo oge C na-arụ ọrụ niile dị n'ime ọnụ ọgụgụ C, na ntinye ederede niile nke metụtara esemokwu na-eme ka C dị ka okpukpu abụọ . Mgbe ị na-agbanwe eriri ka ọ na-ese n'elu mmiri, a na-achọpụta ihe na-emepụta ihe na-eme ka ọ bụrụ njehie Tcl. Maka ntughari na integer si eriri, nchọpụta nke njubiga ókè dabere na omume nke ụfọdụ usoro na ụlọ akwụkwọ C, ọ bụ ya mere a ga-ewere ya dị ka onye a na-apụghị ịdabere na ya. N'ọnọdụ ọ bụla, enweghi ike ịchọta ọnụọgụ na-arụkọ ọrụ ọnụ na-adabereghị maka nsonaazụ dị n'etiti. A na-achọpụta ihe mmiri na-eru na mmiri na mmiri na ogo nke na-akwado site na ngwaike, bụ nke a na-apụghị ịdabere na ya.

A na-eme mgbanwe n'etiti ihe nnọchiteanya nke ụlọ maka ọnụọgụgụ, na-ese n'elu mmiri, na ndị na-arụ ọrụ na-akpaghị aka mgbe ọ dị mkpa. Maka nchịkọta ihe atụ, a na-eji integers rụọ ọrụ ruo mgbe e gosipụtara nọmba ụfọdụ na-ese n'elu mmiri, mgbe nke ahụ gasịrị, a na-eji akara mmiri na-eme ihe. Ọmụmaatụ,

expr 5/4

laghachi 1, mgbe

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

ma laghachi 1,25. A na-ebuteghachi ụkpụrụ ihu igwe na-ebute mgbe nile na - '` . '' ma ọ bụ e e ka ha wee ghara ịdị ka ọnụọgụ nọmba. Ọmụmaatụ,

expr 20.0 / 5.0

laghachiri 4.0 , ọ bụghị 4 .

Ihe arụ ọrụ

Enwere ike iji okwute na-arụ ọrụ dịka ndị na-arụ ọrụ na-arụ ọrụ, ọ bụ ezie na onye nyocha ahụ na-anwa ime nlele dị ka ọnụ ọgụgụ ma ọ bụ na-ese n'elu mmiri mgbe ọ nwere ike. Ọ bụrụ na otu n'ime ndị na-arụ ọrụ nke njirịta bụ eriri na onye nke ọzọ nwere ọnụọgụ ọnụọgụgụ, ọnụọgụ ọnụọgụ ahụ na-agbanwe azụ na eriri na-eji C specrintf specifier format d% d maka ọnụọgụ na % g maka ọnọdụ na-ese n'elu mmiri. Dịka ọmụmaatụ, iwu

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

ma nloghachi 1. Ajuju nke mbu ka eji eji njigonyere igwe, ma nke abuo ka eji eme ihe n 'onu ogugu mgbe emeghariri uzo nke abuo . Ebe ọ bụ na Tcl nwere ike ịkwado ọnụọgụgụ dị ka ọnụ ọgụgụ mgbe o kwere mee, ọ bụghị n'ozuzu otu echiche dị mma iji ndị ọrụ dị ka == mgbe ịchọrọ n'ezie ntanetịaka na ụkpụrụ nke operands nwere ike ịmeghị ihe ọ bụla; ọ ka mma na ikpe ndị a iji iji akara nchịkọta kama.

Atụmatụ arụmọrụ

Kpochie okwu n'eme nkwado maka ọsọ kachasị ọsọ na ihe nchekwa dị nta. Nke a na-enye ndị Tcl sitetecode compiler aka ịmepụta koodu kacha mma.

Dị ka e kwuru n'elu, a na-etinye okwu abụọ ugboro abụọ: otu ugboro site na Tcl parser na otu ugboro site na iwu iwu. Dịka ọmụmaatụ, iwu

setịpụ 3 set b {$ a + 2} expr $ b * 4

weghachite 11, ọ bụghị otutu nke 4. Nke a bụ n'ihi na Tcl Parser ga-eji dochie $ a + 2 maka agbanwe b , mgbe ahụ iwu ahụ ga-elele okwu $ a + 2 * 4 .

Ọtụtụ okwu anaghị achọ mgbanwe nke abụọ. Ma ọ bụrụ na ha ejidela nkwado ma ọ bụ, ma ọ bụrụ na ọ bụghị, mgbanwe ha na ikike inye iwu na-enye nọmba ma ọ bụ ụdọ nke na-anaghị achọ ka a gbanwere ha. Otú ọ dị, n'ihi na okwu ole na ole a na-edeghị okwu chọrọ nnọchi abụọ nke mgbanwe, onye na-emepụta ihe site na bytecode ga-enye ntụziaka ndị ọzọ iji dozie ọnọdụ a. A choro koodu kachasị mkpa maka okwu ndị a na-edeghị ede nke nwere ihe nnọchiteanya iwu. A ghaghị imepụta okwu ndị a site na ịmepụta koodu ọ bụla mgbe ọ bụla a ga-egbu okwu ahụ.

Keywords

nchịkọta, ntụgharị , iji tụnyere, okwu, njirịta na-adịghị mma

Ihe dị mkpa: Jiri iwu mmadụ ( % nwoke ) hụ otú e si eji iwu gị na kọmputa gị.