Create a custom calculator program, C/C++ Programming

Assignment Help:

//Create a custom calculator program capable of reading the input stream of an expression

//and make basic computations to provide answer.

//Your program will ask the user to enter an expression in one single line

//Use an array to capture the input

//Choose how you want to word the request to the user (bound your request)

//Your calculator should be able to do the following operations individually or in combinaison:

//Multiplication

//Division

//Addition

//Substration

//maximum

//minimum

//square

//squareroot

//solve a system of equations with 2 variables (using 2 dimensional arrays) (max power is 1)

/*

Ax + By = C

Dx + Ey = F

*/

//solve a quadratic equation of the form Ax2 + Bx + C = 0

//Iplement each operation process in a separate function, and use pointers to access values used in computations

//Use the Shunting-yard_algorithm found at https://en.wikipedia.org/wiki/Shunting-yard_algorithm to obtain the

//output string that you would procees further to compute the answer

//Make use of Matrix for the last two operations and access elements using pointers

//Create your program so that the user may enter input indefinitely if needed

//Make use of the program skeleton provided below, debug and develop your code based on it.

//You can expand on it, but you must use all variables and structures defined

//At any time, ask the user he/she would like to continue

//(i.e. continue to prompt user whether to repeat exercise again)

//Print the result at each stage

//Variable declaration

const int SysEqMatrixSize = 3;

const int QuadEqArraySize = 3;

const int sizeOfInputString = 50;

const int sizeOfOutputString = 128;

//Function Declaration *********************

//Initialize the matrix provided with zeros

int myMatrixInit(int **myMatrix, int numRows, int numCols);

int processMyOutput(char *stringForProcess);

int main()

{

    int myRow;

    int myColumn;

    char myInput[sizeOfInputString];

    char myOutput[sizeOfOutputString];

    int myInputLocation;   

    int mySysOfEqu2[SysEqMatrixSize][SysEqMatrixSize];

    int QuadEqu1[QuadEqArraySize];

    int repeat = 0;

    int answer = 0;   

    //Tell the user about your program: What it does and what is expected of user   

        //Ask whether to proceed   

        //Proceed and continue processing as long as the user wants

    while(repeat == 1)

    {

        myMatrixInit(mySysOfEqu2, SysEqMatrixSize, SysEqMatrixSize);

        myMatrixInit(QuadEqu1, QuadEqArraySize, 0);

       //Collect input from user: initialize input array (load all element with \0)

       //Call input function: use scanf("%s", myInput);

       //The 's' argument type after the percent character is for string input

       //character string (not quoted); char * ; pointing to an array of characters

       //large enough for the string and a terminating '\0' that will be added

       //The name of the array is a pointer to the address of that array      

       //Check input: Design the format you want for your input and request it from user

       // if the input violates your requirements, then print error and prompt user again

       //Process execution: You must use the core code structure below

       // You may rearange it elsewhere in a function

       //***********

       //If regular expression, then do this

       //Use the Shunting-yard_algorithm found at https://en.wikipedia.org/wiki/Shunting-yard_algorithm to obtain the

       //output string that you would procees further to compute the answer

       if(shunting_yard(myInput, myOutput))

            answer = processMyOutput(myOutput);

       //Print the result at each stage

 

//Function Definitions ****************

//Passing by address

int myMatrixInit(int **myMatrix, int numRows, int numCols)

{

    //Complete with code

}

int processMyOutput(char *stringForProcess){

    //Complete with code

}

//*****************

//insert other function definition here


Related Discussions:- Create a custom calculator program

C program, Write a ‘C’ program to accept any 3 digit integer number from th...

Write a ‘C’ program to accept any 3 digit integer number from the keyboard and display the word equivalent representation of the given number.

Algorithms, write an algorithm for multiplication of two sparse matrices us...

write an algorithm for multiplication of two sparse matrices using linked lists

Explain object conversions, Object Conversions Just like initialization...

Object Conversions Just like initialization, conversions are also done automatically when an object of a derived class is assigned to an object of the base class. Though, the c

Specifying and working rules of a class, Specifying a Class: As discuss...

Specifying a Class: As discussed a class is defined to develop an algorithm and bind it together in a core shell. A class is an abstract data type (ADT).  The binding of dat

Curve, Write a program to find the area under the curve y = f(x) between x ...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

Define multi file program, Define Multi File Program? While writing lar...

Define Multi File Program? While writing large programs we must divide programs up into modules. These would be separate source files and the main() function would be in one fi

Example of array, In this lab, please complete a given program to perform t...

In this lab, please complete a given program to perform the following tasks: 1. Allocate a 10 by 5 2D byte array dynamically. The way of allocation must be consistent with pag

Advantages to the use of functions, Question: (a) What is a function? A...

Question: (a) What is a function? Are functions needed when writing a C program? (b) State one of the advantages to the use of functions. (c) What do you meant by underst

Describe, A: Use operator overloading to present a friend right-shift opera...

A: Use operator overloading to present a friend right-shift operator, operator>>. It is similar to the output operator, except the parameter doesn't contain a const: "Fred&" instea

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd