package Ġche ats heet s Ċ Ċ /** Ċ Ġ* ĠKotlin Ġer la ub t Ġes , Ġeine Ġbeg ren z te ĠAn zahl Ġvon ĠOper atore n Ġwie Ġ` + `, Ġ`- `, Ġ` * `, Ġ`/ `, Ġ` ++ `, Ġ` ! `, Ġetc . Ċ Ġ* Ġin Ġeigen en ĠK lass en Ġzu ĠÃ¼ber lad en . Ċ Ġ* Ċ Ġ* ĠDie Ġ" klass ische ĠWork shop k lasse " Ġ` Rational ` Ġsol l Ġ` + ` Ġund Ġ` ++ ` Ġunter stÃ¼ t zen . Ċ Ġ*/ Ċ class ĠRational ( val Ġnum erator : ĠInt , Ġval Ġd enum erator : ĠInt ) Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAlle ĠOper atore n Ġhaben Ġfest Ġz uge ord net e ĠMethod enn amen . ĠF Ã¼r Ġ` + ` Ġz . B . Ġ` plus ` Ġund Ġdem Ġ` operator ` Ġmodifier . ĊĠĠĠĠ Ġ* ĠAn dere ĠOper atore n Ġsind Ġhier Ġ( https :// kotlin lang . org / docs / reference / operator - over loading . html ) Ġzu Ġfinden . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoperator Ġfun Ġplus ( b : ĠInt ): ĠRational Ġ= ĠRational ( num erator Ġ+ Ġ( b Ġ* Ġd enum erator ), Ġd enum erator ) ĊĊĠĠĠ Ġoperator Ġfun Ġplus ( b : ĠRational ): ĠRational Ġ= ĠRational ( ĊĠĠĠĠĠĠĠ Ġnum erator Ġ= Ġnum erator Ġ* Ġb . d enum erator Ġ+ Ġb . num erator Ġ* Ġd enum erator , ĊĠĠĠĠĠĠĠ Ġd enum erator Ġ= Ġd enum erator Ġ* Ġb . d enum erator ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ` inc ` Ġist Ġder ĠMethod en pend ant Ġzu Ġ` ++ `. ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoperator Ġfun Ġinc () Ġ= ĠRational ( num erator Ġ+ Ġ 1 , Ġd enum erator ) ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ$ num erator ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ--- ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ$ d enum erator ĊĠĠĠĠĠĠĠ Ġ""" . trim Margin () ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠ Ġprintln ( Rational ( 1 , Ġ 3 ) Ġ+ ĠRational ( 2 , Ġ 3 )) ĊĊĠĠĠ Ġprintln ( Rational ( 1 , Ġ 3 ) Ġ+ Ġ 1 ) ĊĊĠĠĠ Ġvar Ġr Ġ= ĠRational ( 1 , Ġ 3 ) ĊĠĠĠ Ġprintln ( ++ r ) Ċ } Ċ