A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 当我遇上你 中级黑马   /  2015-1-8 13:12  /  1119 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package Test01;

  2. import java.util.Scanner;

  3. public class Test1_81 {

  4.         public static void main(String[] args)
  5.         {
  6.                 while(true)
  7.                 {
  8.                         System.out.println("请输入一个整数:");
  9.                         Scanner sc = new Scanner(System.in);
  10.                         int x = sc.nextInt();
  11.                         fun(x);
  12.                 }               
  13.         }
  14.         public  static void  fun(int n)
  15.         {
  16.                 double sum=0;
  17.                 if(n%2==0)
  18.                 {
  19.                        
  20.                         for(int i=1;i<=n/2;i++)
  21.                         {
  22.                                 sum+=(double)1/(i*2);
  23.                         }
  24.                         System.out.println(String.format("%.8f",sum));       
  25.                 }
  26.                 else {
  27.                         for(int i=0;i<(n+1)/2;i++)
  28.                         {
  29.                                 sum+=(double)1/(iaaaaa*2+1);
  30.                         }
  31.                         System.out.println(String.format("%.8f",sum));       
  32.                 }
  33.         }
  34. }

复制代码

这里数据类型为什么得强转成double,不是可以自动提升么

3 个回复

倒序浏览
sum+=(double)1/(i*2+1);这句莫名其妙的加上a了,奇怪
回复 使用道具 举报
我刚才试试了一下,去掉你错误的aaa,以及强转的double,可以运行啊。
回复 使用道具 举报
iblackhorse 发表于 2015-1-8 19:24
我刚才试试了一下,去掉你错误的aaa,以及强转的double,可以运行啊。

我的为什么不行呢?奇怪
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马