java例题_04 分解质因数
1 /*4 【程序 4 分解质因数】
2 题目:将一个大于 2 正整数分解质因数。例如:输入 3, 3=3, 输入 6, 6=2*3,输入 90, 90=2*3*3*5。
3 程序分析:对 n 进行分解质因数,应先找到一个最小的质数 k,然后按下述步骤完成:
4 (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
5 (2)如果 n<>k,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商,作为新的正整数 n,重复执行第
6 一步。
7 (3)如果 n 不能被 k 整除,则用 k+1 作为 k 的值,重复执行第一步。
8 */
9
10 /*分析:
11 * 1.从键盘输入一个整数n,百度到三种方法,感觉使用scanner类比较方便,没有局限性
12 * 2.用for循环遍历除以2~n,找到第一个能除尽的值a
13 * 3.用n除以a值得到新的n
14 * 4.重复以上过程,直到n=a;
15 */
16
17 //【注】因为最终需要得到所有a的具体值,以此想到数组,学习发现java中的数组和C中的数组声明时有区别
18
19
20
21 package homework;
22
23 import java.util.Scanner;
24
25 public class _04 {
26
27 public static void main(String[] args) {
28
29 System.out.println("请输入一个整数n:");
30 // 从键盘得到一个整数n
31 Scanner scan=new Scanner(System.in);
32 int n=scan.nextInt();
33 int m=n;
34 //声明一个长度为20的数组用来存放因数a的值
35 int a[]=new int[20];
36 //声明一个数组角标
37 int j=0;
38 //遍历2~n的值,用if语句判断呢能否整除
39 for (int i=2; i<=m;) {
40 if(m%i==0) {
41 a[j]=i;
42 j++; //多加了一个
43 m=m/i;
44 }
45 else {
46 i++;
47 }
48 }
49 //输出分解后的因式
50 System.out.print(n+","+n+"=");
51 System.out.print(a[0]);
52 for (int i=1; i<=j-1; i++) { //将多加的减回来
53 System.out.print("*"+a[i]);
54 }
55 }
56
57 }
java例题_04 分解质因数的更多相关文章
- 蓝桥网试题 java 基础练习 分解质因数
-------------------------------------------------------------------------- 递归更多的用在多分支情况中 本题用循环就可以了 用 ...
- java将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
首先我们的算法是:例如 输入的是 90 1.找到90的最小公约数(1除外)是 2 2.然后把公约数 2 输出 3.接着用 90 / 2 = 45 (如果这里是素数,就结束,否则继续找最小公约数) 4. ...
- java分解质因数
package test; import java.util.Scanner; public class Test19 { /** * 分析:对n进行分解质因数,应先找到一个最小的质数k * 最小 ...
- java求最大公约数(分解质因数)
下面是四种用java语言编程实现的求最大公约数的方法: package gcd; import java.util.ArrayList; import java.util.List; public c ...
- Java经典案例之-“分解质因数”
/** * 描述:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. * 分析: * 对n进行分解质因数,应该先找到一个最小的质数k,然后按照下列步骤进行: * (1)如果这个质数恰 ...
- java 分解质因数 基础增强
题目:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. 为了熟悉加强基础练习,搞搞经典小demo..话不多说,直接贴代码,看注释.package www.test;import j ...
- java 分解质因数
算法目的:对一个正整数分解质因数 一.算法分析: 1.建立整数列表,保存求到的因数. 2.声明整数i=2,用以递增取模:整数m,用于临时保存n 3.建立while循环,i小于等于整数m时,判断m%i, ...
- java分解质因数,具体程序分析和代码
题目:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. 将一个正整数分解质因数分析:对n进行分解质因数,找到最小的质数k如果这个质数恰好等于n则说明分解质因数过程已经结束,打印输出 ...
- java从键盘输入数,分解质因数,
总结:1.break;的用法 当最小质因数不能被输入的值整除时,需要继续循环.k++. 当然输入的数,本身就是质数时,那么 package com.b; import java.util.Scanne ...
随机推荐
- Node.js & ES Modules & Jest
Node.js & ES Modules & Jest CJS & ESM CommonJS https://en.wikipedia.org/wiki/CommonJS ht ...
- website URL & UTM
website URL & UTM UTM user track message utm_source https://zhuanlan.zhihu.com/p/143473571?utm_s ...
- js currying function All In One
js currying function All In One js 实现 (5).add(3).minus(2) 功能 例: 5 + 3 - 2,结果为 6 https://stackoverflo ...
- Rust learning notes
Rust learning notes Rust Version 1.42.0 $ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs ...
- C-Sharp 调用命令行
https://stackoverflow.com/questions/1469764/run-command-prompt-commands 带控制台 string strCmdText = &qu ...
- js字典
传送门https://www.2cto.com/kf/201709/680989.html 点击
- 死磕Spring之IoC篇 - BeanDefinition 的加载阶段(XML 文件)
该系列文章是本人在学习 Spring 的过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring 源码分析 GitHub 地址 进行阅读 Spring 版本:5.1. ...
- 自关联映射:一个表自己关联自己,此时从同一个表中查询,通过起别名将一张表变成两张表,使用join语句。
实例1:id自关联. 隐式内连接: 实例二:编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的 id .返回结果 不要求顺序 . 查询结果格式如下例: Weather +--- ...
- TcaplusDB服务体系揭秘
导言 TcaplusDB是腾讯出品的分布式NoSQL数据库,存储和调度的代码完全自研.具备缓存+落地融合架构.PB级存储.毫秒级时延.无损水平扩展和复杂数据结构等特性.同时具备丰富的生态.便捷的迁移. ...
- CTS camera的基础操作和debug
手机端 设置永久不锁屏 1 CTS 进入cts目录tools 运行以下命令 ./cts-tradefed adb devices找设备数串 整跑 run cts -m CtsCameraTestCas ...