当前位置:编程学习 > C/C++ >>

用精湛的编程语言来表示(TC C++ JAVA)都可以

列举出10到1000中所有能被3整除的<br> 最后一位带4的数<br> 然后所有的数字累乘<br> 结果除以255
答案:
思路倒是很简单,但是我不知道怎么解决这么大范围的数字。程序是用java写的,从结果可以看出long型也不能满足需要,请高人指点怎么办吧。<br> public class Test<br> {<br> <br> public static void main(String[] args)<br> <br>{ <br> <br> long total = 1L;<br> <br> for (int i = 4; i &lt; 1000; i += 10)<br> <br> {<br> <br> <br> if (i % 3 == 0)<br> <br> <br> {<br> <br> <br> <br> total *= i;<br> <br> <br> <br> System.out.print(i + "<br>");<br> <br> <br> <br> System.out.println(total);<br> <br> <br> }<br> <br> }<br> <br> System.out.println(total / 255);<br> <br>} <br>} <br>//===========================<br> //结果如下<br> 24<br>24<br> 54<br>1296<br> 84<br>108864<br> 114<br>12410496<br> 144<br>1787111424<br> 174<br>310957387776<br> 204<br>63435307106304<br> 234<br>14843861862875136<br> 264<br>3918779531799035904<br> 294<br>8423049778924355584<br> 324<br>-1049994537522429952<br> 354<br>-2763184808749170688<br> 384<br>8848189715472449536<br> 414<br>-7751528462606663680<br> 444<br>7862504386327478272<br> 474<br>584776229895274496<br> 504<br>-420685312134479872<br> 534<br>-3285027795297632256<br> 564<br>-8081269176909430784<br> 594<br>-4120431919718465536<br> 624<br>-7052091658694819840<br> 654<br>-381926359024271360<br> 684<br>-2983212540667887616<br> 714<br>-8638185560273321984<br> 744<br>-7343119192427593728<br> 774<br>-1977080236415647744<br> 804<br>-3152519739159347200<br> 834<br>8682940081570316288<br> 864<br>-5764607523034234880<br> 894<br>-6917529027641081856<br> 924<br>-9223372036854775808<br> 954<br>0 <br>984<br>0 <br>0
#include<stdio.h>
main()
{
 int i;
 double sum=1.0;
 for(i=10;i<=1000;i++)
 {
 if(i%3==0&&i%10==4)
 {
  printf("%d\n",i);
  sum=sum*i;
 }
 }
 printf("%lf\n",sum/255);
}
这个数据太大了,不知道对不对,但是范围在10到100之间的话是没有错误的 

上一个:[编程]请高手说下C与C++有什么区别????
下一个:现在编程常用的是不是C++语言,而Basic和pasic已经落后了?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,