6.题目链接:杨辉三角形
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,yh[34][34],i,j;
cin>>n;
for(i=0;i<n;i++)
{
yh[i][0]=1;
yh[i][i]=1;
for(j=1;j<i;j++)
{
yh[i][j]=yh[i-1][j-1]+yh[i-1][j];
}
}
for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
{
cout<<yh[i][j];
if(j<i)
cout<<' ';
}
cout<<endl;
}
return 0;
}
7.题目链接:特殊的数字
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int i,sum;
int a,b,c;//每一位数字
for(i=100;i<1000;i++)
{
a=i/100;//百位数
b=(i%100)/10;//十位数
c=i-a*100-b*10;
sum=a*a*a+b*b*b+c*c*c;
if(sum==i)//一个数的各位数字之和等于n且是回文数,则输出
cout<<i<<endl;
}
return 0;
}
8.题目链接:回文数
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c,d;
for(int i=1000;i<10000;i++)
{
a=i/1000;
b=(i%1000)/100;
c=(i%100)/10;
d=i-a*1000-b*100-c*10;
if(a==d&&b==c)
cout<<i<<endl;
}
return 0;
}
9.题目链接:特殊回文数
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int i,n,num;
int sum,reversal;//每位数字之和 回文数
while(scanf("%d",&n)!=EOF)
{
for(i=10000;i<1000000;i++)
{
num=i;
sum=0,reversal=0;
while(num>0)
{
reversal=reversal*10+num%10;//求解回文数
sum+=(num%10); //数位分离,从低位开始累加
num/=10;
}
if(sum==n&&reversal==i)//一个数的各位数字之和等于n且是回文数,则输出
cout<<i<<endl;
}
}
return 0;
}
10.题目链接:十进制转十六进制
代码:
#include<bits/stdc++.h>
#define ll long long int
using namespace std;
char init(int n)
{
if (n >= 0&&n <= 9)
return n + '0';
if (n >= 10&&n <= 15)
return n - 10 + 'A';
}
string change(ll n)
{
string temp = "";
while (n >0)
{
temp += init(n % 16);
n /= 16;
}
int len = temp.size();
for (int i = 0; i < len / 2; ++i)
{
swap(temp[i], temp[len - i - 1]);
}
return temp;
}
int main()
{
ll x;
while (cin >> x)
{
if (x == 0)
cout << 0 << endl;
else
cout <<change(x)<< endl;
}
return 0;
}