注:如有差错,请联系我,我会尽快更正
1142:
#include<bits/stdc++.h>
using namespace std;
//只要在判断回文数函数的基础上再加上一个判断质数的函数就可以了。
bool isPrime(int n){
if(n<=1){
return false;
}else{
for(int i=2;i<=sqrt(n);i++){
if(n%i==0){
return false;
}
}
return true;
}
}
bool huiwenshu(int n){
//判断回文数
int num=0;
int sum=0;
for (int i=1;n/i!=0;i*=10){
if (n /i!= 0){
num++;
}
}
for (int i = 1; i < num; i++)
{
sum += (n - n / (int)pow(10, i) * (int)pow(10, i)) / (int)pow(10, i - 1) * (int)pow(10, num - i);
}
sum += n / pow(10, num - 1);
if (n == sum)
{
return true;
}
else
{
return false;
}
}
int main(){
for(int i=10;i<=1000;i++){
if(isPrime(i) and huiwenshu(i)){
cout<<i<<endl;
}
}
return 0;
}
1143:
#include<bits/stdc++.h>
using namespace std;
bool notPrime(int n){
if(n==1){
return false;
}else{
for(int i=2;i<=sqrt(n);i++){
if(n%i==0){
return true;
}
}
return false;
}
}
int main(){
for(int i=100;i<=999;i++){
if(notPrime(i) and notPrime(i/10) and notPrime(i/100))
cout<<i<<endl;
}
return 0;
}
1144:
#include<bits/stdc++.h>
using namespace std;
bool isPrime(int n){
if(n<=1){
return false;
}
for(int i=2;i<=sqrt(n);i++){
if(n%i==0){
return false;
}
}
return true;
}
int main(){
for(int i=3;i<=100;i++){
if(isPrime(i)){
for(int j=i+1;j<=100;j++){
if(isPrime(j) and isPrime((i+j)/2)){
printf("%d %d %d\n",i,(i+j)/2,j);
}
}
}
}
return 0;
}
1145:
#include<bits/stdc++.h>
using namespace std;
int main(){
int s=0,c=1,n,m=1;//m是1,2,4,7……这里面的一项,s是和,c是每一项的差
cin>>n;
for(int i=1;i<=n;i++,c++){
s+=m;
m+=c;
}
cout<<s;
return 0;
}
1146:
#include<bits/stdc++.h>
using namespace std;
int main(){
int s=0,c=1,m=1;//m是1,2,4,7……这里面的一项,s是和,c是每一项的差
for(int i=1;s<=5000;i++,c++){
s+=m;
m+=c;
}
cout<<s;
return 0;
}
1147:
1147 - 求1/1+1/2+2/3+3/5+5/8+8/13+13/21……的前n项的和-东方博宜OJ
#include<bits/stdc++.h>
using namespace std;
int f(int n){
if(n<=2){
return 1;
}
return f(n-1)+f(n-2);
}
int main(){
int n;
double s=0;
cin>>n;
for(int i=1;i<=n;i++){
double tmp=1.0*f(i)/f(i+1);
s+=tmp;
}
printf("%.3lf",s);
return 0;
}
1148:
#include<bits/stdc++.h>
using namespace std;
int f(int n){
if(n<=1){
return n;
}
return n+f(n-1);
}
int main(){
int n,s=0;
cin>>n;
for(int i=1;i<=n;i++){
s+=f(i);
}
cout<<s;
return 0;
}
1149:
#include<bits/stdc++.h>
using namespace std;
char a[105];
bool judge(int n){
int l=0;
while(n!=0){
a[l]=char(n%10+'0');
n=n/10;
l++;
}
string s1="",s2="";
bool flag=false;
for(int i=0;i<l;i++){
s1=s1+a[i];
s2=a[i]+s2;
}
if(s1==s2){
flag=true;
}
return flag;
}
int main(){
int n,cnt=0;
cin>>n;
for(int i=1;i<=n;i++){
if(judge(i)){
cnt++;
}
}
cout<<cnt;
return 0;
}
1150:
这道题我放的程序是运行超时的,我想了很久也不知道为什么,因为就只有这一道题了,所以我就先放在那,如果有知道的可以私信我,我会尽快补充上去。
#include<bits/stdc++.h>
using namespace std;
bool judge(int n){
int num=0;
for(int i=1;i<=n/2+1;i++){
if(n%i==0){
num+=i;
}
}
if(num==n){
return true;
}
return false;
}
int main(){
int n,cnt=0;
cin>>n;
for(int i=2;i<=n;i++){
if(judge(i)){
cnt++;
}
}
cout<<cnt;
return 0;
}