#include <LiquidCrystal.h>
const int rs = 26;
const int en = 25;
const int D4 = 13;
const int D5 = 12;
const int D6 = 14;
const int D7 = 27;
int dt = 3000;
// Create an LCD Object. Parameters: (rs,enable,D4,D5,D6,D7)
LiquidCrystal lcd(rs,en,D4,D5,D6,D7);
float firstNum;
float secNum;
float answer;
String op;
void setup()
{
// set up the LCD's number of columns and rows
lcd.begin(16,2);
// Clears the Screen
lcd.clear();
Serial.begin(115200);
}
void loop()
{
lcd.setCursor(0,0);
// Print the message
lcd.print("Input 1st Number");
Serial.println(" Input 1st Number ");
while(Serial.available() == 0)
{
}
firstNum = Serial.parseFloat();
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Input 2nd Number");
Serial.println(" Input 2nd Number ");
while(Serial.available() == 0)
{
}
secNum = Serial.parseFloat();
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Input(+,_,*,/)");
Serial.println("Input(+,_,*,/)");
while(Serial.available() == 0)
{
}
op = Serial.readString();
if(op == "+")
{
answer = firstNum + secNum;
}else if(op == "-")
{
answer = firstNum - secNum;
}else if(op == "*")
{
answer = firstNum * secNum;
}else if(op == "/")
{
answer = firstNum / secNum;
}
lcd.clear();
lcd.setCursor(0,0);
lcd.print(firstNum);
Serial.println(firstNum);
lcd.print(op);
Serial.println(op);
lcd.print(secNum);
Serial.println(secNum);
lcd.print("=");
Serial.println("=");
lcd.print(answer);
Serial.println(answer);
lcd.setCursor(0,1);
lcd.print("Thank You");
Serial.println("Thank You");
delay(dt);
lcd.clear();
}