rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 程序开发 » Java基础

关于编程大赛

1,本次大赛内容:输入3个数字n, m, s。求数字n的m次方的所有因数之积除以s的余数。
比如输入6 2 5
6^2=36 36的因数有1,2,3,4,6,9,12,18,36,因数之积为 10077696
10077696除以5的余数为1,所以输出1。假设n, m, s都不超过1000
本文来自: 木马帝国论坛(http://bbs.mmbest.com/) 详细文章参考:http://bbs.mmbest.com/viewthread.php?tid=161041&extra=page%3D1
import java.math.*;

import java.io.*;

public class Biginteger {

public static void main(String args[]){

BigInteger result=new BigInteger("1");

BufferedReader in=new BufferedReader(new InputStreamReader(System.in));

BigInteger COUNT=new BigInteger("0"),

ONE=new BigInteger("1"),

TWO=new BigInteger("2");

String s=null;

try{

s=in.readLine();

}catch(IOException e){}

BigInteger m=new BigInteger(s);                                            此处用到了BigInteger

System.out.println(m.toString()+"的因子有");

for(BigInteger i=TWO;i.compareTo(m)<0;i=i.add(ONE))

if((m.remainder(i).compareTo(BigInteger.ZERO))==0)

result=result.multiply(i);

COUNT=COUNT.add(ONE);

System.out.println("m的因子是:"+i.toString());

System.out.println("因子的成绩为:"+result.toString() );

System.out.println(m.toString()+"一共有"+COUNT.toString()+"个因子");

本文来自: 木马帝国论坛(http://bbs.mmbest.com/) 详细文章参考:http://bbs.mmbest.com/viewthread.php?tid=161041&extra=page%3D1

顶一下
(0)
踩一下
(0)