C :: Making Calculator Program Using Only Getchar And Putchar
Mar 21, 2014
I have to make a calculator program that has 5 different functions (this is obviously the easy part, once all the input is assigned to their respective variables), which are addition, subtraction, mod, multiplication and division (negatives are not allowed, and must be error-checked; spaces must be ignored). I need to take the equation from the user, echo it back and then solve the problem.
I basically just have to make a calculator that only uses getchar/putchar (printf is Ok for displaying errors) - Also, negatives must be error-checked. As of right now, my program will only work if there is exactly one space between the number, operand, and other number. No spaces, or more than one space, will give me some very weird digits. I also need to display the numbers with putchar, and not printf (as I did below), but I just really wanted a working program.
#include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <math.h> int add(int input1,char operand, int input2); int subtract(int input1,char operand, int input2);
'm trying to program a BMI calculator in C for my assignment where the weight must be in KG and an int , and the height must be in m and a double value. The program should allow the user to input his weight(kg) and height(m) separated by a space and be able to calculate and display the BMI. My code is shown below :
However , after running the program , I constantly get a 1.#INF00 value for my result.The compiler did not show any errors so why I'm getting this value.I input my weight and height in this format "45 1.65" 45 being the weight and 1.65 being the height.
error C2660: 'Add' : function does not take 0 arguments error C2660: 'Subtract' : function does not take 0 arguments error C2660: 'Multiply' : function does not take 0 arguments error C2660: 'Divide' : function does not take 0 arguments
I'm working on below program and I want the program to do the same thing, but with not one main() function, but instead one main() function PLUS one user defined function called computeConeVolume that contains the calculation. In other words I want to remove the one line calculation and replace it with a function call, then write and add the function below main with the calculation, surrounded any other syntax that I need to complete it.
The function should contain local variables and a constant declared and must have the calculation, it may not do anything else such as input or output. Should be able to declare "global" variables anywhere but no variables above or outside of main() and the function are allowed. A value-returning function should be used because it's a little simpler to understand, but you can employ a void function. Need to have a function prototype at the top of the code, then main, then your function.
//Cone Volume Calculator Program #include <iostream> using namespace std; int main( ) { //Declare variables and constants double coneRadius = 0.0; double coneHeight = 0.0;
I am basically trying to make a program for a calculator. I am struggling with how to do the sine calculation. this calculation will take place at line 158.
#include <iostream> #include <cmath> using namespace std; int main() {
I just started learning C and trying to create a program in C that will have a starting menu for a calculator. The problem is that I could do that with a switch/case but the assignment requires me to use if/else.
Here's what I have so far:
Code:
#include <stdio.h> int calc(); int menu(); int main() { printf("Hello. Welcome to the program. "); printf("Press RETURN key to continue...
[Code]...
How should I go from now using if/else to have those 4 choices?
i try to write a postfix calculator program using stack in C++ the in put must be the infix expression but can dont know how to write a infix expression in put.
I want the user to be able to enter a command then a character, like for example: push r....I want the command to be stored in the array command, and the character to be stored in the variable c.
Now I wonder what the best way to get rid of the space is, using scanf or getchar (see below for code, only thing that I changed between the 2 versions is the statement before the comment "get rid of space")? Or maybe it doesnt matter?
Code:
include <stdio.h> #define MAX 200 void push(char c); // Puts a new element last in queue char pop(void); // Gets the first element in queue static char s[MAX]; }
I need to get an integer number with only using getchar() and without pre knowing the number of digits in the integer. And I cannot use strings or arrays.
Once again i hit a very simple problem i am unable to resolve. I using Visual Studio 2010, but am compiling for C.
This:
Code: char i=45; while(i=getchar() != EOF) {
should imo work perfectly (yes, no real code, just to demonstrate the issue), but it doesnt. Getchar() always returns 0x01. Why is that? This, in contrast, works perfectly fine:
Code: char i=45; while(i!= EOF) { i=getchar();
Shouldnt an assignment always return the assigned value?
I am new to C programming, I have been given an assignment to create a simple calculator by splitting the program in 3 files. It should have 2 .c files and 1 .h... I went through the internet extensively and could only come up with this.
main.c:
Code:
//Calculator main.c #include <stdio.h> #include <conio.h> #include "Functions.h" int main() { float x = 0, y = 0; int operation;
[Code]...
Functions.c
Code:
#include "Functions.h" extern float x, y; float addition (float a, float b) { return a + b;
[Code]...
Functions.h
Code:
#ifndef FUNCTIONS_H_INCLUDED #define FUNCTIONS_H_INCLUDED float Sum(float a, float b); float difference (float a, float b); float remainder (float a, float b); float product (float a, float b); #endif
When I do a 'cl main.c' on the Developer Command window for VS2013, i get an error that reads :
main.obj main.obj : error LNK2019: unresolved external symbol _difference referenced in function _main main.obj : error LNK2019: unresolved external symbol _product referenced in function _main main.obj : error LNK2019: unresolved external symbol _addition referenced in function _main main.exe : fatal error LNK1120: 3 unresolved externals
I want to incorporate a button into my current program that opens up a calculator in a different window. I have the code for the calculator and the program. I have never worked with buttons or windows.
I know there is a function for comparing string but i am making it to just improve my concepts.error : 2 is coming as answer when i put same sting in both place.
makingArray: this function will return a double pointer which points to a double array and take one parameter- an integer variable which has a default argument of 5. The argument is the size of the integer array. when the function is called, the users input or default argument will be used for the size of the array. The function will initialize all elements of the array with the 'cin' object.
getTotal: this function will return a double and take two parameters- a double array, which can NOT be modified by this function, and an integer variable for a size of the array. This function will calculate the total of all elements then return a double number which is the total.
main: demonstrate functions( makingArray and getTotal) by calling them in a program
I'm trying to understand why this won't work, the output i get is a list of even numbers. I'm trying to get all prime numbers below the number thats scanned in.
#include <stdio.h> int isPrime(int number); int main(){
I need to make a program which solove difference between two interested times in format hh:mm i made it but it doesn't give me right answers for all times for example it can't solve times like 23:50 and 0:15 and it says that difference is 23:35 and no 00:25
I have my Reverse Polish calculator compiling and everything but for the assignment I need to handle a few exceptions that I can't seem to get. First off I'm trying to make the program exit if the user enters only "0" but since the input i'm using is string, I cant figure out how to code
"If the first node is 0 and the next node = NULL, return true"
Here is my code: #include<iomanip> #include<iostream> #include<stdlib.h> #include<stdio.h> #include<string> #include<sstream> using namespace std;
I have a program that makes change from an amount. It works fine, but the output is the correct output looped over and over. I have tried everything, but it still doesn't work. For example, a amount of 98 should print
I just started by defining a stack class (stackDouble). I need to write a program that accepts an infix calculator expression, with the following operators (**, exponentiation, /, division, and, -, subtraction. The operator precedence is exponent, division, and subtraction.I need to use a stack of doubles and a stack of strings, of which I can write two classes, or write a single stack template. The user will input the expression just via cin, and there will be a # before every number, a ! before each operator, and a . at the end of the expression. '#', '!', or '.' can be input into a char variable, numbers into a double variable and operators into a string variable.
For example, the following would output 6:
# 3 ! / # 2 ! / # .5 ! ** # 2 .
As stated above, I already made up a stackDouble class. What would I need to do to create the other class (I don't think I want to do it with a template)?
Code: #include <iostream> #include <string> using namespace std; class stackDouble{
I have an assignment to do a calculator in C, wich will work by clicking the numbers with the mouse, however i have a bug that when i hold the mouse and dragg it, it assumes that I'm clicking multiple times, also, when I click in an empty space the program creates a blank space on the calculator screen.
Code:
#include <stdio.h> #include <conio.h> #include <math.h> #include "..MouseHandler.h" // ajustar o caminho ao seu projecto #include "..calcSkinLib.h" // ajustar o caminho ao seu projecto #define PI = 3.1415;