用户自定义函数输出图形1
#include<iostream>
using namespace std;
void aaa(int n){
for(int i=1;i<=n;i++){
for(int j=1;j<=n-i;j++){
cout<<" ";
}
for(int a=1;a<=i*2-1;a++){
cout<<"*";
}
cout<<endl;
}
}
int main(){
int n;
cin>>n;
aaa(n);
return 0;
}
用户自定义函数输出图形2
#include<iostream>
using namespace std;
void aaa(int n,char k){
for(int i=1;i<=n;i++){
for(int j=1;j<=n-i;j++){
cout<<" ";
}
for(int a=1;a<=i*2-1;a++){
cout<<k;
}
cout<<endl;
}
}
int main(){
int n;
char k;
cin>>n>>k;
aaa(n,k);
return 0;
}
用户自定义函数输出图形3
#include<iostream>
using namespace std;
void aaa(int n,char k){
for(int i=1;i<=n;i++){
for(int j=1;j<=n-i;j++){
cout<<" ";
}
for(int a=1;a<=i*2-1;a++){
cout<<k;
}
cout<<endl;
}
}
int main(){
int n;
char k;
cin>>n>>k;
aaa(n,k);
aaa(n*2,k);
aaa(n*4,k);
return 0;
}
星号三角形
#include<iostream>
using namespace std;
void aaa(int n){
for(int i=1;i<=n;i++){
for(int j=1;j<=n-i;j++){
cout<<" ";
}
for(int a=1;a<=i;a++){
cout<<"*";
}
cout<<endl;
}
}
int main(){
int n,k;
cin>>k>>n;
for(int i=1;i<=k;i++){
aaa(n);
}
return 0;
}
计算阶乘
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
long long d=1;
for(int i=1;i<=n;i++){
d=d*i;
}
cout<<d;
return 0;
}
计算阶乘提高
#include<iostream>
using namespace std;
int main(){
long long n,m=1,sum=0,a[20];
cin>>n;
for(int i=1;i<=n;i++){
m=m*i;
a[i]=m;
}
for(int i=1;i<=n;i++){
sum=sum+a[i];
}
cout<<sum;
return 0;
}
#include<iostream>
using namespace std;
void aaa(int x,int y){
int sum=0;
for(int i=x;i<=y;i++){
if(i%2!=0){
sum+=i;
}
}
cout<<sum;
}
int main(){
int x,y;
cin>>x>>y;
aaa(x,y);
return 0;
}
看看有多少闰年
#include<iostream>
using namespace std;
int aaa(int a,int b){
int sum=0;
for(int i=a;i<=b;i++){
if(i%4==0&&i%100!=0||i%400==0){
sum++;
}
}
return sum;
}
int main(){
int a,b;
cin>>a>>b;
cout<<aaa(a,b);
return 0;
}
函数计算
#include<iostream>
using namespace std;
int aaa(int a,int b,char c){
if(c=='+'){
return a+b;
}
if(c=='-'){
return a-b;
}
if(c=='*'){
return a*b;
}
if(c=='/'){
return a/b;
}
if(c=='%'){
return a%b;
}
}
int main(){
int a,b;
char c;
cin>>a>>c>>b;
cout<<aaa(a,b,c);
return 0;
}
信息费用
#include<iostream>
#include<cstdio>
using namespace std;
double n,a,sum;
int aaa(int n){
if(n%70==0){
return n/70;
}
else{
return n/70+1;
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a;
sum+=aaa(a);
}
printf("%.1lf",sum*0.1);
return 0;
}
#include<iostream>
using namespace std;
bool prime(int n){
for(int i=2;i*i<=n;i++){
if(n%i==0){
return 0;
}
}
return 1;
}
int main(){
int n;
cin>>n;
if(prime(n)==1){
cout<<"prime";
}
else{
cout<<"not prime";
}
return 0;
}
数字照镜子
#include<iostream>
using namespace std;
int n,sum;
bool aaa(int x){
int a=0;
int n=x;
while(n!=0){
a=a*10+n%10;
n=n/10;
}
if(a==x){
return 1;
}
else{
return 0;
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
if(aaa(i)==1){
sum++;
}
}
cout<<sum;
return 0;
}
统计素数个数
#include<iostream>
using namespace std;
int sum;
bool prime(int n){
for(int i=2;i*i<=n;i++){
if(n%i==0){
return 0;
}
}
return 1;
}
int main(){
int n;
cin>>n;
for(int i=2;i<=n;i++){
if(prime(i)==1){
sum++;
}
}
cout<<sum;
return 0;
}
统计数字出现的次数
#include<iostream>
using namespace std;
int x,y,sum;
int aaa(int x){
int n=x,s=0;
while(n!=0){
if(n%10==2){
s++;
}
n=n/10;
}
return s;
}
int main(){
cin>>x>>y;
for(int i=x;i<=y;i++){
sum+=aaa(i);
}
cout<<sum;
return 0;
}
求质数
这个题要用欧拉筛
#include<iostream>
using namespace std;
const int N=1e7+5;
int st[N],p[N],cnt,n;
void ola(int n){
for(int i=2;i<=n;i++){
if(st[i]==0){
p[cnt++]=i;
}
for(int j=0;p[j]<=n/i;j++){
st[p[j]*i]=1;
if(i%p[j]==0){
break;
}
}
}
}
int main(){
cin>>n;
ola(n);
for(int i=0;i<cnt;i++){
cout<<p[i]<<" ";
}
return 0;
}
第x小的质数
方法1:
#include<iostream>
using namespace std;
int main(){
int x,n,a[225000]={0},prime[20005],cnt=1;
cin>>n;
a[1]=1;
for(int i=2;i<=225000;i++){
if(a[i]==0){
for(int j=i*2;j<=225000;j=j+i){
a[j]=1;
}
}
}
for(int i=1;i<=225000;i++){
if(a[i]==0){
prime[cnt]=i;
cnt++;
if(cnt==20001){
break;
}
}
}
for(int i=1;i<=n;i++){
cin>>x;
cout<<prime[x]<<endl;
}
return 0;
}
方法2:
#include<iostream>
#include<cstring>
using namespace std;
const int N=225000;
int st[N],p[N],cnt,n,x;
void ola(int n){
for(int i=2;i<=n;i++){
if(st[i]==0){
p[cnt++]=i;
}
for(int j=0;p[j]<=n/i;j++){
st[p[j]*i]=1;
if(i%p[j]==0){
break;
}
}
}
}
int main(){
cin>>n;
ola(225000);
for(int i=1;i<=n;i++){
cin>>x;
cout<<p[x-1]<<endl;
}
return 0;
}
分解质因数
#include<iostream>
#include<iomanip>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
int main(){
int n;
cin>>n;
int t=2;
cout<<n<<"=";
while(n!=1){
if(n%t==0){
cout<<t;
n=n/t;
if(n!=1){
cout<<"*";
}
}
else{
t++;
}
}
return 0;
}
分解质因数*
#include<iostream>
#include<iomanip>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
bool prime(int n){
for(int i=2;i*i<=n;i++){
if(n%i==0){
return 0;
}
}
return 1;
}
int main(){
int n,m;
cin>>n>>m;
for(int i=n;i<=m;i++){
int j=i;
int t=2;
cout<<j<<"=";
while(j!=1){
if(prime(j)==1){
cout<<j;
break;
}
if(j%t==0){
cout<<t;
j=j/t;
if(j!=1){
cout<<"*";
}
}
else{
t++;
}
}
cout<<endl;
}
return 0;
}
最小公倍数
#include<iostream>
using namespace std;
int gcd(int a,int b){
int r;
while(a%b!=0){
r=a%b;
a=b;
b=r;
}
return b;
}
int lcm(int a,int b){
return a*b/gcd(a,b);
}
int main(){
int a,b;
cin>>a>>b;
cout<<lcm(a,b);
return 0;
}
数的存在
#include<iostream>
#include<iomanip>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
int k,a[1010],f[110];
int main(){
cin>>k;
for(int i=1;i<=k;i++){
cin>>a[i];
f[a[i]+50]++;
}
for(int i=0;i<=100;i++){
if(f[i]>k/2){
cout<<i-50;
return 0;
}
}
cout<<"no";
return 0;
}