real_number.cc

来自「由matlab开发的hybrid系统的描述语言」· CC 代码 · 共 81 行

CC
81
字号
#include "Real_number.h"#include <stdio.h>#include <float.h>#include <math.h>string Real_number::to_matlab() const {	char buf[100];	char format[15];	sprintf(format, "%%.%ug", DBL_DIG);	sprintf(buf, format, value);	/* Smarter alternative, but does not work on win32	printf("%1$.*2$g ",f,DBL_DIG);	Works on all the compiler but may introduce tuncation errors	printf("%f ",f);*/	return string(buf);}void Real_number::sin() {	value =::sin(value);}void Real_number::cos() {	value =::cos(value);}void Real_number::sqrt() {	assert(value >= 0); //temporary	value =::sqrt(value);}void Real_number::exp() {	value =::exp(value);}void Real_number::log() {	assert(value > 0); //temporary	value =::log(value);}void Real_number::neg() {	value = -value;}void Real_number::plus(Real_number * n) {	value += n->value;	delete n;}void Real_number::minus(Real_number * n) {	value -= n->value;	delete n;}void Real_number::mult(Real_number * n) {	value *= n->value;	delete n;}void Real_number::div(Real_number * n) {	assert(n->value != 0); //temporary	value /= n->value;	delete n;}void Real_number::min(Real_number * n) {	if (n->value < value) value = n->value;	delete n;}void Real_number::max(Real_number * n) {	if (n->value > value) value = n->value;	delete n;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?