输入一个大于0的大整数N,长度不超过100位,要求输出其除以13得到的商和余数。
作者:互联网
题目:输入一个大于0的大整数N,长度不超过100位,要求输出其除以13得到的商和余数。
输入
一个大于0的大整数,长度不超过100位。
输出
两行,分别为整数除法得到的商和余数。
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
int t,len,shang[300],yu=0,b[150]={0}; //yu表示余数,shang[300]表示商
char a[150];
gets(a+1);
len=strlen(a+1);
//cout<<len<<"!!!"<<endl;//a的值
for(int i=1;i<=len;i++)
{
b[i]=a[i]-48;//char转int
b[i]=b[i]+yu*10;
yu=b[i]%13; //得到余数
//out<<i<<":"<<yu<<"\t";
shang[i]=b[i]/13; //得到商
//cout<<i<<":"<<shang[i]<<"\t" ;
}
for(int j=1;j<=len;j++) //用于删除前导0
{
if(shang[j]!=0)
{
t=j;
// cout<<t<<"!!";
break;
}
}
//cout<<len<<"!!!";
for(t;t<=len;t++) //此时t=j
{
cout<<shang[t];
}
cout<<endl;
cout << yu<< endl;
return 0;
}
标签:13,cout,int,shang,余数,100,include,yu 来源: https://blog.csdn.net/weixin_44807132/article/details/111625365