TOJ1302: 简单计算器 && TOJ 4873: 表达式求值&&TOJ3231: 表达式求值
这些都是应用Python的eval函数的一些题目!
TOJ1302传送门:http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=1302
TOJ4873传送门:http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=4873
TOJ3231传送门:http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=3231
TOJ1302
描述
读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值。
输入
测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔。没有非法表达式。当一行中只有0时输入结束,相应的结果不要输出。
输出
对每个测试用例输出1行,即该表达式的值,精确到小数点后2位。
样例输入
1 + 2
4 + 2 * 5 - 7 / 11
0
样例输出
3.00
13.36
思路:Python大法好。直接拿eval函数瞎搞就行!
while True:
n = input()
m = eval(n)
if (int(m) == 0 and len(n) == 1):
break
print('%.2f'%float(m))
TOJ4873
描述
给定一个只包含加法和乘的算术表达式,请你编程计算表达式的值。
输入
输入仅有一行,为需要你计算的表达式,表达式中只包含数字、加法运算符“ +”和乘法运算符“ *”,且没有括号,所有参与运算的数字均为0到2^31 -1之间的整数。输入数据保证这一行只有 0~ 9、+、* 这 12 种字符。
数据范围
对于 30% 的数据,0≤表达式中加法运算符和乘法运算符的总数≤100;
对于 80% 的数据,0≤表达式中加法运算符和乘法运算符的总数≤1000;
对于 100% 的数据,0≤表达式中加法运算符和乘法运算符的总数≤100000。
输出
输出只有一行,包含一个整数,表示这个表达式的值。注意:当答案长度多于4位时,请只输出最后4位,前导0不输出。
样例输入
1+1*3+4
样例输出
8
思路:一样是用py的eval函数求值,具体看代码!注意:当答案长度多于4位时,请只输出最后4位,前导0不输出。对于这句话,可以直接%10000。
给出的是python2的代码,真_一行解决。
print eval(raw_input())%10000
TOJ3231
描述
给一些包含加减号和小括号的表达式,求出该表达式的值。表达式中的数值均为绝对值小于 10 的整数。
输入
第一行为表达式的个数 n,以下 n 行每行有一个表达式。每个表达式的长度不超过 40 个字符。
输出
对每个表达式,输出它的值。
样例输入
3
3-(2+3)
-9+8+(2+3)-(-1+4)
0-0
样例输出
-2
1
0
思路:无
代码:
n = input()
n = int(n)
while (n > 0):
a = input()
print(eval(a))
n-=1
TOJ1302: 简单计算器 && TOJ 4873: 表达式求值&&TOJ3231: 表达式求值的更多相关文章
- hdu 1237 简单计算器 (表达式求值)【stack】
<题目链接> 题目大意: 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值. Input测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符, ...
- 前缀、中缀、后缀表达式以及简单计算器的C++实现
前缀表达式(波兰表达式).中缀表达式.后缀表达式(逆波兰表达式) 介绍 三种表达式都是四则运算的表达方式,用以四则运算表达式求值,即数学表达式的求解. 前缀表达式 前缀表达式是一种没有括号的算术表达式 ...
- 在C#开发中使用第三方组件LambdaParser、DynamicExpresso、Z.Expressions,实现动态解析/求值字符串表达式
在进行项目开发的时候,刚好需要用到对字符串表达式进行求值的处理场景,因此寻找了几个符合要求的第三方组件LambdaParser.DynamicExpresso.Z.Expressions,它们各自功能 ...
- 中缀表达式变后缀表达式、后缀表达式(逆波兰)求值(python版本)
定义: 中缀表达式: 在通常的表达式中,二元运算符总是置于与之相关的两个运算对象之间,这种表示法也称为中缀表达式 后缀表达式: 又叫逆波兰表达式 ,不包含括号,运算符放在两个运算对象的后面,所有的计算 ...
- 写一函数,用来求表达式1+2+3+.....+n的值,并编写主函数
Description 写一函数,用来求表达式1+2+3+.....+n的值,并编写主函数.n由键盘输入. Input 输入一个整数 Output 输出表达式的值 Sample Input 5 Sam ...
- [Java]手动构建表达式二叉树,求值,求后序表达式
Inlet类,这颗二叉树是”人力运维“的: package com.hy; public class Inlet { public static void main(String[] args) th ...
- [Java]算术表达式求值之二(中序表达式转后序表达式方案,支持小数)
Inlet类,入口类,这个类的主要用途是验证用户输入的算术表达式: package com.hy; import java.io.BufferedReader; import java.io.IOEx ...
- [Java]算术表达式求值之一(中序表达式转后序表达式方案)
第二版请见:https://www.cnblogs.com/xiandedanteng/p/11451359.html 入口类,这个类的主要用途是粗筛用户输入的算术表达式: package com.h ...
- html标签内部简单加js 一维数组求最大值 最小值两个值位置和数字金字塔图形
html标签内部,简单加js <a href=""></a><!DOCTYPE html PUBLIC "-//W3C//DTD XHTM ...
随机推荐
- 【ASP.NET 插件】Plupload多格式多文件上传实现
由于工作需求,要实现一个多格式多文件的上传功能,而且需要.NET版本的,嘿嘿,终于还是实现了,网上搜了很久,找到一篇不错的博文:WEB版一次选择多个文件进行批量上传(Plupload)的解决方案,在此 ...
- Linux:简单的并发服务器实现
我前两天实现了一个简单的服务器和一个对应的客户端,也简单的解决了一些错误检查和常用的函数的封装,但是那个服务器的一次只能连接一个客户端,鸡肋,太鸡肋了,今天我来实现可以连接多个客户端的服务器实例:多进 ...
- 2.ECS内 经典网络与VPC网络的区别
对应阿里云学习视频地址:https://help.aliyun.com/video_detail/67686.html?spm=5176.208355.1107604.1.10d82ca1J91Ckt ...
- img标签在div里上下居中
方法一:图片尺寸未知,IE8-不支持 CSS部分: <style> .content{ width:500px; height:500px; border:1px solid black; ...
- ReactiveX 学习笔记(13)基础类型
Key Types and Life Management 本文主题是 Rx 中的基础类型 Subject 类及其生命周期的管理. 公共代码 RxNET private static void Wri ...
- hadoop /etc/Hadoop/slaves文件解析【转】
slaves文件里面记录的是集群里所有DataNode的主机名,到底它是怎么作用的呢?slaves文件只作用在NameNode上面,比如我在slaves里面配置了 host1 host2 host3 ...
- 吴裕雄 python oracle子查询的用法(3)
import cx_Oracle conn = cx_Oracle.connect("scott/admin@localhost:1521/orcl")cursor = conn. ...
- zabbix 分布式zabbix_proxy
Zabbix是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用Proxy能大大的降低Zabbix Server的压力,Zabbix Proxy可以运行在独立的服务器上 1)下载zab ...
- Generative Adversarial Networks,gan论文的畅想
前天看完Generative Adversarial Networks的论文,不知道有什么用处,总想着机器生成的数据会有机器的局限性,所以百度看了一些别人 的看法和观点,可能我是机器学习小白吧,看完之 ...
- intelliJ IDEA 破解,亲测有效
https://blog.csdn.net/shengshengshiwo/article/details/79599761