java实现:

import java.util.Scanner;
import java.io.IOException;
import java.io.FileReader;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
import java.util.Formatter;class Main
{public static final boolean DEBUG = false;public static void main(String[] args) throws IOException {Scanner cin;Pattern p = Pattern.compile("(\\+|-|=)");String s;double a, b, c;boolean bEqual, bMinus;int loc1;if (DEBUG) {cin = new Scanner(new FileReader("d:\\OJ\\uva_in.txt"));} else {cin = new Scanner(System.in); }while (cin.hasNext()) {s = cin.next();a = b = c = 0;bEqual = bMinus = false;loc1 = 0;String sub;Matcher m = p.matcher(s);while (m.find()) {sub = s.substring(loc1, m.start());if (sub.indexOf('x') == -1) {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.compareTo("") != 0) c += Integer.parseInt(sub);} else {if (sub.compareTo("") != 0)c -= Integer.parseInt(sub);}} else if (sub.indexOf('^') == -1) {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.length() == 1) b += 1;else b += Integer.parseInt(sub.substring(0, sub.length() - 1));} else {if (sub.length() == 1) b -= 1;else b -= Integer.parseInt(sub.substring(0, sub.length() - 1));}} else {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.length() == 3) a += 1;else a += Integer.parseInt(sub.substring(0, sub.length() - 3));} else {if (sub.length() == 3) a -= 1;else a -= Integer.parseInt(sub.substring(0, sub.length() - 3));}}if (m.group().compareTo("=") == 0) bEqual = true;else if (m.group().compareTo("-") == 0) bMinus = true;else bMinus = false;loc1 = m.end();}sub = s.substring(loc1, s.length());if (sub.indexOf('x') == -1) {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.compareTo("") != 0) c += Integer.parseInt(sub);} else {if (sub.compareTo("") != 0) c -= Integer.parseInt(sub);}} else if (sub.indexOf('^') == -1) {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.length() == 1) b += 1;else b += Integer.parseInt(sub.substring(0, sub.length() - 1));} else {if (sub.length() == 1) b -= 1;else b -= Integer.parseInt(sub.substring(0, sub.length() - 1));}} else {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.length() == 3) a += 1;else a += Integer.parseInt(sub.substring(0, sub.length() - 3));} else {if (sub.length() == 3) a -= 1;else a -= Integer.parseInt(sub.substring(0, sub.length() - 3));}}if (b * b - 4 * a * c < 0) {System.out.println("No Solution");} else {double x1 = (-b + Math.sqrt(b * b - 4 * a * c)) / (2 * a);double x2 = (-b - Math.sqrt(b * b - 4 * a * c)) / (2 * a);if (x1 > x2) {double tmp = x1; x1 = x2;x2 = tmp;}Formatter fmt= new Formatter();fmt.format("%.2f %.2f", x1, x2);System.out.println(fmt);}}}
}

C++实现:

#include <iostream>
#include <fstream>
#include <string>
#include <cmath>
#include <algorithm>
#include <iomanip>using namespace std;int main()
{string s;string sop = "+-=";size_t loc1, loc2;float a, b, c;bool bEqual, bMinus;#ifndef ONLINE_JUDGEifstream cin("d:\\OJ\\uva_in.txt");
#endif // ONLINE_JUDGEwhile (cin >> s) {loc1 = -1;loc2 = 0;bEqual = false;bMinus = false;a = b = c = 0;while (loc2 < s.length()) {loc2 = s.find_first_of(sop, loc1 + 1);if (loc2 == string::npos) {loc2 = s.length();}string sub = s.substr(loc1 + 1, loc2 - loc1 - 1);//cout << "sub:" << sub << endl;if (sub.find('x') == string::npos) {if ((!bEqual && !bMinus) || (bEqual && bMinus))c += atoi(sub.c_str());elsec -= atoi(sub.c_str());} else if (sub.find('^') == string::npos) {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.length() == 1) {b += 1;} else {b += atoi(sub.c_str());}} else {if (sub.length() == 1) {b -= 1;} else {b -= atoi(sub.c_str());}}} else {if ((!bEqual && !bMinus) || (bEqual && bMinus)) {if (sub.length() == 3) {a += 1;} else {a += atoi(sub.c_str());}} else {if (sub.length() == 3) {a -= 1;} else {a -= atoi(sub.c_str());}}}loc1 = loc2;if (loc2 < s.length() && s.at(loc2) == '-') bMinus = true;else if (loc2 < s.length() && s.at(loc2) == '=') bEqual = true;else bMinus = false;//cout << "a:" << a << " b:" << b << " c:" << c << endl;}if (b * b - 4 * a * c < 0) {cout << "No Solution" << endl;} else {float result1 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a);float result2 = (-b - sqrt(b * b - 4 * a * c)) / (2 * a);if (result1 > result2) swap(result1, result2);cout.precision(2);cout.setf(ios::fixed);cout << result1 << " " << result2 << endl;}}return 0;
}

题目1103:二次方程计算器相关推荐

  1. 九度OJ 1103:二次方程计算器 (解方程)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:2804 解决:633 题目描述: 设计一个二次方程计算器 输入: 每个案例是关于x的一个二次方程表达式,为了简单,每个系数都是整数形式. 输 ...

  2. 二次方程计算器-字符串处理

    来源:牛客网->在线测评->计算机历年考研复试上机题 参考:https://blog.csdn.net/qq_30339595/article/details/79398506 题目描述 ...

  3. 牛客-计算机考研复试上机题-二次方程计算器

    这道题其实考察的是对字符串的处理. 显然我们要将方程化为ax2+bx+c=0的形式,因此可以找出式子中所有x2.x的系数以及c.但是题目的输入是一个完整的字符串,如果暴力遍历的话会很麻烦,于是就想到把 ...

  4. 【小白练习】一元二次方程计算器

    基于math函数库制作(实际上不使用函数库也不影响实现) import math# 赋值区 a= b= c=# 计算区 delta = b ** 2 - 4 * a * c (-b + math.sq ...

  5. 2011年上海交通大学计算机研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1103 二次方程计算器 #include<iostream> #include<cstdio> #in ...

  6. gre可以用计算机,GRE数学能用计算器吗

    GRE数学能用计算器吗?GRE数学考试中,考生是否允许使用计算器呢?使用计算器的过程中,有什么注意事项?这些都是GRE考生需要提前了解的内容.小编为大家整理了详细的内容,供大家参考! 由于GRE数学考 ...

  7. 简单计算器 (关于栈的一种应用)

    题目:简单计算器 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值. Input 测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一 ...

  8. 计算器软件C语言课程设计实验报告,c简单计算器实验报告_相关文章专题_写写帮文库...

    时间:2019-05-15 12:55:15 作者:admin 计算器实验报告 班级: 07计本(1)班 姓名: 王林 学号: 20706031047 指导老师: 韩静 一. 需求分析 (1)制作一个 ...

  9. 基于C语言、线性表的 二、八、十、十六进制转换 及 加运算、左右移位运算、乘法运算 的科学计算器设计

    源代码见资源:https://download.csdn.net/download/weixin_44410704/19840894 一.需求分析 1.1 设计题目 题目:科学计算器 用C语言实现十进 ...

最新文章

  1. python在哪里学比较好-Python哪里学习好?老男孩python入门
  2. oracle安装参数,Oracle安装内核参数设置
  3. 安卓四大组件之Activity
  4. 打破软件自动化测试的格局
  5. 计算机模拟 博弈 善意,从两本奇书看人与人的重复博弈
  6. 基于Accord.Audio和百度语言识别
  7. 16muduo_base库源码分析(七)
  8. Microsoft Excel常用操作
  9. 地表反照率数据、地表净辐射通量、太阳辐射数据、地表温度、地表显热通量、NDVI、NPP、土地利用数据
  10. linux cpu bench,Linux下一种简单易行的cpu benchmark方法
  11. gbd调试器及静态库/动态库的制作
  12. BlueHost独立服务器受站长欢迎的原因
  13. NER任务的精确评估指标P、R、F1
  14. 二叉树排序和绘制技巧
  15. docker日常操作
  16. 舞动DB2图书签售火爆 部分作者现身中关村图书大厦
  17. 游戏设计的作品集到底该怎么做?
  18. lombok注解的使用
  19. 视频抓图(有硬编码解码)一获得解码后数据
  20. Uni-app 课程详情页 获取课程详情 + 收藏 + 加入购物车

热门文章

  1. Wordpress会员插件 wp_members 最新简体中文语言包
  2. python小课骗局-Python小课怎么样啊?
  3. python读取excel画散点图-matplotlib两种画散点图的方式
  4. 为什么叫python编程-月薪上万的Python编程,为什么你还没入门就放弃了?
  5. 软件测试用python一般用来做什么-python软件测试
  6. 怎么学python-结合学习经历,谈一谈如何学习Python
  7. python编程主要干嘛的-让孩子学了Python编程有什么用
  8. python使用什么注释语句和运算-怎么使用python注释语句
  9. python可以做什么工作好-学完Python我们可以做什么工作?
  10. python恶搞-如何用python和vbs恶搞基友?