Ⅰ c语言编程:合数分解
#include<stdio.h>
intmain()
{inti,k,n;
scanf("%d",&n);
for(i=2;i*i<=n;i++)
if(n%i==0)
{k=0;
while(n%i==0){k++;n/=i;}
if(k>1)printf("%d",i);
}
printf("
");
return0;
}
Ⅱ 如图,C语言程序设计题目,求第一个合数世纪(输入1),求指出错误在哪
提问程序问题强烈建议贴代码而不是截图,几乎没人愿意对着一个截图给你分析问题。
代码是正确的,但是结果一时半会是出不来的,因为算法时间复杂度太高,这个程序跑出结果,粗略估计需要半个小时左右。
主要是判断质数的地方太麻烦,优化的方法非常多,可以看书或者网上搜。
如果只想解决n=1,只要把
for(i=2;i<c;i++)
改成
for(i=2;i*i<=c;i++)
这样大概几秒内就能出第一个结果了。
如果把素数存下来,只用素数试除,速度还能再提升一点。
Ⅲ C语言实现
#include<stdio.h>
#include<math.h>
int main()
{
int n,s,i=0,t=0,j=0,w,h,k,u=1;
scanf("%d",&n);
for(i=1;i<=n;i++){
for(k=u;;k++){
for(s=k*100,h=1;s<=k*100+99;s++){
for(j=2,w=1;j<=sqrt(s);j++)
{
w=s%j;
if(w==0)
break;
}
if(w!=0)
{ h=0;
break;}
}
if(h==1)
{u=k;
break;}
}
}
printf("%d %d\n",u*100,u*100+99);
return 0;
}
Ⅳ c语言,求一个数的合数,所谓合数就是将一个数的各位合并相加直到只能是个位数为止
#include <stdio.h>
int main(){
long long int n;
int sum=0;
scanf("%lld",&n);
while(n){
sum+=n%10;
if(sum>9) sum%=9;
n/=10;
}
printf("%d",sum);
return 0;
}
Ⅳ c语言 合数的求法
#include<math.h>
#include<stdio.h>
void
main()
{
int
m,k,i,n=0;
for
(m=101;m<=200;m++)
{
k=(int)sqrt(m);
for(i=2;i<=k;i++)
{if(m%i==0)
{printf("%d
",m);
n=n+1;
if(n%8==0)
printf("\n");
break;
}
}
}
printf("\n%d\n",n);
}
200内的合数为79
Ⅵ C语言,NOJ上有一道题,探索合数世纪,不会做,望指点
您好,1、当x=1时,a-b+c=0;
2、当x=-2时,4a+2b+c=1;
3、a+b=1/3;
4、(2)-(1),得3a+3b=1;
5、从上面各式,可以求出:b=1/3-a,c=1/3-2a;
6、原方程变为:ax^2-(1/3-a)x+1/3-2a=0;
7、解方程,x = (1/3-a)+-sqrt((1/3-a)^2-4a(1/3-2a))/(2a) = [1/3-a+/-(3a-1/3)]/(2a)
解得两个根 x1 = 1(已知的);x2 = 1/(3a)-2
Ⅶ 求C语言编程:输出1-100之间所有的合数
#include<stdio.h>
int main()
{int num,i;
for(num=2;num<100;num++)
{
for(i=2;i<num;i++)
{
if(num%i==0){printf("%d\n",num);break;}
}
}
}
如果这个合数有n个约数,则打印个合数?????
这个是什么意思?是要求打印约数的个数吗?
Ⅷ C++编程:设计程序探索最早的合数世纪从哪一年开始算,比如:20世纪是从公元1901年到公元2000年)。
#include<iostream>
usingnamespacestd;
intmain()
{
intn,i=500,s,x,count=0;
longj,k;
cin>>n;
while(count<n)
{
s=0;
for(j=i*100-99;j<i*100;j+=2)
{
x=0;
for(k=3;k*k<=j;k+=2)
if(j%k==0)
{
x=1;
break;
}
s+=x;
}
if(s==50)
count++;
i++;
}
cout<<j-101<<""<<j-2<<endl;
return0;
}
Ⅸ C++探索合数世纪:若一个世纪的100个年号中不存在一个素数,则称这个世纪为合数世纪,求第n个合数世纪
#include <iostream>这是文件头
using namespace std; 存储空间
int main() 主函数
Ⅹ c语言编程,求一个数的合数。急!求大神解答!
#include<stdio.h>
void main()
{
int num,i,s;
scanf("%d",&s);
for(num=2;num<s;num++)
{
for(i=2;i<num;i++)//注意是i<num,不包括本身num
{
if(num%i==0)
{
printf("%d\n",num);
break;//只要满足一个条件就break
}
}
}
}