package Ġcom . example . calcul adora Ċ Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . EditText Ċ import Ġandroid . widget . TextView Ċ import Ġandroid . widget . Toast Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġ/* val Ġet Num Uno Ġ= ĠfindViewById < EditText >( R . id . et Numero Uno ) ĊĠĠĠĠĠĠĠ Ġval Ġet Num Dos Ġ= ĠfindViewById < EditText >( R . id . et Numero Dos ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Res Ġ= ĠfindViewById < Button >( R . id . btn Result ado ) ĊĠĠĠĠĠĠĠ Ġval Ġtv Res Ġ= ĠfindViewById < TextView >( R . id . tv Result ado ) ĊĊĠĠĠĠĠĠĠ Ġbtn Res . setOnClickListener (){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġnumero Uno : ĠInt Ġ= Ġet Num Uno . text . toString (). toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġnumero Dos : ĠInt Ġ= Ġet Num Dos . text . toString (). toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġresultado : ĠInt Ġ= Ġnumero Uno Ġ+ Ġnumero Dos ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Res . text Ġ= Ġ" El Ġresultado Ġes Ġ$ resultado " ĊĠĠĠĠĠĠĠ Ġ}*/ ĊĊĠĠĠĠĠĠĠ Ġval Ġtv Ops Ġ= ĠfindViewById < TextView >( R . id . tv Oper aciones ) ĊĠĠĠĠĠĠĠ Ġval Ġtv Res Ġ= ĠfindViewById < TextView >( R . id . tv Result ado ) ĊĊĠĠĠĠĠĠĠ Ġval Ġbtn Bor Ġ= ĠfindViewById < Button >( R . id . btn Ac ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Bor 2 Ġ= ĠfindViewById < Button >( R . id . btn C ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 1 Ġ= ĠfindViewById < Button >( R . id . btn Uno ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 2 Ġ= ĠfindViewById < Button >( R . id . btn Dos ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 3 Ġ= ĠfindViewById < Button >( R . id . btn T res ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 4 Ġ= ĠfindViewById < Button >( R . id . btn Cu at ro ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 5 Ġ= ĠfindViewById < Button >( R . id . btn C in co ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 6 Ġ= ĠfindViewById < Button >( R . id . btn Se is ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 7 Ġ= ĠfindViewById < Button >( R . id . btn S iet e ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 8 Ġ= ĠfindViewById < Button >( R . id . btn O cho ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 9 Ġ= ĠfindViewById < Button >( R . id . btn N ue ve ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn 0 Ġ= ĠfindViewById < Button >( R . id . btn C ero ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn P un Ġ= ĠfindViewById < Button >( R . id . btn Punto ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Div Ġ= ĠfindViewById < Button >( R . id . btn Div idir ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Mul Ġ= ĠfindViewById < Button >( R . id . btn Multip lic ar ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Res Ġ= ĠfindViewById < Button >( R . id . btn Re star ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Sum Ġ= ĠfindViewById < Button >( R . id . btn Sum ar ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn I gu Ġ= ĠfindViewById < Button >( R . id . btn Ig ual ) ĊĊĠĠĠĠĠĠĠ Ġvar Ġnum Uno : ĠString Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġnum Dos : ĠString Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġoper ador : ĠString Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġche que o : ĠBoolean Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠ Ġfun Ġli mp iar () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Ops . text Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Res . text Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnum Uno Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnum Dos Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoper ador Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġche que o Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġconstructor Exp ( cad ena : ĠString , Ġoper : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( tv Res . text Ġ!= Ġ""){ limp iar ()} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( oper ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( che que o ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Lo Ġsent imos . ĠEn Ġel Ġmoment o ĠsÃ³ lo Ġse Ġpuede Ġhacer Ġuna Ġoper aciÃ³n ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoper ador Ġ= Ġcad ena ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġche que o Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv Ops . append ( cad ena ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! che que o ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnum Uno Ġ+= Ġcad ena ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnum Dos Ġ+= Ġcad ena ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv Ops . append ( cad ena ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġdivision (): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( num Dos Ġ== Ġ" 0 "){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ" ERROR ! ĠNo Ġse Ġpuede Ġdiv idir Ġpor Ġ 0 " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ( num Uno . toDouble () Ġ/ Ġnum Dos . toDouble ()). toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġcalc ular () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( oper ador ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" +" Ġ-> Ġtv Res . text Ġ= Ġ( num Uno . toDouble () Ġ+ Ġnum Dos . toDouble ()). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"-" Ġ-> Ġtv Res . text Ġ= Ġ( num Uno . toDouble () Ġ- Ġnum Dos . toDouble ()). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"*" Ġ-> Ġtv Res . text Ġ= Ġ( num Uno . toDouble () Ġ* Ġnum Dos . toDouble ()). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"/" Ġ-> Ġtv Res . text Ġ= Ġdivision () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġtv Res . text Ġ= Ġ" 0 " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbtn 0 . setOnClickListener { constructor Exp (" 0 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 1 . setOnClickListener { constructor Exp (" 1 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 2 . setOnClickListener { constructor Exp (" 2 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 3 . setOnClickListener { constructor Exp (" 3 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 4 . setOnClickListener { constructor Exp (" 4 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 5 . setOnClickListener { constructor Exp (" 5 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 6 . setOnClickListener { constructor Exp (" 6 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 7 . setOnClickListener { constructor Exp (" 7 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 8 . setOnClickListener { constructor Exp (" 8 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn 9 . setOnClickListener { constructor Exp (" 9 ", false )} ĊĠĠĠĠĠĠĠ Ġbtn P un . setOnClickListener { constructor Exp (".", false )} ĊĠĠĠĠĠĠĠ Ġbtn Div . setOnClickListener { constructor Exp ("/", true )} ĊĠĠĠĠĠĠĠ Ġbtn Mul . setOnClickListener { constructor Exp ("* ", true )} ĊĠĠĠĠĠĠĠ Ġbtn Res . setOnClickListener { constructor Exp ("- ", true )} ĊĠĠĠĠĠĠĠ Ġbtn Sum . setOnClickListener { constructor Exp ("+ ", true )} ĊĠĠĠĠĠĠĠ Ġbtn Bor . setOnClickListener { limp iar ()} ĊĠĠĠĠĠĠĠ Ġbtn Bor 2 . setOnClickListener { limp iar ()} ĊĠĠĠĠĠĠĠ Ġbtn I gu . setOnClickListener { calc ular ()} ĊĠĠĠ Ġ} Ċ }