zoukankan      html  css  js  c++  java
  • 质因数分解

     1 /*
     2     一、分解只因数的原理
     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     ps : 1的质因数为0个(某些题目中) 
     9 */
    10 
    11 #include<bits/stdc++.h>
    12 
    13 using namespace std;
    14 
    15 map<int,int> mp;
    16 
    17 int main(){
    18     int n;
    19     cin >> n;
    20     cout << n << "=";
    21     for(int i=2; i<=n; i++){
    22         if(n == i) mp[i]++;
    23         while(n != i){
    24             if(n % i == 0){
    25                 mp[i]++;
    26                 cout << i << "*";
    27                 n /= i;
    28             }else break;
    29         }
    30     }
    31     cout << n << endl;
    32     mp[n]++;
    33     cout << "该数字中不同质因子个数为:" << " " << mp.size() << endl;
    34     if(n != 1){
    35         cout << "分别为:" << endl;
    36         for(map<int,int>::iterator it = mp.begin(); it != mp.end(); it++){
    37             cout << "质因子为: " << it->first  << " " << "质因子个数为: " << it->second << endl;
    38         }
    39     }
    40     return 0;
    41 }
  • 相关阅读:
    services parameters 是如何表现的
    session表有多少条记录?
    php://input 如何用?
    getEditableConfigNames
    UTC + 8 = Beijing Time
    file vs database
    多环境drupal安全install.php
    新建block+cache
    drupal 8 bigpipe lazy_builder
    hook_theme 的重要性
  • 原文地址:https://www.cnblogs.com/zhangqiling/p/12494276.html
Copyright © 2011-2022 走看看