Поправљена функција за дељење
This commit is contained in:
parent
25858c21e1
commit
ecba64be1b
1 changed files with 18 additions and 2 deletions
16
eval.c
16
eval.c
|
@ -221,13 +221,29 @@ object divide(object parameters)
|
||||||
ERRMSG(result) = argumentNumberError;
|
ERRMSG(result) = argumentNumberError;
|
||||||
}
|
}
|
||||||
else if (listLength(parameters) == 1)
|
else if (listLength(parameters) == 1)
|
||||||
|
{
|
||||||
|
if (NUM(CAR(parameters)) != 0)
|
||||||
{
|
{
|
||||||
NUM(result) = 1/NUM(CAR(parameters));
|
NUM(result) = 1/NUM(CAR(parameters));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
TYPE(result) = errorObject;
|
||||||
|
ERRMSG(result) = divisionByZeroError;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (NUM(add(CDR(parameters))) != 0)
|
||||||
{
|
{
|
||||||
NUM(result) = NUM(CAR(parameters))/NUM(add(CDR(parameters)));
|
NUM(result) = NUM(CAR(parameters))/NUM(add(CDR(parameters)));
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
TYPE(result) = errorObject;
|
||||||
|
ERRMSG(result) = divisionByZeroError;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue