如果一个人的身高是5英尺7,他的身高是一米几呢?
    (5+7/12)*0.3048=1.7018米
    怎样写一个程序,用户输入英尺,输出米:
    学编程重要的是学想法。

    检查输入的数目:
    package hello;
    import java.util.Scanner;
    public class Hello {
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    int foot;
    int inch;(注:int在这里是一个整数。)
    Scanner in=new Scanner(System.in);
    foot =in.nextInt();
    inch =in.nextInt();
    System.out.println(10/3);
    System.out.println(“foot=”+foot+”,inch=”+inch);
    System.out.println((foot+inch/12)*0.3048);
    }
    }

    输入:5 7
    输出:foot=5,inch=7
    1.524

    package hello;
    import java.util.Scanner;
    public class Hello {
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    int foot;
    int inch;
    Scanner in=new Scanner(System.in);
    foot =in.nextInt();
    inch =in.nextInt();
    System.out.println(10/3);
    System.out.println(“foot=”+foot+”,inch=”+inch);
    System.out.println((foot+inch/12)*0.3048);
    }
    }

    5 7
    3(10/3只能是3, int inch;int在这里是一个整数。因为两个整数的运算的结果只能是整数。inch/12只能是0,因为inch小于12。如果有一个数不是整数,相除后的结果就不是整数。可以把12改成12.0,商就不是整数了。)
    foot=5,inch=7
    1.524

    10和10.0在Java中是完全不同的数;
    10.0是浮点数。

    package hello;
    import java.util.Scanner;
    public class Hello {
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    int foot;
    int inch;
    Scanner in=new Scanner(System.in);
    foot =in.nextInt();
    inch =in.nextInt();
    System.out.println(10/3.0);
    System.out.println(“foot=”+foot+”,inch=”+inch);
    System.out.println((foot+inch/12.0)*0.3048);
    }
    }
    输入:5 7
    得到:
    3.3333333333333335
    foot=5,inch=7
    1.7018


    浮点数
    带小数点的数值。浮点这个词的本意就是指小数点是浮动的,是计算机内部表达非整数(包含分数和无理数)的一种方式。另一种方式叫做定点数,不过在Java中你不会遇到定点数。人们借用浮点数这个词来表达所有的带小数点的数。


    改进

    从(foot+inch/12)*0.3048改为:

    (foot+inch/12.0)*0.3048
    当浮点数和整数放到一起运算时,Java会将整数转换成浮点数,然后进行浮点数的运算。

    double
    inch是定义为 int类型的变量,把int换成 double,我们就把它改为 double 类型的浮点数变量了。
    double的意思是“双”,它本来是“双精度浮点数”的第一个单词,人们用来表示浮点数类型。

    package hello;
    import java.util.Scanner;
    public class Hello {
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    int foot;
    double inch;
    Scanner in=new Scanner(System.in);
    foot =in.nextInt();
    inch =in.nextInt();
    System.out.println(10/3);
    System.out.println(“foot=”+foot+”,inch=”+inch);
    System.out.println((foot+inch/12)*0.3048);
    }
    }
    5 7
    3
    foot=5,inch=7.0
    1.7018


    浮点运算的精度
    浮点计算是有误差的:
    System.out.println(1.2-1.1);

    package hello;
    import java.util.Scanner;
    public class Hello {
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    int foot;
    double inch;
    System.out.println(1.2-1.1);
    Scanner in=new Scanner(System.in);
    foot =in.nextInt();
    inch =in.nextInt();
    System.out.println(10/3);
    System.out.println(“foot=”+foot+”,inch=”+inch);
    System.out.println((foot+inch/12)*0.3048);
    }
    }
    0.09999999999999987


    整数
    整数类型不能表达有小数部分的数,整数和整数的运算结果还是整数。计算机里会有纯粹的整数这种奇怪的东西,是因为整数的运算比较快,而且占地方也小。其实人们日常生活中大量做的还是纯粹整数的计算,所以整数的用处还是很大的。