NYOJ--244--16进制的简单运算(C++控制输入输出)
16进制的简单运算
时间限制:1000 ms | 内存限制:65535 KB
难度:1
- 描述
- 现在给你一个16进制的加减法的表达式,要求用8进制输出表达式的结果。
- 输入
- 第一行输入一个正整数T(0<T<100000)
接下来有T行,每行输入一个字符串s(长度小于15)字符串中有两个数和一个加号或者一个减号,且表达式合法并且所有运算的数都小于31位 - 输出
- 每个表达式输出占一行,输出表达式8进制的结果。
- 样例输入
-
3 29+4823 18be+6784 4ae1-3d6c
- 样例输出
-
44114 100102 6565
1 /* 2 Name: NYOJ--244--16进制的简单运算 3 Copyright: ©2017 日天大帝 4 Author: 日天大帝 5 Date: 01/05/17 16:18 6 Description: 看过题,以为很复杂,但是跟这个难度不匹配,竟然没有想到,,, 7 顺便学了C++输入输出的格式控制 8 */ 9 #include<iostream> 10 #include<iomanip> 11 #include<cstdio> 12 using namespace std; 13 int main(){ 14 ios::sync_with_stdio(false); 15 int t;cin>>t; 16 while(t--) { 17 int x,y; 18 char op; 19 cin>>hex>>x>>op>>y; 20 if(op == '+')cout<<setbase(8)<<(x+y)<<endl; 21 else cout<<setbase(8)<<(x-y)<<endl; 22 } 23 return 0; 24 }