just a sample of what can be done

Dependencies:   mbed

PRN電卓プログラム

「プログラミング言語C (K&R本)」に出てくる例を元にした,RPN計算機です.

hp写真はイメージです

このプログラムは..

stack.cpp

Committer:
okano
Date:
2015-06-27
Revision:
5:3b9daee5f734
Parent:
4:b4c8aee2ecad

File content as of revision 5:3b9daee5f734:

#include    "mbed.h"
#include    "calc.h"

#define     MAXVAL  100

int     sp  = 0;
double  val[ MAXVAL ];

void push( double f )
{
    if ( sp < MAXVAL )
        val[ sp++ ] = f;
    else
        printf( "error: stack full, can't push %g\n", f );
}


double pop( void )
{
    if ( sp > 0 )
        return val[ --sp ];
    else {
        printf( "error: stack empty\n" );
        return 0.0;
    }
}

void show_stack( void )
{
    for ( int i = 0; i < sp; i++ )
        printf( "%3d: %f\n", ((sp - 1) - i), val[ i ] );
}