zoukankan      html  css  js  c++  java
  • A:因子分解

    描述

    输入一个数,输出其素因子分解表达式。

    输入输入一个整数 n (2 <= n < 100)。输出输出该整数的因子分解表达式。
    表达式中各个素数从小到大排列。
    如果该整数可以分解出因子a的b次方,当b大于1时,写做 a^b ;当b等于1时,则直接写成a。样例输入

    60

    样例输出

    2^2*3*5



    #include <iostream>
    #include<algorithm>
    #include<cstring>
    using namespace std;
    int a[10];
    void f(int b,int pri[],int k){

    while(b!=1){
    for(int i =0;i<k;i++){
    if(pri[i]==0)
    continue;
    if(b%pri[i]==0){
    a[i]++;
    b= b/pri[i];

    }
    }

    }


    }
    int main()
    {

    int num;
    cin>>num;
    int k=0;
    int pri[100];
    memset(pri,0,sizeof(pri));
    memset(a,0,sizeof(a));
    int flag =0;
    for(int i =2;i<100;i++){
    flag =0;
    for(int j =2;j<i;j++){
    if(i%j ==0){
    flag =1;
    break;
    }
    }
    if(flag ==0){
    pri[k++] = i;
    }
    }

    f(num,pri,k);
    int flag2= 0;
    for(int i =0;i<sizeof(a)/sizeof(int);i++){
    if(a[i]!=0){
    if(flag2==0){
    flag2 =1;
    }
    else{
    cout<<"*";
    }

    }

    if(a[i]==1)
    cout<<pri[i];
    if(a[i]>1)
    cout<<pri[i]<<"^"<<a[i];


    }







    return 0;
    }

  • 相关阅读:
    提问回顾
    个人阅读作业+个人总结
    结对项目-数独程序扩展
    个人作业-Week 3
    个人作业-Week 2
    个人项目-数独程序
    个人作业-Week 1
    第0次博客作业
    2017[BUAA软工]第0次个人作业
    [2017BUAA软工]提问回顾
  • 原文地址:https://www.cnblogs.com/cyj1258/p/8970460.html
Copyright © 2011-2022 走看看