Lines Matching refs:exp
225 int exp; /* exponent of real numbers */
416 exp = 0;
418 while( realvalue>=1e8 && exp<=350 ){ realvalue *= 1e-8; exp+=8; }
419 while( realvalue>=10.0 && exp<=350 ){ realvalue *= 0.1; exp++; }
420 while( realvalue<1e-8 && exp>=-350 ){ realvalue *= 1e8; exp-=8; }
421 while( realvalue<1.0 && exp>=-350 ){ realvalue *= 10.0; exp--; }
422 if( exp>350 || exp<-350 ){
436 if( realvalue>=10.0 ){ realvalue *= 0.1; exp++; }
440 if( exp<-4 || exp>precision ){
443 precision = precision - exp;
450 ** The "exp+precision" test causes output to be of type etEXP if
454 if( xtype==etFLOAT && exp+precision<etBUFSIZE-30 ){
457 if( exp<0 ) *(bufpt++) = '0'; /* Digits before "." */
458 else for(; exp>=0; exp--) *(bufpt++) = et_getdigit(&realvalue,&nsd);
460 for(exp++; exp<0 && precision>0; precision--, exp++){
482 if( exp || flag_exp ){
484 if( exp<0 ){ *(bufpt++) = '-'; exp = -exp; } /* sign of exp */
486 if( exp>=100 ){
487 *(bufpt++) = (exp/100)+'0'; /* 100's digit */
488 exp %= 100;
490 *(bufpt++) = exp/10+'0'; /* 10's digit */
491 *(bufpt++) = exp%10+'0'; /* 1's digit */