输入一个正整数x,求其所有约数之和c语言
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/24 04:17:40
namespace ConsoleApplication9{ class Program  
s=0a=1INPUTnDOb=nMODaIFb=0THENs=s+aENDIFa=a+1LOOPUNTILa>nPRINTsEND
#include#includeintmain(void){intm,n,r;ints;printf("输入两数:");scanf("%d%d",&m,&n);s=m*n;while(n!=0){r=
1.PrivateSubCommand1_Click()a=InputBox("")Fori=1ToaIfaModi=0ThenPrintiNextEndSub2.PrivateSubCommand1
vari,x,a:integer;beginread(x);a:=0;fori:=1toxdobeginifxmodi=0thena:=a+i;end;write(a);end.
programyueshuhe;varn,i,s:longint;beginwriteln('inputn:');readln(n);s:=1;fori:=2tondobeginifnmodi=0th
只能告诉你算法,pascla不会定义一个变量sum,记录约数之和得到自然数a,定义变量i从1遍历到a,只要a/i==0,sum=sum+i,最后输出sum就是了
;本程序通过编译,运行正确CodeSegmentAssumeCS:Code,DS:CodeCRequ000DHLFequ000AHKBBackequ0008H;--------------------
上面是while(r)退出的时候r当然是0了求最小公倍数直接用最原始的数相乘,然后除上最大公约数就可以了所以程序可以修改如下#includemain(){intm,n,r=0,s,w=0;scanf(
没有什么捷径,就是分解质因式.求出质因式后,再利用组合的方法求出约数.这对于质因数较少时,不难做出.如:42=2*3*7,则约数有1,2,3,7,2*3,2*7,3*7.2*3*732=2*2*2*2
#includevoidmain(){inti,k,n=0;printf("输入一个数k=");scanf("%d",&k);for(i=1;i
约数的讨论仅在正整数范围的呀.1是最小的约数一个数最大的约数是它本身这个说定义没什么意思的..反正理解它的意思就行了.比如6的约数是1,2,3,610的约数是1,2,5,10
for(i=0;imax)max=a[i];a[i]=a[n-1];a[n-1]=max;for(i=0;i
#includevoidmain(){inta,b,m,n,p,t;printf("请按顺序输入a和b\n");scanf("%d,%d",&a,&b);p=a*b;do{m=a%b;t=b;a=b;
#include"stdio.h"voidmain(){inta,b,c,d;printf("请输入两个正整数:");scanf("%d%d",&a,&b);if(a==b)printf("您输入两数
用什么语言呢大体都是一样的思路fori=1-n如果n/i=取整(n/i)则i是n的约数
2520再问:理由呢,老师再答:就是求1,2,3,4,5,6,7,8,9,10的最小公倍数用最基本的求最小公倍数的方法就可求出
for(k=0;ka[i-1]){n_temp=a[i];a[i]=a[i-1];a[i-1]=n_temp;}}}
最大值与最后一个交换,需要使用到max和a[i],以及一个临时变量,你代码中使用的是maxa[0]a[i],这里貌似有点问题.最小值与第一个交换,貌似你也是用的这3个变量.如果觉得使用的变量过多,可以
∵2x2-5x+13,=2(x-3+3)2-5(x-3+3)+13,=2(x-3)2+12(x-3)+18-5(x-3)-15+13,=2(x-3)2+7(x-3)+16,而(x-3)是2x2-5x+