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 分解质因数的更多相关文章

  1. 蓝桥网试题 java 基础练习 分解质因数

    -------------------------------------------------------------------------- 递归更多的用在多分支情况中 本题用循环就可以了 用 ...

  2. java将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

    首先我们的算法是:例如 输入的是 90 1.找到90的最小公约数(1除外)是 2 2.然后把公约数 2 输出 3.接着用 90 / 2 = 45 (如果这里是素数,就结束,否则继续找最小公约数) 4. ...

  3. java分解质因数

      package test; import java.util.Scanner; public class Test19 { /** * 分析:对n进行分解质因数,应先找到一个最小的质数k * 最小 ...

  4. java求最大公约数(分解质因数)

    下面是四种用java语言编程实现的求最大公约数的方法: package gcd; import java.util.ArrayList; import java.util.List; public c ...

  5. Java经典案例之-“分解质因数”

    /** * 描述:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. * 分析: * 对n进行分解质因数,应该先找到一个最小的质数k,然后按照下列步骤进行: * (1)如果这个质数恰 ...

  6. java 分解质因数 基础增强

    题目:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. 为了熟悉加强基础练习,搞搞经典小demo..话不多说,直接贴代码,看注释.package www.test;import j ...

  7. java 分解质因数

    算法目的:对一个正整数分解质因数 一.算法分析: 1.建立整数列表,保存求到的因数. 2.声明整数i=2,用以递增取模:整数m,用于临时保存n 3.建立while循环,i小于等于整数m时,判断m%i, ...

  8. java分解质因数,具体程序分析和代码

    题目:将一个正整数分解质因数.例如:输入90,打印出90=2*3*3*5. 将一个正整数分解质因数分析:对n进行分解质因数,找到最小的质数k如果这个质数恰好等于n则说明分解质因数过程已经结束,打印输出 ...

  9. java从键盘输入数,分解质因数,

    总结:1.break;的用法 当最小质因数不能被输入的值整除时,需要继续循环.k++. 当然输入的数,本身就是质数时,那么 package com.b; import java.util.Scanne ...

随机推荐

  1. 使用 js 实现一个中文自动转换成拼音的工具库

    使用 js 实现一个中文自动转换成拼音的工具库 中文 => zhong-wen 应用场景 SEO 友好, URL 自动转换 blogs 发布文章,自动化部署,自动生成 url 的 path (时 ...

  2. pure CSS waterfall layout

    pure CSS waterfall layout 纯 CSS 瀑布流布局 flex layout .container{} .item{} https://caniuse.com/?search=c ...

  3. node.js & create file

    node.js & create file node js create file if not exists https://nodejs.org/api/fs.html#fs_fs_ope ...

  4. Unicode & \u2028 & \u2029

    Unicode \u2028 & \u2029 https://stackoverflow.com/questions/16686687/json-stringify-and-u2028-u2 ...

  5. css & box-shadow & outline

    css & box-shadow & outline CSS3 box-shadow : 4 sides symmetry https://learning.xgqfrms.xyz/C ...

  6. macOS & wifi & ip

    macOS & wifi & ip mac show wifi ip # wireless ipconfig getifaddr en1 # ethernet ipconfig get ...

  7. NGK和USDN的应用

    一.NGK和USDN的发展方向 目前区块链将会朝着两个方向去发展,第一种是金融经济的衍生品,第二种是商业应用,快速支付的货币体系,NGK.IO公链是基于分布式应用设计的商用金融区块链操作系统,通过数字 ...

  8. PBN进场程序保护区图例分析

      疫情仍在持续,除了待家里不给祖国添乱之外,过去没有时间去完成的事情,现在可以静下心来认真面对,充实过好每一天. 今天想跟大家聊一下ICAO 8168第二卷PBN进场程序的图例. 就是下面这张图: ...

  9. springCloud中的注册中心Nacos

    springCloud中的注册中心Nacos 三个模块: 1.注册中心 2.服务提供者(生产者) 提供服务 3.服务消费者(消费者)调用服务 流程:消费者和生产者都要向注册中心注册,注册的是二者中服务 ...

  10. 前端传递数据到后台的两种方式;创建一个map或者创建一个FormData对象

    一.构建一个map getAllDeptAllUsers(){ const modleCode = {'auditMenuId': this.auditMenuId, 'enterpriseId': ...