Internal test verifying the behavior of all `RaiseErrorOn...` flag methods.
ID: 408
using uCalcSoftware;
var uc = new uCalc();
// --- Division by Zero ---
Console.WriteLine(uc.EvalStr("1/0"));
uc.Error.TrapOnDivideByZero = true;
Console.WriteLine(uc.EvalStr("1/0"));
// --- Invalid Operation ---
Console.WriteLine(uc.EvalStr("Sqrt(-1)"));
uc.Error.TrapOnInvalid = true;
Console.WriteLine(uc.EvalStr("Sqrt(-1)"));
// --- Overflow ---
Console.WriteLine(uc.EvalStr("5*10^308"));
uc.Error.TrapOnOverflow = true;
Console.WriteLine(uc.EvalStr("5*10^308"));
// --- Underflow ---
Console.WriteLine(uc.EvalStr("10^-308/10000"));
uc.Error.TrapOnUnderflow = true;
Console.WriteLine(uc.EvalStr("10^-308/10000"));
inf
Division by 0
nan
Invalid operation
inf
Floating point overflow
0
Floating point underflow using uCalcSoftware; var uc = new uCalc(); // --- Division by Zero --- Console.WriteLine(uc.EvalStr("1/0")); uc.Error.TrapOnDivideByZero = true; Console.WriteLine(uc.EvalStr("1/0")); // --- Invalid Operation --- Console.WriteLine(uc.EvalStr("Sqrt(-1)")); uc.Error.TrapOnInvalid = true; Console.WriteLine(uc.EvalStr("Sqrt(-1)")); // --- Overflow --- Console.WriteLine(uc.EvalStr("5*10^308")); uc.Error.TrapOnOverflow = true; Console.WriteLine(uc.EvalStr("5*10^308")); // --- Underflow --- Console.WriteLine(uc.EvalStr("10^-308/10000")); uc.Error.TrapOnUnderflow = true; Console.WriteLine(uc.EvalStr("10^-308/10000"));
#include
#include "uCalc.h"
using namespace std;
using namespace uCalcSoftware;
int main() {
uCalc uc;
// --- Division by Zero ---
cout << uc.EvalStr("1/0") << endl;
uc.Error().TrapOnDivideByZero(true);
cout << uc.EvalStr("1/0") << endl;
// --- Invalid Operation ---
cout << uc.EvalStr("Sqrt(-1)") << endl;
uc.Error().TrapOnInvalid(true);
cout << uc.EvalStr("Sqrt(-1)") << endl;
// --- Overflow ---
cout << uc.EvalStr("5*10^308") << endl;
uc.Error().TrapOnOverflow(true);
cout << uc.EvalStr("5*10^308") << endl;
// --- Underflow ---
cout << uc.EvalStr("10^-308/10000") << endl;
uc.Error().TrapOnUnderflow(true);
cout << uc.EvalStr("10^-308/10000") << endl;
}
inf
Division by 0
nan
Invalid operation
inf
Floating point overflow
0
Floating point underflow #include <iostream> #include "uCalc.h" using namespace std; using namespace uCalcSoftware; int main() { uCalc uc; // --- Division by Zero --- cout << uc.EvalStr("1/0") << endl; uc.Error().TrapOnDivideByZero(true); cout << uc.EvalStr("1/0") << endl; // --- Invalid Operation --- cout << uc.EvalStr("Sqrt(-1)") << endl; uc.Error().TrapOnInvalid(true); cout << uc.EvalStr("Sqrt(-1)") << endl; // --- Overflow --- cout << uc.EvalStr("5*10^308") << endl; uc.Error().TrapOnOverflow(true); cout << uc.EvalStr("5*10^308") << endl; // --- Underflow --- cout << uc.EvalStr("10^-308/10000") << endl; uc.Error().TrapOnUnderflow(true); cout << uc.EvalStr("10^-308/10000") << endl; }
Imports System
Imports uCalcSoftware
Public Module Program
Public Sub Main()
Dim uc As New uCalc()
'// --- Division by Zero ---
Console.WriteLine(uc.EvalStr("1/0"))
uc.Error.TrapOnDivideByZero = true
Console.WriteLine(uc.EvalStr("1/0"))
'// --- Invalid Operation ---
Console.WriteLine(uc.EvalStr("Sqrt(-1)"))
uc.Error.TrapOnInvalid = true
Console.WriteLine(uc.EvalStr("Sqrt(-1)"))
'// --- Overflow ---
Console.WriteLine(uc.EvalStr("5*10^308"))
uc.Error.TrapOnOverflow = true
Console.WriteLine(uc.EvalStr("5*10^308"))
'// --- Underflow ---
Console.WriteLine(uc.EvalStr("10^-308/10000"))
uc.Error.TrapOnUnderflow = true
Console.WriteLine(uc.EvalStr("10^-308/10000"))
End Sub
End Module
inf
Division by 0
nan
Invalid operation
inf
Floating point overflow
0
Floating point underflow Imports System Imports uCalcSoftware Public Module Program Public Sub Main() Dim uc As New uCalc() '// --- Division by Zero --- Console.WriteLine(uc.EvalStr("1/0")) uc.Error.TrapOnDivideByZero = true Console.WriteLine(uc.EvalStr("1/0")) '// --- Invalid Operation --- Console.WriteLine(uc.EvalStr("Sqrt(-1)")) uc.Error.TrapOnInvalid = true Console.WriteLine(uc.EvalStr("Sqrt(-1)")) '// --- Overflow --- Console.WriteLine(uc.EvalStr("5*10^308")) uc.Error.TrapOnOverflow = true Console.WriteLine(uc.EvalStr("5*10^308")) '// --- Underflow --- Console.WriteLine(uc.EvalStr("10^-308/10000")) uc.Error.TrapOnUnderflow = true Console.WriteLine(uc.EvalStr("10^-308/10000")) End Sub End Module