6. hexadecimal conversion

1.A1019

#include<stdio.h> 
bool judge(int z[],int num){
	for(int i = 0;i<=num/2;i++){
		if(z[i]!=z[num-i-1])
			return false;
		return true;
	}
}
int main(){
	int n,b,z[40],num = 0;
	scanf("%d%d",&n,&b);
	do{
		z[num++] = n % b;
		n /= b;
	}while(n!=0);
	bool flag = judge(z,num);
	if(flag == true)	printf("Yes\n");
	else	printf("No\n");
	for(int i = num -1;i>=0;i--){
		printf("%d",z[i]);
		if(i!=0)	printf(" ");
	}
	return 0;
}

2.A1027

#include<stdio.h> 
char radix[13] = {'0','1','2','3','4','5','6','7','8','9','A','B','C'};
int main(){
	int r,g,b;
	scanf("%d%d%d",&r,&g,&b);
	printf("#");
	printf("%c%c",radix[r/13],radix[r%13]); 
	printf("%c%c",radix[g/13],radix[g%13]); 
	printf("%c%c",radix[b/13],radix[b%13]); 
	return 0;
}

3.A1058

#include<stdio.h> 
int main(){
	int a[3],b[3],c[3];
	scanf("%d.%d.%d %d.%d.%d",&a[0],&a[1],&a[2],&b[0],&b[1],&b[2]);
	int carry = 0;
	c[2] = (a[2] + b[2])%29;
	carry = (a[2] + b[2])/29;
	c[1] = (a[1] + b[1] + carry)%17;
	carry = (a[1] + b[1] + carry)/17;
	c[0] = a[0] + b[0] + carry; 
	printf("%d.%d.%d",c[0],c[1],c[2]);
	return 0;
}

4.B1022

#include<stdio.h> 
int main(){
	int a,b,d;
	scanf("%d%d%d",&a,&b,&d);
	int sum = a+b;
	int ans[31],num = 0;
	do{
		ans[num++] = sum%d;
		sum /= d;
	}while(sum!=0);
	for(int i = num-1;i>=0;i--)
		printf("%d",ans[i]);
	return 0;
}

5.B1037

#include<stdio.h>
const int Galleon = 17*29;
const int Sickle = 29; 
int main(){
	int a1,b1,c1;
	int a2,b2,c2;
	scanf("%d.%d.%d %d.%d.%d",&a1,&b1,&c1,&a2,&b2,&c2);
	int price = a1*Galleon + b1*Sickle + c1;
	int money = a2*Galleon + b2*Sickle + c2;
	int change = money - price;
	if(change<0){
		printf("-");
		change = -change;
	}
	printf("%d.%d.%d\n",change/Galleon,change%Galleon/Sickle,change%Sickle);
	return 0;
}
Published 26 original articles · won praise 3 · Views 189

Guess you like

Origin blog.csdn.net/qq_41898248/article/details/104051674