HDU 1335 Basically Speaking
来源:互联网 发布:java 深度遍历 编辑:程序博客网 时间:2024/06/06 14:25
http://acm.hdu.edu.cn/showproblem.php?pid=1335
Basically Speaking
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K(Java/Others)
Total Submission(s): 962 Accepted Submission(s):437
Problem Description
The Really Neato Calculator Company,Inc. has recently hired your team to help design their Super NeatoModel I calculator. As a computer scientist you suggested to thecompany that it would be neato if this new calculator could convertamong number bases. The company thought this was a stupendous ideaand has asked your team to come up with the prototype program fordoing base conversion. The project manager of the Super Neato ModelI calculator has informed you that the calculator will have thefollowing neato features:
It will have a 7-digit display.
Its buttons will include the capital letters A through F inaddition to the digits 0 through 9.
It will support bases 2 through 16.
It will have a 7-digit display.
Its buttons will include the capital letters A through F inaddition to the digits 0 through 9.
It will support bases 2 through 16.
Input
The input for your prototype programwill consist of one base conversion per line. There will be threenumbers per line. The first number will be the number in the baseyou are converting from. The second number is the base you areconverting from. The third number is the base you are convertingto. There will be one or more blanks surrounding (on either sideof) the numbers. There are several lines of input and your programshould continue to read until the end of file isreached.
Output
The output will only be the convertednumber as it would appear on the display of the calculator. Thenumber should be right justified in the 7-digit display. If thenumber is to large to appear on the display, then print "ERROR''(without the quotes) right justified in the display.
Sample Input
1111000 210 1111000 2 16 2102101 3 10 2102101 3 15 12312 4 2 1A 15 2 123456710 16 ABCD 16 15
Sample Output
120 78 17657CA ERROR 11001 12D687 D071
Source
Mid-Central USA 1995
Recommend
Ignatius.L
题目分析:前面是一个7位的a进制数,转换成后面的进制输出,如果超过7位输出ERROR
分析:进制转换。
代码如下:
#include<iostream>
#include<string>
#include<math.h>
using namespace std;
int fun1(int,int); //将一个10进制的数转换成要求的进制
intfun2(int); //将一个已知进制的数转换成10进制
chars[8]; //保存输入的数据
intx[8]; //保存输出的数据
int main()
{
int m,n,len;
int t,l,i;
while(cin>>s)
{
len=strlen(s);
cin>>m>>n;
t=fun2(m);
//printf("s=%s m=%d n=%dt=%d\n",s,m,n,t);
if(fun1(t,n)==-1)cout<<" ERROR"<<endl;
else
{
l=fun1(t,n);
for(i=7-l;i>0;i--)
cout<<'';
for(i=l-1;i>=0;i--)
{
if(x[i]>=10)
printf("%c",x[i]-10+'A'); //这个地方还是用printf好一点。。
else
printf("%d",x[i]);
}
cout<<'\n';
}
memset(s,'\0',sizeof(s));
memset(x,'\0',sizeof(x));
}
return 0;
}
int fun1(int t,int m)
{
int i=0;
while(t)
{
x[i++]=t%m;
t=t/m;
if(i==8) return -1;
}
return i;
}
int fun2(int m)
{
int len=strlen(s);
int i,t=0;
for(i=len-1;i>=0;i--)
{
if(s[i]>='A')
s[i]=s[i]-'A'+10;
else
s[i]=s[i]-'0';
t+=s[i]*pow(m,len-1-i);
}
return t;
}
#include<iostream>
#include<string>
#include<math.h>
using namespace std;
int fun1(int,int);
intfun2(int);
chars[8];
intx[8];
int main()
{
}
int fun1(int t,int m)
{
}
int fun2(int m)
{
}
阅读全文
0 0
- HDU 1335 Basically Speaking
- hdu 1335 Basically Speaking
- HDU 1335 Basically Speaking
- HDU 1335 Basically Speaking
- HDU-1335(basically speaking)
- hdu-oj 1335 Basically Speaking
- HDU 1335 || ZOJ 1334 Basically Speaking
- 杭电 HDU ACM 1335 Basically Speaking
- HDU 1242 Rescue
- 【HDOJ】1335 -> Basically Speaking
- HDOJ 1335 Basically Speaking
- HDOJ 1335 Basically Speaking
- ZZULI_SummerPractice(3) HDU 1…
- HDU 1579 Function Run Fun
- HDU 1405 The Last Practice
- HDU 2050 折线分割平面
- hdu 1000 A + B Problem
- HDU 1075 What Are You Talking …
- HDU 1405 The Last Practice
- HDU 1397 Goldbach's Conjecture
- HDU 1391 Number Steps
- 比较两个String类型日期大小
- HDU 1339 A Simple Task
- HDU 1335 Basically Speaking
- HDU 1334 Perfect Cubes
- 字符常量
- HDU 1326 Box of Bricks
- Cocos2dx3.10 VS2013添加 Json_Cpp第三方Json解析类库详细步骤
- 关于js函数中的 return
- centos 下配置ftp服务后 xftp工具无法上传与下载
- HDU 1323 Perfection
- 文件上传插件web uploader