PAT 2-07 素因子分解(C语言实现)

PAT 2-07 素因子分解(C语言实现)

PAT 2-07 素因子分解(C语言实现),有需要的朋友可以参考下。

题目说明:

给定某个正整数N,求其素因子分解结果,即给出其因式分解表达式 N = p1^k1* p2^k2*…*pm^km

输入格式说明:

输入long int范围内的正整数N。

输出格式说明:

按给定格式输出N的素因式分解表达式,即 N = p1^k1* p2^k2*…*pm^km,其中pi为素因子并要求由小到大输出,指数ki为pi的个数;当ki==1即因子pi只有一个时不输出ki

样例输入与输出:

序号 输入 输出
1
1024
1024=2^10
2
1323
1323=3^3*7^2
3
97532468
97532468=2^2*11*17*101*1291
4
1
1=1
5
3
3=3

解答说明:

从小到大依次寻找素因子,并对每一个素因子的个数做统计。

源码:

#include<stdio.h>
#include<math.h>

int main(void)
{
	int i,j;
	long int m, n;
	int count;
	int isPrime,flag;

	isPrime = 1;
	flag = 0;

	scanf("%ld",&n);
	printf("%ld=",n);
	m = sqrt(n);
	for(i = 2; i <= m;i++){
		if(n%i == 0){
			//printf("%d",i);
			isPrime = 0;
			count = 1;
			n = n / i;
			while(n%i == 0){
				n = n / i;
				count++;
			}
			if(flag)
				printf("*");
			else
				flag = 1;
			if(count == 1)
				printf("%d",i);
			else
				printf("%d^%d",i,count);
		}
	}
	if(isPrime)
		printf("%d",n);

	return 0;
}
时间: 2024-10-02 09:43:45

PAT 2-07 素因子分解(C语言实现)的相关文章

PAT 1009 说反话 C语言

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串.字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格. 输出格式:每个测试用例的输出占一行,输出倒序后的句子. 输入样例: Hello World Here I Come 输出样例: Come I Here World Hello 1 #include<stdio.h> 2 #

PAT 1012 数字分类 C语言

给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字: A1 = 能被5整除的数字中所有偶数的和: A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4...: A3 = 被5除后余2的数字的个数: A4 = 被5除后余3的数字的平均数,精确到小数点后1位: A5 = 被5除后余4的数字中最大数字. 输入格式: 每个输入包含1个测试用例.每个测试用例先给出一个不超过1000的正整数N,随后给出N个不超过1000的待分类的正整数.数字间以空格分隔. 输出格式:

PAT 1007 素数对猜想 C语言

让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数.显然有 d1=1 且对于n>1有 dn 是偶数."素数对猜想"认为"存在无穷多对相邻且差为2的素数". 现给定任意正整数N (< 105),请计算不超过N的满足猜想的素数对的个数. 输入格式:每个测试输入包含1个测试用例,给出正整数N. 输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数. 输入样例: 20 输出样例: 4 1 #include <std

AWS Lambda&Fargate 无服务底层技术是如何实现的

一.AWS Serverless 服务 近些年 AWS 非常推崇无服务器模式,自从2014年 Lambda 发布之后,无服务器大受欢迎,随之 2017 年推出 AWS Fargate 服务,应用于自家的容器服务平台 ECS.在 2019 年,EKS 也相继支持 AWS Fargate. 现在,更多的用户使用无服务器计算来构建应用程序,AWS 旨在打造让用户无需担心基础设施的预置或管理问题.开发人员可以使用 AWS Fargate 将其代码封装为无服务器容器,或使用 AWS Lambda 封装为无

用Qemu搭建x86_64学习环境

作者信息 作者:彭东林 邮箱:[email protected] QQ:405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核版本: Linux-4.10 Busybox版本:busybox-1.24.2 工具链: gcc 具备的功能 模拟一个双核或者单核的x86_64架构的系统,根文件系统用ramdisk的形式,跟Host之间采用NFS的方式实现文件共享. 正文 1.Qemu的编译安装 请参考博文用qemu搭建aarch64学习环

Web前端开发推荐阅读书籍、学习课程下载

转自http://www.xuanfengge.com/fe-books.html 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 除了在项目中学习和跟着有经验的同事学习,读书也是必不可少的.书中有着相对完整的知识体系,每读一本好书都会带来一次全面的提高. 而如果深一脚浅一脚的学习,写出代码的质量会参差不齐.初学者的首要任务是成为靠谱的熟练开发者,能够稳定的输出有一定质量的代码. 前端技术发展速度特别快,总是涌现出很多新的东西,需要不断的学习

Java核心编程开发

Java核心编程开发,本部分内容侧重于java j2se核心部分,共50学时左右,主要内容包括:面向对象编程的六大基本原则及常见八种设计模式.Java核心类库的高级应用,如:文件输入输出流处理.反射.序列化.泛型.多线程.网络编程.DOM4J. 课程内容: 01.Java 中使用 IO 实现数据处理(共8讲) 02.Java 中使用XML实现数据处理(共6讲) 03.Java中的多线程编程(共5讲) 04.多线程高级应用(共5讲) 05.Java中的网络编程(共4讲) 06.网络编程高级应用(共

微软&amp;中科大提出新型自动神经架构设计方法NAO

近期,来自微软和中国科学技术大学的刘铁岩等人发表论文,介绍了一种新型自动神经架构设计方法 NAO,该方法由三个部分组成:编码器.预测器和解码器.实验证明,该方法所发现的架构在 CIFAR-10 上的图像分类任务和 PTB 上的语言建模任务中都表现强劲,在计算资源明显减少的情况下优于或持平于之前的架构搜索最佳方法. 从几十年前 [13, 22] 到现在 [48, 49, 28, 39, 8],无人干预的神经网络架构自动设计一直是机器学习社区的兴趣所在.关于自动架构设计的最新算法通常分为两类:基于强

百度房间卡是否可骄傲是快乐积分拉斯科

http://www.ebay.com/cln/ycn6646/-/167568259015/2015.02.07 http://www.ebay.com/cln/gon-n31/-/167197496017/2015.02.07 http://www.ebay.com/cln/hu_d027/-/167453250013/2015.02.07 http://www.ebay.com/cln/ywa2962/-/167301832012/2015.02.07 http://www.ebay.co