UVA 389 Basically Speaking
来源:互联网 发布:js判断身份证号18位 编辑:程序博客网 时间:2024/04/28 18:40
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<cstdio>
#include<iostream>
#include<math.h>
using namespacestd;
int main(){
char a[7];
// for(int i = 0; i < 7; i++) a[i] = 1;
int b,c;
b = c = 0;
int sum =0;
while(scanf("%s %d %d",a,&b,&c)!=EOF){
/* int i = 0;
while(a[i] == '0') ++i;
int t = i;
int length = strlen(a);
for(int j = t ; j < length; ++j ) {
int zhishu;
if(a[j] >= '0' && a[j] <= '9'){
zhishu = a[j] - '0';
}else zhishu = a[j] - '0' - 7;
int l;
if(t != 0) l = pow(b,length - j - t);
else l = pow(b,length - j - t - 1);
sum += zhishu*l;
*/
sum = strtol(a,NULL, b);
if(sum ==0)cout <<" 0" <<endl ;
else{
//已经全转成了十进制
char m[7] = {0};
for(int i =0; i !=7; ++i) {
int temp = sum % c;
if(temp >=10){
char n;
n = temp + 55;
m[6-i] = n;
}
else m[6-i] = temp +48 ;
sum /= c;
}//转换成对应进制
if(sum !=0)cout <<" ERROR" <<endl;
else {
int i , j;
i = j = 0;
while(m[j]=='0') {++j;cout <<" ";}
for(int i = j; i <7; i++){
cout << m[i];
}
cout <<endl;
}
}
}
return0;
}
1.遇到任意进制的字符串格式转10进制,可以直接使用strtol(字符串,null,原进制)
2.多次wa因为没有考虑到00000000 的现实情况,应该把它也作为极端情况之一
3.十进制转任意进制关键 先取余数 再除 如果大于10 就用 temp - 10 + 'A'
4.可以通过这个实现打印的字符长度为7的效果,
printf("%7s\n","ERROR");
printf("%7s\n","0");
printf("%7s\n",output);
- UVa 389 - Basically Speaking
- UVA 389 Basically Speaking
- Basically Speaking
- Basically Speaking
- POJ 1546 Basically Speaking
- UVa389 - Basically Speaking
- zoj 1334 Basically Speaking
- zoj 1334 Basically Speaking
- ZOJ 1334 Basically Speaking
- ZOJ 1334 Basically Speaking
- zoj 1334 Basically Speaking
- HDU1335:Basically Speaking
- 【HDOJ】1335 -> Basically Speaking
- POJ1546 Basically Speaking
- ZOJ Basically Speaking
- hdu 1335 Basically Speaking
- POJ 1546 Basically Speaking
- HDU 1335 Basically Speaking
- 解决报错 Could not calculate build plan: Plugin org.apache.maven.plugins:maven-resources-plugin:2.6
- 基于Blod的ajax进度条下载实现
- Exception in thread "http-bio-8080-exec-13" java.lang.OutOfMemoryError: PermGen space
- 虚似内存
- 图论之并查集
- UVA 389 Basically Speaking
- linux下使用phpstudy安装lighttpd+mysql+php5.5+laravel
- 常见的分类与聚类算法及其比较
- 解决IDEA MAVEN使用Reimport时 项目的language level 全部变成1.6
- Nodejs 制作命令行工具
- 用户
- Android Studio中如何使用Git和Github来管理项目
- 【Unity优化】我所理解的IL指令
- Intellij Idea 快捷键设置大全