题目

从控制台输入只有一个四则运算符(+,-,,/)的简单四则运算式子,然后输出计算结果。例如输入345+23,则输出345+23=368;输入20100,则输出20*10=2000;如果输入非四则运算式子就给出提示信息。运算结果如下图所示

提示:本篇文章是面对初学者文章,其中未使用java语言中类与对象的概念,没有什么深层次和抽象的内容。学习者只需一步一步阅读就可理解程序的运行逻辑,与c语言编程较为相似。

不足需改正点:1.该程序没有使用函数,即没有将程序做模块化设计。2.该程序的判断条件仍未完善,例如:其对含小数数尚不能进行判断,且判断条件相对繁琐,需改进。

代码如下(示例):

import java.util.Scanner;public class demo3_2b {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int i = 0;System.out.println("请输入四则运算式:");String a = sc.nextLine();//判断输入的字符串为简单的四则运算/*** 判断理念 正确的简单四则运算形式应该为 数字+符号+数字,那么,反之不为此形式者就不是四则运算。* *第一轮循环,判断前面的字符串是否为数字,找到第一个非数字字符,退出循环进行下一步判断。  i为定位字符串下标变量* 对找到第一个非数字字符进行判断,为四则运算符则进入下一轮循环。  * 接下来剩余的字符串应全为数字,则只需设置判断数字的条件即可。*/for (i=0; i<a.length(); i++) {if(i==0&&(a.charAt(i)<'0'||a.charAt(i)>'9')) {          //第一个字符必须为数字,否则不为四则运算,即提示并退出System.out.println("不是正确的四则运算式子!!!");System.exit(0);}          if(a.charAt(i)<'0'||a.charAt(i)>'9')break;}char b;int x;x = i;b = a.charAt(i);if(b=='+'||b=='-'||b=='*'||b=='/') {         //运算符判断i++;                                       //位置下标后移for(;i<a.length();i++) {if(a.charAt(i)<'0'||a.charAt(i)>'9') {System.out.println("不是正确的四则运算式子!!!");System.exit(0);}}}else {System.out.println("不是正确的四则运算式子!!!");System.exit(0);}//分离字符 将数字和符号分离x,提取字符串中的数字String c = a.substring(0, x);String d = a.substring(x+1, a.length());//此处提取出的数字为字符串型,所以需要对其转化//强制类型转化,将string型转化成intdouble e = Integer.parseInt(c);double f = Integer.parseInt(d);double s=0;//使用switch语句 寻找到其对应的运算规则,完成运算。此处也可以使用if-elseswitch(b) {case '+':s = e+f;System.out.println(e+"+"+f+"="+s);break;case '-':s = e-f;System.out.println(e+"-"+f+"="+s);break; case '*':s = e*f;System.out.println(e+"*"+f+"="+s);break;case '/':if(f==0) {System.out.println("除数不能为零!!!");break;}else {s = e/f;System.out.println(e+"/"+f+"="+s);break;}default:System.out.println("不正确的四则运算式子!");}sc.close();          //代表关闭输入流,不然会有警告}}

Java简单四则运算相关推荐

  1. java四则运算代码_Java实现简单四则运算

    GitHub 项目地址 PSP PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 10 10 · Estima ...

  2. Java中四则运算的那些坑

    为什么80%的码农都做不了架构师?>>>    使用Java开发多年,感觉自己的水平也在不断提升,但是被Java狂虐却从来都没变过,而且任何一个Java的小角落,都能把我虐的体无完肤 ...

  3. double java 坑,Java中四则运算的那些坑

    使用Java开发多年,感觉自己的水平也在不断提升,但是被Java狂虐却从来都没变过,而且任何一个Java的小角落,都能把我虐的体无完肤,但是无奈要靠Java吃饭,还得恬着脸继续使用下去. 说说最近遇到 ...

  4. shell编程之简单四则运算及数组定义

    shell简单四则运算及数组定义 文章目录 shell简单四则运算及数组定义 一.简单四则运算 1. 四则运算符号 2.了解i++和++i 二.数组定义 1. 数组定义 2. 其他变量定义 一.简单四 ...

  5. python比java简单好学-python和java哪个学起来更简单

    在近几年Python的呼声越来越高,很多刚开始起步想要学习编程的朋友都会犹豫要不要选择学习Python,毕竟作为人工智能时代的首选语言这个诱惑还是很大的.在选择上最纠结的就是Python和Java选择 ...

  6. java简单工厂模式_Java 简单工厂模式

    Java 简单工厂模式 2014-05-28·WeaponX 3717 次浏览 ## 介绍 简单工厂模式又称静态工厂模式. 简单工厂模式由工厂类角色.抽象产品角色和具体产品角色组成. 工厂类角色是本模 ...

  7. java拳皇地下城_拳皇(Java简单的小程序)代码实例

    刚开始学习Java,看完老九君的视频根据他的内容敲的代码,感觉还挺有成就感的,毕竟刚学习Java. package helloasd;import java.util.*; public class ...

  8. java简单系统_Java简单学生管理系统

    Java简单学生管理系统 这个不需要手动输入,笔记记录 //student` public class student(){ private String id;//学号 private String ...

  9. JAVA拳皇_拳皇(Java简单的小程序)代码实例|chu

    刚开始学习Java,看完老九君的视频根据他的内容敲的代码,感觉还挺有成就感的,毕竟刚学习Java. package helloasd;import java.util.*; public class ...

最新文章

  1. Codeforces 861D - Polycarp's phone book 字典树/hash
  2. C#用WebBrowser与WIN API辅助模拟获取网站完整Cookie
  3. 使用Ansible进行硬件引导
  4. Oracle全文索引之六 附:CONTAINS函数
  5. python编写一个函数判断一个数是否为素数是则返回yes_编写函数isPrime,判断一个数字是否为素数,是则返回字符串 YES ,否则返回字符串 NO 。_学小易找答案...
  6. [转载] python 调用自己的方法报错,numpy.ndarray object has no attribute brighten
  7. Spring Framework 5.0 新特性有这些
  8. jquery源码解析:jQuery延迟对象Deferred(工具方法)详解1
  9. 安卓加密软件_安卓视频加密软件使用哪个好?哪个好用?
  10. 从实战思路学习前端的设计模式
  11. html怎么设置华文行楷,css如何修改字体为华文行楷
  12. 将jar文件安装为系统服务
  13. ZeroMQ XPub/XSub模式
  14. 北斗GPS系统在车辆管理系统中的运用与北斗GPS车辆管理调度系统平台建设方案硬件设备
  15. localhost访问不了的解决方法
  16. 计算机网络——运输层
  17. CSS中那些px、em、pt、rem、%、dp(android)单位
  18. 旅行摄影LR调色预设(含lr预设导入教程)
  19. c# 解析和生成 DAE文件
  20. 超声波涡街流量测量原理

热门文章

  1. 计算机毕业设计-仿QQ音乐--HTML+CSS
  2. 元账户层是进入Web3元宇宙的传送门
  3. electron实现远程更新
  4. 【Qt】 Fractal Designer 4.6 - Help(中文版)
  5. 树莓派从零开始快速入门第8讲——单总线(以DS18B20为例)
  6. filebeat+redis+logstash+elasticsearch filebeat+kafka+zookeeper+logstash+elasticsearch
  7. iconic 框架中的滚动条高度
  8. FastAdmin自定义搜索,通用搜索失效
  9. 企业如何选购防火墙?防火墙保护企业安全
  10. 素描入门静物的学习方法