#include <iostream>
using namespace std
void main()
{
long N,N2,i,t,count
cout<<"<因式分解>"<<endl
cout<<"本程序中N和1不视作N的因子。"<<endl
while(1){
cout<<"请输入一个正整数N:"
cin>>NN2=N
count=0t=N/2 //大于N/2的数不能成为N的因子。(本程序中N本身不算N的一个因子)
for(i=2i<=ti++){
if(N%i==0){
if (++count==1) cout<<"N="<<N<<"="
cout<<iN/=i
if(N!=1) cout<<"×"
i-- //再次测试i是否还能成为N的因子
}
if(N==1) break
}
if(count==0) cout<<N2<<"是质数。"<<endl
cout<<endl<<endl
}
}
1、首先打开vc6.0, 新建一个vc项目,添加头文件。
2、添加main主函数,如下图所示。
3、然后定义 n, i 两个变量,如下图所示。
4、接着使用scanf给n赋值,使用for循环。
5、然后用while作为内层循环,使用printf打印i。
6、最后使用if条件语句,运行程序,如下图所示,正整数分解为质因子就完成了。
输入90,打印输出90=2*3*3*5class Program
{
static void Main(string[] args)
{
int n, i
Console.WriteLine("\nplease input a number:\n")
n=Convert.ToInt32( Console.ReadLine())
Console.WriteLine("质数分解为:")
for (i = 2i <= ni++) //循环被除数
{
while (n != i)
{
if (n % i == 0) //整除即可//质数
{
Console.WriteLine(i)
n = n / i//新的除数
}
else
break
}
}
Console.WriteLine(n)
Console.ReadLine()
}
}
Bruce
using System
class Program
{
static void Main(string[] args)
{
Console.Write("请输入一个整数:")
int num = Convert.ToInt32(Console.ReadLine())
string str = num.ToString()+"="
for (int i = 2num!=1i++)
{
while (num % i == 0)
{
str += i.ToString() + "*"
num = num / i
}
}
str=str.Substring(0, str.Length - 1)
Console.WriteLine("结果为:{0}",str)
Console.ReadLine()
}
}
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int intnum = 90//输入的数字
bool bol = true//while循环的条件
int[] intaa = new int[intnum]//存储分解的质因数
int arrayIndex = 0//intaa的索引
bool bol1 = true//判断是否循环完毕
while (bol)//while控制整数分解质因数的整个流程
{
for (int i = 2i <= intnumi++)//分解整数循环(是一次次的分解)
{
if (i == intnum)
bol1 = false//判断是否是最后一次分解
if (intnum / i != 0)//是否除的尽
{
continue
}
else//除的尽的话
{
intaa[arrayIndex] = i//把质因数存储
arrayIndex++//存储质因数的数组下标加1
intnum = i//跟换当前intnum数,用来继续分解
break//跳出for循环
}
}
if (bol1)//如果分解完毕跳出循环
break
}
//剩下打印你自己写咯
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)