###実現したいこと
素因数分解をした結果をO×O×Oというような出力をしたい
###追記
いただいた意見を基に**i++**を加えました。
ですが、まだ空欄になります。。。
###実行結果
素因数分解の結果が出力されない原因を教えてください。
整数値を入力してください 120 nの素因数分解の結果は
###コード
C++
1#include<iostream> 2#include<vector> 3std::vector<int> prime_factors(int n); 4 5int main() 6{ 7 int i,n; 8 std::cout<<"整数値を入力してください\n"; 9 std::cin>>n; 10 std::cout<<"nの素因数分解の結果は\n"; 11 std::vector<int> factors=prime_factors(n); 12 int nfactors=factors.size(); 13 for(i=0;i<nfactors;i++){ 14 std::cout<<factors[i]<<"×"; 15 } 16 std::cout<<"\n"; 17 return 0; 18} 19std::vector<int> prime_factors(int n) //整数nの素因数分解 20{ 21 std::vector<int> factors; 22 int i=2; 23 while(n<=i){ 24 if(n%i==0){ 25 factors.push_back(i); 26 n=n/i; 27 }else{ 28 i++; 29 } 30 } 31 return factors; 32}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。