百數排序
天干地支:西元年問天干地支
數列卷積
小寫轉大寫
最小公倍數(k數)
天干地支:西元年問天干地支
數列卷積
小寫轉大寫
最小公倍數(k數)
這次的手寫題目正常多了~(10分鐘KO)
(起碼沒叫人把2^31次方算出來)
雖然我還是只重上機就是XD
果然有跑來有差(跑來被罵嗎囧)
這次綜合起來比上次好多了
我的數學阿~(哀號
......隔壁的保重,咳出血我可是不會救你
......話說為啥有路人甲亂入來作答阿
全對很好玩嗎囧
百數排序
#include<iostream>
using namespace std;
int main(){
int n[100],i,x;
cout<<"Input 100 numbers:"<<endl;
for(i=0;i<100;i++){
cin>>n[i];
}
for(i=0;i<100;i++){
for(int j=i+1;j<100;j++){
if(n[i]>n[j])swap(n[i],n[j]);
}
}
for(i=0;i<100;i++){
cout<<" "<<n[i];
if((i+1)%10==0)cout<<endl;
}
}
哈哈SORT果然被擋住了
using namespace std;
int main(){
int n[100],i,x;
cout<<"Input 100 numbers:"<<endl;
for(i=0;i<100;i++){
cin>>n[i];
}
for(i=0;i<100;i++){
for(int j=i+1;j<100;j++){
if(n[i]>n[j])swap(n[i],n[j]);
}
}
for(i=0;i<100;i++){
cout<<" "<<n[i];
if((i+1)%10==0)cout<<endl;
}
}
哈哈SORT果然被擋住了
天干地支:西元年問天干地支
#include<iostream>
#include<string>
using namespace std;
int main(){
string x[10]={"甲","乙","丙","丁","戊","己","庚","辛","壬","癸"};
string y[12]={"子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"};
int n;
cout<<"請輸入西元年:"<<endl;
cin>>n;
cout<<"西元"<<n<<"年為 "<<x[(n-1024)%10]<<y[(n-1024)%12]<<" 年";
}
因為程設最開始是歪國人寫的
....最討厭中文字啦!
還是旁門左道安定(string)
話說他絕對不會問小於1024的年份耶~
#include<string>
using namespace std;
int main(){
string x[10]={"甲","乙","丙","丁","戊","己","庚","辛","壬","癸"};
string y[12]={"子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"};
int n;
cout<<"請輸入西元年:"<<endl;
cin>>n;
cout<<"西元"<<n<<"年為 "<<x[(n-1024)%10]<<y[(n-1024)%12]<<" 年";
}
因為程設最開始是歪國人寫的
....最討厭中文字啦!
還是旁門左道安定(string)
話說他絕對不會問小於1024的年份耶~
數列卷積
#include<iostream>
using namespace std;
int main(){
int f[50],n,i,j;
f[0]=1;
cout<<"請輸入一正整數 n :"<<endl;
cin>>n;
for(i=1;i<=n;i++){
f[i]=0;
for(j=0;j<i;j++){
f[i]+=f[j]*f[i-j-1];
}
}
cout<<"f("<<n<<")="<<f[n];
}
考試當下我直接開函式不過後來想想還是寫槽狀迴圈比較適合我
題目是遞迴沒錯~不過我有心靈創傷討厭寫遞迴XD
PS.如果他問超過50這個會當掉
using namespace std;
int main(){
int f[50],n,i,j;
f[0]=1;
cout<<"請輸入一正整數 n :"<<endl;
cin>>n;
for(i=1;i<=n;i++){
f[i]=0;
for(j=0;j<i;j++){
f[i]+=f[j]*f[i-j-1];
}
}
cout<<"f("<<n<<")="<<f[n];
}
考試當下我直接開函式不過後來想想還是寫槽狀迴圈比較適合我
題目是遞迴沒錯~不過我有心靈創傷討厭寫遞迴XD
PS.如果他問超過50這個會當掉
小寫轉大寫
#include<iostream>
using namespace std;
int main(){
char x[512];
cout<<"請輸入一英文連字串:"<<endl;
cin>>x;
cout<<"其大寫字串為:";
for(int i=0;i<strlen(x);i++){
if(x[i]>='a'&&x[i]<='z')cout<<char(x[i]-'a'+'A');
else cout<<x[i];
}
}
-'a'+'A' 安定別叫我去背啥ASCII碼
using namespace std;
int main(){
char x[512];
cout<<"請輸入一英文連字串:"<<endl;
cin>>x;
cout<<"其大寫字串為:";
for(int i=0;i<strlen(x);i++){
if(x[i]>='a'&&x[i]<='z')cout<<char(x[i]-'a'+'A');
else cout<<x[i];
}
}
-'a'+'A' 安定別叫我去背啥ASCII碼
最小公倍數(k數)
#include<iostream>
using namespace std;
int gcd(int x,int y){
while(x%=y)swap(x,y);
return y;
}
int main(){
int x,y,k,i;
cout<<"請輸入一整數k:"<<endl;
cin>>k;
cout<<"請輸入 "<<k<<" 個整數:"<<endl;
cin>>x;
for(i=1;i<k;i++){
cin>>y;
x=x*y/gcd(x,y);
}
cout<<"最小正公倍數為"<<x;
return 0;
int *p;
p=new int[i];
p[i]=0;
delete[]p;
}
本次最大騙局
既然只要輸出公倍數我幹麼把每個數都記下來阿囧
何止指標根本連陣列都不用開囧
.....我當下居然被騙到了= =|||
被那個鬼限制誤導了啦害我調 [ 弄半天
PS.這是腦袋清醒後的版本,紅色部份純粹是寫給限制看得刪掉也無所謂(只是不能批改囧)
PS2.數學: 兩數相乘等於最大公因數乘上最小公倍數
所以 最小公倍數=兩數相乘 / 最大公因數 不知道這個可能會跑很久~
using namespace std;
int gcd(int x,int y){
while(x%=y)swap(x,y);
return y;
}
int main(){
int x,y,k,i;
cout<<"請輸入一整數k:"<<endl;
cin>>k;
cout<<"請輸入 "<<k<<" 個整數:"<<endl;
cin>>x;
for(i=1;i<k;i++){
cin>>y;
x=x*y/gcd(x,y);
}
cout<<"最小正公倍數為"<<x;
return 0;
int *p;
p=new int[i];
p[i]=0;
delete[]p;
}
本次最大騙局
既然只要輸出公倍數我幹麼把每個數都記下來阿囧
何止指標根本連陣列都不用開囧
.....我當下居然被騙到了= =|||
被那個鬼限制誤導了啦害我調 [ 弄半天
PS.這是腦袋清醒後的版本,紅色部份純粹是寫給限制看得刪掉也無所謂(只是不能批改囧)
PS2.數學: 兩數相乘等於最大公因數乘上最小公倍數
所以 最小公倍數=兩數相乘 / 最大公因數 不知道這個可能會跑很久~