作業1
選擇題:
1. C
編程題:
1.
代碼:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<climits>
using namespace std;
int isPrime(int n){
int i,j;
if(n==2){
return true;
}
else if (n<2||n%2==0){
return false;
}
else{
j = (int)sqrt(n+1);
for (i=3;i<=j;i=i+2)
if (n%i==0)
return false;
}
return true;
}
int main(){
int count = 0;
for(int i=101; i<200; i++){
if(isPrime(i)){
cout<<i<<" ";
count+=1;
}
}
cout<<endl;
cout<<count<<endl;
return 0;
}
運行結果:
2.
傑克和露絲是一對戀人,他們每天都會玩一個數字游戲,游戲規則如下:
【1】 傑克從區間[a,b],中隨機選擇一個數字x
【2】 露絲從區間[c,d],中隨機選擇一個數字x
【3】 如果(x+y)mod p = m ,他們就會外出看電影
【4】 否則就在圖書館學習
給定整數a,b,c,d,p,m他們想知道外出看電影的概率。
代碼:
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<climits>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
int a,b,c,d,p,m;
int count = 0;
int res;
cin>>a>>b>>c>>d>>p>>m;
for(int x=a; x<=b; x++) {
for(int y=c; y<=d; y++){
if((x+y)%p==m){
count++;
}
}
}
res = ((b-a+1)*(d-c+1));
if (count==0){
cout<<0<<"/"<<1<<endl;
}
else{
for(int i=2;i<=count;i++)
if(count%i==0 && res%i==0){
count/=i;
res/=i;
i--;
}
cout<<count<<"/"<<res<<endl;
}
}
return 0;
}
運行結果: