求解释质因数分解的程序,最好能提供流程图!

求解释质因数分解的程序,最好能提供流程图!,第1张

#include<iostream>

using namespace std

{

int n,s

cin>>n

int i

int k=0

for(i=2i<=ni++)

{

if(k==0&&n%i==0)

{

cout<<"n="<<i

n/=i//找到第一个质因数,按格式输出

}

while(n%i==0)//如果质因数有多重,就逐个输出

{

cout<<'*'<<i//输出一个

n/=i//去除一个

k=1

}//分解到n不再是i的倍数是为止

}

system("pause")

}

或者改下面的程序,使输出例如24=(2^3)*3这种格式

#include <stdio.h>

void main( )

{

int m, i = 2,k

scanf("%d", &m)

printf("%d=",m)

while(m >1)

{

if(m % i == 0)//如果含有因子i

{

k=0

printf("%d", i)//输出这个因子

while(m%i==0)

{

m /= i

k++

}

if(k>1)printf("^%d",k)

if(m>1)printf("*")

}

else i++

}

return 0

}

#include <stdio.h>

int main(){

int n // 用户输入的整数

int i // 循环标志

printf("输入一个整数:")

scanf("%d",&n)

printf("%d=",n)

// n>=2才执行下面的循环

for(i=2i<=ni++){

while(n!=i){

if(n%i==0){

printf("%d*",i)

n=n/i

}else

break

}

}

printf("%d\n",n)

return 0

}

将一个正整数分解质因数。

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:

1、如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

2、如果n>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。

3、如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

C语言,是一种通用的、过程式的编程语言,广泛用于系统与应用软件的开发。具有高效、灵活、功能丰富、表达力强和较高的移植性等特点,在程序员中备受青睐。最近25年是使用最为广泛的编程语言。

C语言

C语言是由UNIX的研制者丹尼斯·里奇(Dennis Ritchie)于1970年 由 肯·汤普逊(Ken Thompson)所研制出的B语言的基础上发展和完善起来的。目前,C语言编译器普遍存在于各种不同的 *** 作系统中,例如UNIX、MS-DOS、Microsoft Windows及Linux等。C语言的设计影响了许多后来的编程语言,例如C++、Objective-C、Java、C#等。

#include <stdio.h>

int a[1000]

int main(void)

{

int i, n, j = 0

scanf("%d", &n)

printf("%d=", n)

for (i = 2 n > 1 ++i)

for ( ! (n % i) n /= i)

{

++j

a[j] = i

}

for (i = 1 i <= j-1 ++i)

printf("%d*", a[i])

printf("%d", a[j])

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11952499.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存