创建一个程序,我一直在努力将米转换成英尺和英寸,但我终于让它工作了。
我现在的问题是变量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();
答案 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;
}