如何将米转换为英尺和英寸

时间:2015-11-02 09:45:29

标签: c#

创建一个程序,我一直在努力将米转换成英尺和英寸,但我终于让它工作了。

我现在的问题是变量inchesleft它是一个int,我正在努力弄清楚如何使它成为一个整数,因为我想删除剩余的英寸值,所以我可以获得6英尺4英寸的值等。

以下代码:

double inft, convert, inchesleft, value = 0.3048;
int ft;
string input;

Console.WriteLine("please enter amount of metres");
input = Console.ReadLine();
convert = double.Parse(input);

inft = convert / value;
ft = (int)inft;
inchesleft = convert / value % 1 *12;


Console.WriteLine("{0} feet {1} inches.", ft, inchesleft);
Console.ReadLine();

2 个答案:

答案 0 :(得分:4)

试试这个:

double inft, convert, value = 0.3048;
int ft, inchesleft;
string input;

Console.WriteLine("please enter amount of metres");
input = Console.ReadLine();
convert = double.Parse(input);

将输入数字除以0.3048以获得英尺

inft = convert / value;

现在我们得到十进制的英尺。获取脚的左侧部分(小数点前)

ft = (int)inft;

获取英尺的右边部分(小数点后)并将其除以0.08333以将其转换为英寸

double temp = (inft - Math.Truncate(inft)) / 0.08333; 

现在我们得到十进制英寸。获取英寸的左侧部分(小数点前)

inchesleft = (int)temp; // to be more accurate use temp variable which contains the decimal point value of inches 

Console.WriteLine("{0} feet {1} inches.", ft, inchesleft);
Console.ReadLine();

答案 1 :(得分:0)

我上面使用了@Waqar Ahmed方法的一些部分&略微调整一下。谢谢你。

//-----METHODS
        //VARIABLES
        double inchFeet;
        int wholeFeet;

    public double GetHeightFeet()
    {
        //CENTIMETERS TO FEET
        //PlayerHeight is ___cm input
        inchFeet = (PlayerHeight / 0.3048) / 100;
        //LEFT PART BEFORE DECIMAL POINT. WHOLE FEET
        wholeFeet = (int)inchFeet;
        return wholeFeet;
    }

    public double GetHeightInches()
    {
        //DECIMAL OF A FOOT TO INCHES TEST HEIGHT 181cm to see if 11''
        double inches = Math.Round((inchFeet - wholeFeet) / 0.0833);
        return inches;
    }