自定义计算更新了!由于上次的自定义计算被别人盗版了,所以这次决定做一点上传一点。
5-20第一次更新:今天只更新了高精度(没有除法):
#include <bits/stdc++.h>
#include<windows.h>
using namespace std;
string ss1="好消息,好消息!<自定义计算>更新了!!!";
string ss2="<自定义计算2.0>将会有以下更新:";
string ss3="[1]:1.0系统中复杂的if将由函数代替";
string ss4="[2]:2.0更新将出现多种算法!!!";
string ss5="[3]:吐槽一下,希望这次不要再有人盗版我的代码了~";
string ss6="好了,话不多说,看一看这次<自定义计算>全家桶将加入那些算法吧~";
string ss7="|| ————请选择项目———— ||";
string ss8="|| [1]<高精度> ||";
string ss1_1="|| [1]<高精度>x+y ||";
string ss1_2="|| [2]<高精度>x-y ||";
string ss1_3="|| [3]<高精度>x*y ||";
void gj1(){//高精度加法
int a[100005];
int b[100005];
int c[100005];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
string s1,s2;
cin>>s1>>s2;
a[0]=s1.size();
b[0]=s2.size();
for(int i=1;i<=s1.size();i++)a[i]=int(s1[a[0]-i]-'0');
for(int i=1;i<=s2.size();i++)b[i]=int(s2[b[0]-i]-'0');
c[0]=max(a[0],b[0]);
int jw=0;
for(int i=1;i<=c[0];i++){
c[i]=a[i]+b[i]+jw;
jw=c[i]/10;
c[i]%=10;
}
if(jw==1){
c[0]++;
c[c[0]]=jw;
}
for(int i=c[0];i>=1;i--){
cout<<c[i];
}
}
void gj2(){//高精度减法
string sd,se,sa;
int a[100001]{0},b[100001]{0},c[100001]{0},mc,me,mz,n,mo=0;
cin>>sd>>se;
mc=sd.size();
me=se.size();
if(mc<me||mc==me&&sd<se){sa=sd;sd=se;se=sa;n=mc;mc=me;me=n;mo=-1;}
for(int i=1;i<=mc;i++) a[i]=sd[mc-i]-'0';
for(int i=1;i<=me;i++) b[i]=se[me-i]-'0';
int i=1,o=0;
while(i<=mc||i<=me)
{
if(a[i]<b[i]){a[i+1]--;a[i]+=10;}
c[i]=a[i]-b[i];
i++;
}
mz=i;while(c[mz]==0&&mz>1)mz--;
if(mo==-1) cout<<"-";
for(int i=mz;i>=1;i--) cout<<c[i];
}
void gj3(){//高精度乘法
string sa="",sb="",st="";
int la=0,lb=0,lc=0,tla=0,tlb=0,t=0;
bool isuselesszero=true;
vector <int> a,b,c;
cin>>sa>>sb;
if(sa[0]=='0' || sb[0]=='0') {
cout<<0;
return ;
}
la=sa.length(); lb=sb.length();
if(la>lb){
swap(sa,sb);
la=sa.length();
lb=sb.length();
}
lc=max(la,lb);
tla=la;
tlb=lb;
reverse(sa.begin(),sa.end());
reverse(sb.begin(),sb.end());
while(tla<lc){
sa+='0';
tla=sa.length();
}
while(tlb<lc){
sb+='0';
tlb=sb.length();
}
for(int i=0;i<1000000;i++) c.push_back(0);
for(int i=0;i<lc;i++){
a.push_back((sa[i]-'0'));
b.push_back((sb[i]-'0'));
}
for(int i=0;i<lb;i++){
for(int j=0;j<la;j++){
c[i+j]+=a[j]*b[i];
if(c[i+j]>=10){
c[i+j+1]+=c[i+j]/10;
c[i+j]%=10;
}
}
}
reverse(c.begin(),c.end());
for(int i=0;i<1000000;i++){
if(isuselesszero&&c[i]==0) continue;
if(c[i]!=0) isuselesszero=false;
if(c[i]<10) cout<<c[i];
else{
c[i-1]=c[i]/10;
c[i]%=10;
cout<<c[i];
}
}
return ;
}
int main(){
for(int i=0;i<5;i++){
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
}
system("cls");
int zh,mm;//账号,密码
cout << endl << endl << endl << endl ;
cout<<" -------自定义计算 2.0-------"<<endl<<endl;
cout<<" Hello~ :) 欢迎来到全新的自定义计算2.0----5/20版"<<endl;
cout<<" 请输入账号:";cin>>zh;
cout<<" 请输入密码:";cin>>mm;
int qw;
bool qe=1;
if(zh==123456&&mm==456789)qw=1;
else qw=2;
while(qw){
system("cls");
if(qe==1){
for(int i=0;i<ss1.size();i++){
cout<<ss1[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss2.size();i++){
cout<<ss2[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss3.size();i++){
cout<<ss3[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss4.size();i++){
cout<<ss4[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss5.size();i++){
cout<<ss5[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss6.size();i++){
cout<<ss6[i];
Sleep(50);
}
cout<<endl;
qe=0;
}
cout<<ss7<<endl;
cout<<ss8<<endl;
int xuanxiang;//选项------------------------------------------------------------
cout<<"请选择功能:";
cin>>xuanxiang;
if(xuanxiang==1){
system("cls");
cout<<ss7<<endl;
cout<<ss1_1<<endl;
cout<<ss1_2<<endl;
cout<<ss1_3<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
gj1();
Sleep(500);
}
else if(xuanxiang1==2){
system("cls");
gj2();
Sleep(500);
}
else if(xuanxiang1==3){
system("cls");
gj3();
Sleep(500);
}
}
cout<<endl;
cout<<"是否退出?"<<endl;
cout<<"[1]:继续"<<endl;
cout<<"[0]:退出"<<endl;
cout<<"你的选择:";
cin>>qw;
}
return 0;
}
禁止盗版,维护版权!
有什么问题直接提出来
许金夫在2020-05-20 21:51:11追加了内容
注:如果我以后看到有人恶意复制代码,那我以后就不更了~
许金夫在2020-05-20 22:21:25追加了内容
5-20极限二连更:
更新了递推的一些简单的计算
----------------------------------
刚刚有个同学用QQ告诉我我的代码可能会被修改后拿去刷分
所以以后的代码片段只要有类似的题目,我会保证片段上传后100%为0分WA
----------------------------------
好了,下面看代码:
#include <bits/stdc++.h>
#include<windows.h>
using namespace std;
string ss1="好消息,好消息!<自定义计算>更新了!!!";
string ss2="<自定义计算2.0>将会有以下更新:";
string ss3="[1]:1.0系统中复杂的if将由函数代替";
string ss4="[2]:2.0更新将出现多种算法!!!";
string ss5="[3]:吐槽一下,希望这次不要再有人盗版我的代码了~";
string ss6="好了,话不多说,看一看这次<自定义计算>全家桶将加入那些算法吧~";
string ss7="|| ————请选择项目———— ||";
string ss8="|| [1]<高精度> ||";
string ss9="|| [2]<递推> ||";
string ss1_1="|| [1]<高精度>x+y ||";
string ss1_2="|| [2]<高精度>x-y ||";
string ss1_3="|| [3]<高精度>x*y ||";
string ss2_1="|| [1]<递推>杨辉三角 ||";
string ss2_2="|| [2]<递推>斐波那契 ||";
void gj1(){//高精度加法
int a[100005];
int b[100005];
int c[100005];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
string s1,s2;
cin>>s1>>s2;
a[0]=s1.size();
b[0]=s2.size();
for(int i=1;i<=s1.size();i++)a[i]=int(s1[a[0]-i]-'0');
for(int i=1;i<=s2.size();i++)b[i]=int(s2[b[0]-i]-'0');
c[0]=max(a[0],b[0]);
int jw=0;
for(int i=1;i<=c[0];i++){
c[i]=a[i]+b[i]+jw;
jw=c[i]/10;
c[i]%=10;
}
if(jw==1){
c[0]++;
c[c[0]]=jw;
}
for(int i=c[0];i>=1;i--){
cout<<c[i];
}
}
void gj2(){//高精度减法
string sd,se,sa;
int a[100001]{0},b[100001]{0},c[100001]{0},mc,me,mz,n,mo=0;
cin>>sd>>se;
mc=sd.size();
me=se.size();
if(mc<me||mc==me&&sd<se){sa=sd;sd=se;se=sa;n=mc;mc=me;me=n;mo=-1;}
for(int i=1;i<=mc;i++) a[i]=sd[mc-i]-'0';
for(int i=1;i<=me;i++) b[i]=se[me-i]-'0';
int i=1,o=0;
while(i<=mc||i<=me)
{
if(a[i]<b[i]){a[i+1]--;a[i]+=10;}
c[i]=a[i]-b[i];
i++;
}
mz=i;while(c[mz]==0&&mz>1)mz--;
if(mo==-1) cout<<"-";
for(int i=mz;i>=1;i--) cout<<c[i];
}
void gj3(){//高精度乘法
string sa="",sb="",st="";
int la=0,lb=0,lc=0,tla=0,tlb=0,t=0;
bool isuselesszero=true;
vector <int> a,b,c;
cin>>sa>>sb;
if(sa[0]=='0' || sb[0]=='0') {
cout<<0;
return ;
}
la=sa.length(); lb=sb.length();
if(la>lb){
swap(sa,sb);
la=sa.length();
lb=sb.length();
}
lc=max(la,lb);
tla=la;
tlb=lb;
reverse(sa.begin(),sa.end());
reverse(sb.begin(),sb.end());
while(tla<lc){
sa+='0';
tla=sa.length();
}
while(tlb<lc){
sb+='0';
tlb=sb.length();
}
for(int i=0;i<1000000;i++) c.push_back(0);
for(int i=0;i<lc;i++){
a.push_back((sa[i]-'0'));
b.push_back((sb[i]-'0'));
}
for(int i=0;i<lb;i++){
for(int j=0;j<la;j++){
c[i+j]+=a[j]*b[i];
if(c[i+j]>=10){
c[i+j+1]+=c[i+j]/10;
c[i+j]%=10;
}
}
}
reverse(c.begin(),c.end());
for(int i=0;i<1000000;i++){
if(isuselesszero&&c[i]==0) continue;
if(c[i]!=0) isuselesszero=false;
if(c[i]<10) cout<<c[i];
else{
c[i-1]=c[i]/10;
c[i]%=10;
cout<<c[i];
}
}
return ;
}
void dt1(){//杨辉三角
int n;
cin>>n;
const int m = 2 * n-1;
int arr[n + 1][m] = { 0 };
for (int i = 0; i < n; i++)
{
arr[i][n - i- 1] = 1;
arr[i][n + i -1] = 1;
}
for (int i = 2; i < n; i++)
{
for (int j = n - i + 1; j < n-2+i; j = j + 2)
arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j + 1];
}
int p;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n - i - 1; j++)
cout << " ";
p = 1;
for (int j = n - i - 1; p < i + 2; j = j + 2)
{
cout << setw(4) << arr[i][j] << " ";
p = p + 1;
}
cout << endl;
}
}
void dt2(){//斐波那契数列
int a[10000],b[10000];
string s1="1",s2="1";
char x[1200];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
int s,n,sum;
cin>>n;
for(int j=2;j<n;j++) {
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
a[0]=s1.size();
b[0]=s2.size();
for(int i=1;i<=a[0];i++){
a[i]=s1[a[0]-i]-'0';}
for(int i=1;i<=b[0];i++){
b[i]=s2[b[0]-i]-'0';}
sum=max(a[0],b[0]);
for(int i=1;i<=sum;i++){
a[i]+=b[i];
a[i+1]+=a[i]/10;
a[i]%=10;}
sum++;
while(!(a[sum])&&(sum>1))sum--;
s=0;
for(int i=sum;i>=1;i--)x[s++]=a[i]+'0';
s1=s2;
s2=x;
}
cout<<s2;
}
int main(){
for(int i=0;i<5;i++){
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
}
system("cls");
int zh,mm;//账号,密码
cout << endl << endl << endl << endl ;
cout<<" -------自定义计算 2.0-------"<<endl<<endl;
cout<<" Hello~ :) 欢迎来到全新的自定义计算2.0----5/20版"<<endl;
cout<<" 请输入账号:";cin>>zh;
cout<<" 请输入密码:";cin>>mm;
int qw;
bool qe=1;
if(zh==123456&&mm==456789)qw=1;
else qw=2;
while(qw){
system("cls");
if(qe==1){
for(int i=0;i<ss1.size();i++){
cout<<ss1[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss2.size();i++){
cout<<ss2[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss3.size();i++){
cout<<ss3[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss4.size();i++){
cout<<ss4[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss5.size();i++){
cout<<ss5[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss6.size();i++){
cout<<ss6[i];
Sleep(50);
}
cout<<endl;
qe=0;
}
cout<<ss7<<endl;
cout<<ss8<<endl;
cout<<ss9<<endl;
int xuanxiang;//选项------------------------------------------------------------
cout<<"请选择功能:";
cin>>xuanxiang;
if(xuanxiang==1){
system("cls");
cout<<ss7<<endl;
cout<<ss1_1<<endl;
cout<<ss1_2<<endl;
cout<<ss1_3<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
gj1();
Sleep(500);
}
else if(xuanxiang1==2){
system("cls");
gj2();
Sleep(500);
}
else if(xuanxiang1==3){
system("cls");
gj3();
Sleep(500);
}
}
if(xuanxiang==2){
system("cls");
cout<<ss7<<endl;
cout<<ss2_1<<endl;
cout<<ss2_2<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
dt1();
Sleep(500);
}
else if(xuanxiang1==2){
system("cls");
dt2();
Sleep(500);
}
}
cout<<endl;
cout<<"是否退出?"<<endl;
cout<<"[1]:继续"<<endl;
cout<<"[0]:退出"<<endl;
cout<<"你的选择:";
cin>>qw;
}
return 0;
}
还有,提意见不要再你的回答的评论下面提意见,我看不到的,要么追答@我,要么在我的问题的评论下面提意见
许金夫在2020-05-20 22:36:04追加了内容
许金夫在2020-05-20 22:46:05追加了内容
征询大家的意见:有童鞋QQ告诉我说每天两更,天天更在一个问题里,会很卡,让我隔几天就换一个问题。我觉得这里面有水经验的成分, 你们可以在我下面回答部分里投票(分开发/单独发),投票截止到第6次更新
许金夫在2020-05-21 21:49:28追加了内容
5-21更新:
首先@武建豪,你讲清楚点,什么问题;
然后是今天的更新(偷了点懒)
本次更新:
[1]:增加了细节//一个好的程序就需要好的细节...好吧编不下去了
[2]:没了~
这次你们可以不复制
#include <bits/stdc++.h>
#include<windows.h>
using namespace std;
string ss1="好消息,好消息!<自定义计算>更新了!!!";
string ss2="<自定义计算2.0>将会有以下更新:";
string ss3="[1]:1.0系统中复杂的if将由函数代替";
string ss4="[2]:2.0更新将出现多种算法!!!";
string ss5="[3]:吐槽一下,希望这次不要再有人盗版我的代码了~";
string ss6="好了,话不多说,看一看这次<自定义计算>全家桶将加入那些算法吧~";
string ss7="|| ————请选择项目———— ||";
string ss8="|| [1]<高精度> ||";
string ss9="|| [2]<递推> ||";
string ss1_1="|| [1]<高精度>x+y ||";
string ss1_2="|| [2]<高精度>x-y ||";
string ss1_3="|| [3]<高精度>x*y ||";
string ss2_1="|| [1]<递推>杨辉三角 ||";
string ss2_2="|| [2]<递推>斐波那契 ||";
void gj1(){//高精度加法
int a[100005];
int b[100005];
int c[100005];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
string s1,s2;
cout<<"加数x:";
cin>>s1;
cout<<"加数y:";
cin>>s2;
a[0]=s1.size();
b[0]=s2.size();
for(int i=1;i<=s1.size();i++)a[i]=int(s1[a[0]-i]-'0');
for(int i=1;i<=s2.size();i++)b[i]=int(s2[b[0]-i]-'0');
c[0]=max(a[0],b[0]);
int jw=0;
for(int i=1;i<=c[0];i++){
c[i]=a[i]+b[i]+jw;
jw=c[i]/10;
c[i]%=10;
}
if(jw==1){
c[0]++;
c[c[0]]=jw;
}
cout<<"x+y=";
for(int i=c[0];i>=1;i--){
cout<<c[i];
}
}
void gj2(){//高精度减法
string sd,se,sa;
int a[100001]{0},b[100001]{0},c[100001]{0},mc,me,mz,n,mo=0;
cout<<"减数x:";
cin>>sd;
cout<<"减数y:";
cin>>se;
mc=sd.size();
me=se.size();
if(mc<me||mc==me&&sd<se){sa=sd;sd=se;se=sa;n=mc;mc=me;me=n;mo=-1;}
for(int i=1;i<=mc;i++) a[i]=sd[mc-i]-'0';
for(int i=1;i<=me;i++) b[i]=se[me-i]-'0';
int i=1,o=0;
while(i<=mc||i<=me)
{
if(a[i]<b[i]){a[i+1]--;a[i]+=10;}
c[i]=a[i]-b[i];
i++;
}
mz=i;while(c[mz]==0&&mz>1)mz--;
cout<<"x-y=";
if(mo==-1) cout<<"-";
for(int i=mz;i>=1;i--) cout<<c[i];
}
void gj3(){//高精度乘法
string sa="",sb="",st="";
int la=0,lb=0,lc=0,tla=0,tlb=0,t=0;
bool isuselesszero=true;
vector <int> a,b,c;
cout<<"乘数x:";
cin>>sa;
cout<<"乘数y:";
cin>>sb;
if(sa[0]=='0' || sb[0]=='0') {
cout<<0;
return ;
}
la=sa.length(); lb=sb.length();
if(la>lb){
swap(sa,sb);
la=sa.length();
lb=sb.length();
}
lc=max(la,lb);
tla=la;
tlb=lb;
reverse(sa.begin(),sa.end());
reverse(sb.begin(),sb.end());
while(tla<lc){
sa+='0';
tla=sa.length();
}
while(tlb<lc){
sb+='0';
tlb=sb.length();
}
for(int i=0;i<1000000;i++) c.push_back(0);
for(int i=0;i<lc;i++){
a.push_back((sa[i]-'0'));
b.push_back((sb[i]-'0'));
}
for(int i=0;i<lb;i++){
for(int j=0;j<la;j++){
c[i+j]+=a[j]*b[i];
if(c[i+j]>=10){
c[i+j+1]+=c[i+j]/10;
c[i+j]%=10;
}
}
}
reverse(c.begin(),c.end());
cout<<"x*y=";
for(int i=0;i<1000000;i++){
if(isuselesszero&&c[i]==0) continue;
if(c[i]!=0) isuselesszero=false;
if(c[i]<10) cout<<c[i];
else{
c[i-1]=c[i]/10;
c[i]%=10;
cout<<c[i];
}
}
return ;
}
void dt1(){//杨辉三角
int n;
cin>>n;
const int m = 2 * n-1;
int arr[n + 1][m] = { 0 };
for (int i = 0; i < n; i++)
{
arr[i][n - i- 1] = 1;
arr[i][n + i -1] = 1;
}
for (int i = 2; i < n; i++)
{
for (int j = n - i + 1; j < n-2+i; j = j + 2)
arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j + 1];
}
int p;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n - i - 1; j++)
cout << " ";
p = 1;
for (int j = n - i - 1; p < i + 2; j = j + 2)
{
cout << setw(4) << arr[i][j] << " ";
p = p + 1;
}
cout << endl;
}
}
void dt2(){//斐波那契数列
int a[10000],b[10000];
string s1="1",s2="1";
char x[1200];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
int s,n,sum;
cout<<"你求的是第几个数列:";
cin>>n;
for(int j=2;j<n;j++) {
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
a[0]=s1.size();
b[0]=s2.size();
for(int i=1;i<=a[0];i++){
a[i]=s1[a[0]-i]-'0';
}
for(int i=1;i<=b[0];i++){
b[i]=s2[b[0]-i]-'0';
}
sum=max(a[0],b[0]);
for(int i=1;i<=sum;i++){
a[i]+=b[i];
a[i+1]+=a[i]/10;
a[i]%=10;}
sum++;
while(!(a[sum])&&(sum>1))sum--;
s=0;
for(int i=sum;i>=1;i--)x[s++]=a[i]+'0';
s1=s2;
s2=x;
}
cout<<s2;
}
int main(){
for(int i=0;i<5;i++){
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
}
system("cls");
int zh,mm;//账号,密码
cout << endl << endl << endl << endl ;
cout<<" -------自定义计算 2.0-------"<<endl<<endl;
cout<<" Hello~ :) 欢迎来到全新的自定义计算2.0----5/20版"<<endl;
cout<<" 请输入账号:";cin>>zh;
cout<<" 请输入密码:";cin>>mm;
int qw;
bool qe=1;
if(zh==123456&&mm==456789)qw=1;
else qw=2;
while(qw){
system("cls");
if(qe==1){
for(int i=0;i<ss1.size();i++){
cout<<ss1[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss2.size();i++){
cout<<ss2[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss3.size();i++){
cout<<ss3[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss4.size();i++){
cout<<ss4[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss5.size();i++){
cout<<ss5[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss6.size();i++){
cout<<ss6[i];
Sleep(50);
}
cout<<endl;
qe=0;
}
cout<<ss7<<endl;
cout<<ss8<<endl;
cout<<ss9<<endl;
int xuanxiang;//选项------------------------------------------------------------
cout<<"请选择功能:";
cin>>xuanxiang;
if(xuanxiang==1){
system("cls");
cout<<ss7<<endl;
cout<<ss1_1<<endl;
cout<<ss1_2<<endl;
cout<<ss1_3<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
gj1();
Sleep(500);
}
else if(xuanxiang1==2){
system("cls");
gj2();
Sleep(500);
}
else if(xuanxiang1==3){
system("cls");
gj3();
Sleep(500);
}
}
if(xuanxiang==2){
system("cls");
cout<<ss7<<endl;
cout<<ss2_1<<endl;
cout<<ss2_2<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
dt1();
Sleep(500);
}
else if(xuanxiang1==2){
system("cls");
dt2();
Sleep(500);
}
}
cout<<endl;
cout<<"是否退出?"<<endl;
cout<<"[1]:继续"<<endl;
cout<<"[0]:退出"<<endl;
cout<<"你的选择:";
cin>>qw;
}
return 0;
}
许金夫在2020-05-22 21:49:35追加了内容
十分钟倒计时,我又要更新了!
本次更新是八皇后(休想AC):
20:00准时更新
许金夫在2020-05-22 22:00:51追加了内容
#include <bits/stdc++.h>
#include<windows.h>
using namespace std;
string ss1="好消息,好消息!<自定义计算>更新了!!!";
string ss2="<自定义计算2.0>将会有以下更新:";
string ss3="[1]:1.0系统中复杂的if将由函数代替";
string ss4="[2]:2.0更新将出现多种算法!!!";
string ss5="[3]:吐槽一下,希望这次不要再有人盗版我的代码了~";
string ss6="好了,话不多说,看一看这次<自定义计算>全家桶将加入那些算法吧~";
string ss7="|| ————请选择项目———— ||";
string ss8="|| [1]<高精度> ||";
string ss9="|| [2]<递推> ||";
string ss10="|| [3]<递归> ||";
string ss1_1="|| [1]<高精度>x+y ||";
string ss1_2="|| [2]<高精度>x-y ||";
string ss1_3="|| [3]<高精度>x*y ||";
string ss2_1="|| [1]<递推>杨辉三角 ||";
string ss2_2="|| [2]<递推>斐波那契 ||";
string ss3_1="|| [1]<递归>八皇后 ||";
static int gEightQueen[8] = { 0 }, gCount = 0;//八皇后的定义
void print()//八皇后
{
for (int i = 0; i < 8; i++)
{
cout<<" |";
int inner;
for (inner = 0; inner < gEightQueen[i]; inner++)
cout << " ";
cout <<"#";
for (inner = gEightQueen[i] + 1; inner < 8; inner++)
cout << " ";
cout<<"|";
cout << endl;
}
cout << " ==========\n";
Sleep(1000);
}
int check_pos_valid(int loop, int value){//八皇后
int index;
int data;
for (index = 0; index < loop; index++)
{
data = gEightQueen[index];
if (value == data)
return 0;
if ((index + data) == (loop + value))
return 0;
if ((index - data) == (loop - value))
return 0;
}
return 1;
}
void eight_queen(int index)//八皇后
{
int loop;
for (loop = 0; loop < 8; loop++)
{
if (check_pos_valid(index, loop))
{
gEightQueen[index] = loop;
if (7 == index)
{
gCount++, print();
gEightQueen[index] = 0;
return;
}
eight_queen(index + 1);
gEightQueen[index] = 0;
}
}
}
void dg1(){//八皇后主函数
string s8h1="八皇后问题--------一个古老而著名的问题,是回溯算法的典型案例。";
string s8h2="下面将会输出所有八皇后的选项<此题在题库里无法AC>,所有的'#'代表皇后,为了方便观看,每次输出后将会暂停1秒,请耐心等待~";
for(int i=0;i<s8h1.size();i++){
cout<<s8h1[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<s8h2.size();i++){
cout<<s8h2[i];
Sleep(50);
}
Sleep(500);
eight_queen(0);
cout << "总数为=" << gCount << endl;
}
void gj1(){//高精度加法
int a[100005];
int b[100005];
int c[100005];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
string s1,s2;
cout<<"加数x:";
cin>>s1;
cout<<"加数y:";
cin>>s2;
a[0]=s1.size();
b[0]=s2.size();
for(int i=1;i<=s1.size();i++)a[i]=int(s1[a[0]-i]-'0');
for(int i=1;i<=s2.size();i++)b[i]=int(s2[b[0]-i]-'0');
c[0]=max(a[0],b[0]);
int jw=0;
for(int i=1;i<=c[0];i++){
c[i]=a[i]+b[i]+jw;
jw=c[i]/10;
c[i]%=10;
}
if(jw==1){
c[0]++;
c[c[0]]=jw;
}
cout<<"x+y=";
for(int i=c[0];i>=1;i--){
cout<<c[i];
}
}
void gj2(){//高精度减法
string sd,se,sa;
int a[100001]{0},b[100001]{0},c[100001]{0},mc,me,mz,n,mo=0;
cout<<"减数x:";
cin>>sd;
cout<<"减数y:";
cin>>se;
mc=sd.size();
me=se.size();
if(mc<me||mc==me&&sd<se){sa=sd;sd=se;se=sa;n=mc;mc=me;me=n;mo=-1;}
for(int i=1;i<=mc;i++) a[i]=sd[mc-i]-'0';
for(int i=1;i<=me;i++) b[i]=se[me-i]-'0';
int i=1,o=0;
while(i<=mc||i<=me)
{
if(a[i]<b[i]){a[i+1]--;a[i]+=10;}
c[i]=a[i]-b[i];
i++;
}
mz=i;while(c[mz]==0&&mz>1)mz--;
cout<<"x-y=";
if(mo==-1) cout<<"-";
for(int i=mz;i>=1;i--) cout<<c[i];
}
void gj3(){//高精度乘法
string sa="",sb="",st="";
int la=0,lb=0,lc=0,tla=0,tlb=0,t=0;
bool isuselesszero=true;
vector <int> a,b,c;
cout<<"乘数x:";
cin>>sa;
cout<<"乘数y:";
cin>>sb;
if(sa[0]=='0' || sb[0]=='0') {
cout<<0;
return ;
}
la=sa.length(); lb=sb.length();
if(la>lb){
swap(sa,sb);
la=sa.length();
lb=sb.length();
}
lc=max(la,lb);
tla=la;
tlb=lb;
reverse(sa.begin(),sa.end());
reverse(sb.begin(),sb.end());
while(tla<lc){
sa+='0';
tla=sa.length();
}
while(tlb<lc){
sb+='0';
tlb=sb.length();
}
for(int i=0;i<1000000;i++) c.push_back(0);
for(int i=0;i<lc;i++){
a.push_back((sa[i]-'0'));
b.push_back((sb[i]-'0'));
}
for(int i=0;i<lb;i++){
for(int j=0;j<la;j++){
c[i+j]+=a[j]*b[i];
if(c[i+j]>=10){
c[i+j+1]+=c[i+j]/10;
c[i+j]%=10;
}
}
}
reverse(c.begin(),c.end());
cout<<"x*y=";
for(int i=0;i<1000000;i++){
if(isuselesszero&&c[i]==0) continue;
if(c[i]!=0) isuselesszero=false;
if(c[i]<10) cout<<c[i];
else{
c[i-1]=c[i]/10;
c[i]%=10;
cout<<c[i];
}
}
return ;
}
void dt1(){//杨辉三角
int n;
cin>>n;
const int m = 2 * n-1;
int arr[n + 1][m] = { 0 };
for (int i = 0; i < n; i++)
{
arr[i][n - i- 1] = 1;
arr[i][n + i -1] = 1;
}
for (int i = 2; i < n; i++)
{
for (int j = n - i + 1; j < n-2+i; j = j + 2)
arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j + 1];
}
int p;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n - i - 1; j++)
cout << " ";
p = 1;
for (int j = n - i - 1; p < i + 2; j = j + 2)
{
cout << setw(4) << arr[i][j] << " ";
p = p + 1;
}
cout << endl;
}
}
void dt2(){//斐波那契数列
int a[10000],b[10000];
string s1="1",s2="1";
char x[1200];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
int s,n,sum;
cout<<"你求的是第几个数列:";
cin>>n;
for(int j=2;j<n;j++) {
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
a[0]=s1.size();
b[0]=s2.size();
for(int i=1;i<=a[0];i++){
a[i]=s1[a[0]-i]-'0';
}
for(int i=1;i<=b[0];i++){
b[i]=s2[b[0]-i]-'0';
}
sum=max(a[0],b[0]);
for(int i=1;i<=sum;i++){
a[i]+=b[i];
a[i+1]+=a[i]/10;
a[i]%=10;}
sum++;
while(!(a[sum])&&(sum>1))sum--;
s=0;
for(int i=sum;i>=1;i--)x[s++]=a[i]+'0';
s1=s2;
s2=x;
}
cout<<s2;
}
int main(){
for(int i=0;i<5;i++){
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ........";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ......";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ....";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ...";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" ..";system("cls");
for(int i=0;i<1;i++)cout<<endl<<endl<<endl<<endl<<endl<<" .";system("cls");
}
system("cls");
int zh,mm;//账号,密码
cout << endl << endl << endl << endl ;
cout<<" -------自定义计算 2.0-------"<<endl<<endl;
cout<<" Hello~ :) 欢迎来到全新的自定义计算2.0----5/20版"<<endl;
cout<<" 请输入账号:";cin>>zh;
cout<<" 请输入密码:";cin>>mm;
int qw;
bool qe=1;
if(zh==123456&&mm==456789)qw=1;
else qw=2;
while(qw){
system("cls");
if(qe==1){
for(int i=0;i<ss1.size();i++){
cout<<ss1[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss2.size();i++){
cout<<ss2[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss3.size();i++){
cout<<ss3[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss4.size();i++){
cout<<ss4[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss5.size();i++){
cout<<ss5[i];
Sleep(50);
}
cout<<endl;
for(int i=0;i<ss6.size();i++){
cout<<ss6[i];
Sleep(50);
}
cout<<endl;
qe=0;
}
cout<<ss7<<endl;
cout<<ss8<<endl;
cout<<ss9<<endl;
cout<<ss10<<endl;
int xuanxiang;//选项------------------------------------------------------------
cout<<"请选择功能:";
cin>>xuanxiang;
if(xuanxiang==1){//高精度
system("cls");
cout<<ss7<<endl;
cout<<ss1_1<<endl;
cout<<ss1_2<<endl;
cout<<ss1_3<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
gj1();
Sleep(500);
}
else if(xuanxiang1==2){
system("cls");
gj2();
Sleep(500);
}
else if(xuanxiang1==3){
system("cls");
gj3();
Sleep(500);
}
}
else if(xuanxiang==2){//递推
system("cls");
cout<<ss7<<endl;
cout<<ss2_1<<endl;
cout<<ss2_2<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
dt1();
Sleep(500);
}
else if(xuanxiang1==2){
system("cls");
dt2();
Sleep(500);
}
}
else if(xuanxiang==3){//递归
system("cls");
cout<<ss7<<endl;
cout<<ss3_1<<endl;
int xuanxiang1;
cout<<"你的选择:";
cin>>xuanxiang1;
if(xuanxiang1==1){
system("cls");
dg1();
Sleep(500);
}
}
cout<<endl;
cout<<"是否退出?"<<endl;
cout<<"[1]:继续"<<endl;
cout<<"[0]:退出"<<endl;
cout<<"你的选择:";
cin>>qw;
}
return 0;
}
许金夫在2020-05-23 18:03:54追加了内容
今晚我将在第二个贴里更新,敬请期待
许金夫在2020-05-23 20:04:39追加了内容
@刘景程
你就知道游戏吗,这又不是游戏。C++又不是用来玩的!
许金夫在2020-05-24 22:48:55追加了内容
都有腰间盘,为何你如此突出【滑稽】【滑稽】【滑稽】【滑稽】【滑稽】
可以这样子:
帖子1
更新(1)
更新(2)
更新(3)
帖子2
更新(1)
更新(2)
更新(3)
…………………………
总之就是一个帖子更三次,三次更晚换一个帖子
余彦文在2020-05-22 18:26:23追加了内容
啊呸,是"完"
余彦文在2020-05-23 16:23:47追加了内容
时间一长“其他”里全是…………
标签:其他
@许金夫:…………
@许金夫:…………
@许金夫:…………
@许金夫:…………
@许金夫:…………
@许金夫:…………
@许金夫:…………
……………………