输入一个正整数,将其用质因子的乘积表示,并输出结果,.
来源:学生作业帮助网 编辑:作业帮 时间:2024/10/01 04:39:18
VC++6.0下编译通过可运行.#includeusingnamespacestd;intmain(){inti,j,k,a;j=0;for(i=10;i
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可.(2)如果nk,但n能被k整除,则应打印出k的值,并
这个很容易嘛.最小的真因子和最大的真因子之积是那个整数的值,这点相信你可以理解吧.那么算法就是,从2开始,找真因子,第一个找到的即为最小的真因子,然后用整数除以最小真因子记得最大的真因子.具体程序如下
#includeintmain(){intnum=0;ints=0;inti=0;scanf("%d",&num);while(num){s+=num%10;num=num/10;i++;}print
#include#includeintmain(){intn,r,i,t,b;chara[100];charc[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";//a数组用储存转后每位的
programfenjie;vart,k,n:longint;s,o:string;beginreadln(n);write(n,'=');fort:=2totrunc(sqrt(n))dobegin
#include#includeintf(intn)//n为素数则返回1,否则返回i-1{inti=2;while(i
#include#include#include#includeusingnamespacestd;//计算num内的所有素数(不包括num)voidCalcPrimes(intnum,vector&
1、i初值应为22、1不是质因子3、输出格式,需判断是否没有下一个质因子,是的话不再输出'*'按照你的代码稍微改了下:代码:vari,n,k:integer;beginread(n);write(n,
#include#includeintmain(){intoldnum;intnewnum=0;inttemp;printf("pleaseinputnumber\n");scanf("%d",&ol
#includemain(){inta;printf("ÊäÈëÒ»¸öÕý&
Dimn%,cs,i%n=Text1cs="1":i=2DoIfnModi=0Thenn=n/i:cs=cs&"×"&iElsei=i+1EndIfLoopWhileiOptionExplicitPr
审题错了吧,求所有素因子意思就像因子分解。比如18=2×3×3你找素因子用的i那个for循环吧,按你的求法,一个因子只能在式子中出现一次。下一次循环i的值就增加了嘛。你可以按照这个思路来:输入k,wh
#includeintmain(){intn,k,p;intcnk=1;intnumber=0;scanf("%d",&p);for(inttimes=0;times
#include<stdio.h>#include<math.h>main(){ intc,a[10]={0}; inti,j,k=0,n,x;
voidmain(){inti,j,k=0,a,s[50];for(i=0;i
intprime(intx){\x09inti;\x09for(i=2;i
publicclassPerfectNumber{publicstaticvoidmain(String[]args){inti,j,sum;for(i=2;isum=0;for(j=1;j
需要2个文本框text和2个按钮command(一个计算一个清除)Dimx,a,b,kAsStringPrivateSubCommand1_Click()a=Val(Text1.Text)x=2Ifa
#includevoidmain(){inti,n;printf("pleaseinputn:");scanf("%d",&n);printf("%d=",n);for(i=2;i