2

这是我第一次使用任何类型的高级数学构建 iOS 项目。我已经搜索了很长一段时间,但还没有找到任何东西来解决我的问题。我对iOS还是很陌生,所以任何帮助都将不胜感激。

我正在尝试使用一个基本tan()函数,该函数从文本字段中获取输入,将其转换为度数(因为 tan() 默认为弧度)并显示在标签中。如果我将 tan 30 输入到计算器中,它将返回 0.577,我得到 0.449,这很接近,但如果我输入 31,我会收到“2.356”的值?

这是我的代码的一部分:

-(IBAction)calculate {
float x = ([textField1.text intValue]);
float d = (x * 180) / M_PI;
float y = tan(d);


label.text = [[NSString alloc] initWithFormat:@"%2.3f", y];
}
4

3 回答 3

1

您使用的格式字符串 ( %2.f) 不适合数据 - 它指定不应显示小数位。尝试仅使用%f.

于 2012-04-30T00:19:41.407 回答
0

试试这个

-(IBAction)calculate {
float x = textField1.text.doubleValue;
float d = (x * 180) / M_PI;
float y = tan(d);

label.text = [NSString stringWithFormat:@"%0.3f", y];
于 2012-04-30T00:34:13.650 回答
0

你的“d”是一个浮点数。尝试使用 tanf() 而不是 tan()。

于 2012-04-30T01:13:04.050 回答