- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好吧,这会有点长,我对此表示歉意,但就在这里。
我正在开发的应用程序是一个计算 body 脂肪百分比的“健身”应用程序。它有男性侧和女性侧。
我有3个男生类和3个女生类。
maleBFCinput
maleBFCdata
maleBFCresults
femaleBFCinput
femaleBFCdata
femaleBFCresults
在输入类中,我有用于用户输入的文本字段,计算在“maleBFCinput.m”内进行。一旦完成计算,它们就会被转移到“数据”类,然后转移到“结果”类。
男性方面工作完美。然而,女性方面才是问题所在。在 results.xib 上我有 7 个标签。年龄/高度/体重/最小体重/最大体重/体脂/允许的体脂。
女性结果上的“体脂”标签返回 0 。使用我用来计算男性一侧的相同技术,它按预期工作,我不断得到 0。
我在输入屏幕上使用 float 来保存较小计算中的所有“临时值”,然后进入“体脂计算”。
下面是我的代码的小片段。
femaleBFCinput.h
UITextField *ageInput;
UITextField *heightInput;
UITextField *weightInput;
UITextField *hips1Input;
UITextField *hips2Input;
UITextField *hips3Input;
UITextField *neck1Input;
UITextField *neck2Input;
UITextField *neck3Input;
UITextField *abdomen1Input;
UITextField *abdomen2Input;
UITextField *abdomen3Input;
float heightFactor;
float weightFactor;
float abHipsFactor;
float abFactor;
float neckFactor;
float minWeight;
float maxWeight;
float maxBodyFatPercentage;
float abdomenAvg;
float neckAvg;
float hipsAvg;
float abHipsValue;
float abNeckSubValue;
float bodyFatPercentage;
float circumferenceValue;
}
@property(nonatomic,retain) IBOutlet UITextField *ageInput;
@property(nonatomic,retain) IBOutlet UITextField *weightInput;
@property(nonatomic,retain) IBOutlet UITextField *heightInput;
@property(nonatomic,retain) IBOutlet UITextField *abdomen1Input;
@property(nonatomic,retain) IBOutlet UITextField *abdomen2Input;
@property(nonatomic,retain) IBOutlet UITextField *abdomen3Input;
@property(nonatomic,retain) IBOutlet UITextField *neck1Input;
@property(nonatomic,retain) IBOutlet UITextField *neck2Input;
@property(nonatomic,retain) IBOutlet UITextField *neck3Input;
@property(nonatomic,retain) IBOutlet UITextField *hips1Input;
@property(nonatomic,retain) IBOutlet UITextField *hips2Input;
@property(nonatomic,retain) IBOutlet UITextField *hips3Input;
- (float) getMinWeight;
- (float) getMaxWeight;
- (float) getCircumferenceValue;
- (float) getMaxBodyFatPercentage;
- (float) getAbdomenAvg;
- (float) getNeckAvg;
- (float) getAbHipsFactor;
- (float) getBodyFatPercentage;
- (float) getHipsAvg;
femaleBFCinput.m
// Get Abdomen Avg..
- (float) getAbdomenAvg
{
float abdomen1Float = [abdomen1Input.text floatValue];
float abdomen2Float = [abdomen2Input.text floatValue];
float abdomen3Float = [abdomen3Input.text floatValue];
(abdomenAvg = ((abdomen1Float + abdomen2Float + abdomen3Float) / 3));
return abdomenAvg;
}
// Get Neck Avg..
- (float) getNeckAvg
{
float neck1Float = [neck1Input.text floatValue];
float neck2Float = [neck2Input.text floatValue];
float neck3Float = [neck3Input.text floatValue];
(neckAvg = ((neck1Float + neck2Float + neck3Float) / 3));
return neckAvg;
}
// Get Hips Avg..
- (float) getHipsAvg
{
float hips1Float = [hips1Input.text floatValue];
float hips2Float = [hips2Input.text floatValue];
float hips3Float = [hips3Input.text floatValue];
(hipsAvg = ((hips1Float + hips2Float + hips3Float) / 3));
return hipsAvg;
}
//-----Get AbNeck Factor----------------------------------
- (float) getAbHipsFactor
{
float abTempAvg = [self getAbdomenAvg];
float hipsTempAvg = [self getHipsAvg];
(abHipsValue = (abTempAvg + hipsTempAvg));
return abHipsValue;
}
//----Get Circumference Value-----------------------------
- (float) getCircumferenceValue
{
(circumferenceValue = (abHipsValue - neckAvg));
return circumferenceValue;
}
// Get Body Fat Percentage..
- (float) getBodyFatPercentage
{
float circumferenceTempValue = [self getCircumferenceValue];
float heightTempValue = [heightInput.text floatValue];
if (heightTempValue >= 58.00 && heightTempValue <= 58.49) {
if (circumferenceTempValue >= 45.00 && circumferenceTempValue <= 45.49) {bodyFatPercentage = 19;}
else if (circumferenceTempValue >= 45.50 && circumferenceTempValue <= 45.99) {bodyFatPercentage = 20;}
else if (circumferenceTempValue >= 46.00 && circumferenceTempValue <= 46.49) {bodyFatPercentage = 21;}
else if (circumferenceTempValue >= 46.50 && circumferenceTempValue <= 46.99) {bodyFatPercentage = 21;}
else if (heightTempValue >= 77.50 && heightTempValue <= 77.99) {
if (circumferenceTempValue >= 53.50 && circumferenceTempValue <= 53.99) {bodyFatPercentage = 19;}
else if (circumferenceTempValue >= 54.00 && circumferenceTempValue <= 54.49) {bodyFatPercentage = 20;}
else if (circumferenceTempValue >= 54.50 && circumferenceTempValue <= 54.99) {bodyFatPercentage = 20;}
else if (circumferenceTempValue >= 55.00 && circumferenceTempValue <= 55.49) {bodyFatPercentage = 21;}
etc..
etc.. (theres about 4000ish lines of if / else if statements in here so i just pasted a few so you see what i have)
else if (circumferenceTempValue >= 77.50 && circumferenceTempValue <= 77.99) {bodyFatPercentage = 45;}
else if (circumferenceTempValue >= 78.00 && circumferenceTempValue <= 78.49) {bodyFatPercentage = 46;}
else if (circumferenceTempValue >= 78.50 && circumferenceTempValue <= 78.99) {bodyFatPercentage = 46;}
else if (circumferenceTempValue >= 79.00 && circumferenceTempValue <= 79.49) {bodyFatPercentage = 47;}
}
return bodyFatPercentage;
}
- (IBAction)calculate:(id)sender {
FemaleBFCresults *femaleBFCresults = [[FemaleBFCresults alloc] initWithNibName:@"FemaleBFCresults" bundle:nil];
FemaleBFCdata *femaleBFCData = [[FemaleBFCdata alloc] init];
femaleBFCresults.femaleBFCdata = femaleBFCData;
femaleBFCresults.femaleBFCdata.ageInput = ageInput.text;
femaleBFCresults.femaleBFCdata.heightInput = heightInput.text;
femaleBFCresults.femaleBFCdata.weightInput = weightInput.text;
NSString *minWeightString = [[NSString alloc] initWithFormat:@"%.0f", [self getMinWeight]];
femaleBFCresults.femaleBFCdata.minWeight = minWeightString;
[minWeightString release];
NSString *maxWeightString = [[NSString alloc] initWithFormat:@"%.0f", [self getMaxWeight]];
femaleBFCresults.femaleBFCdata.maxWeight = maxWeightString;
[maxWeightString release];
NSString *maxBodyFatString = [[NSString alloc] initWithFormat:@"%.0f", [self getMaxBodyFatPercentage]];
femaleBFCresults.femaleBFCdata.maxBodyFat = maxBodyFatString;
[maxBodyFatString release];
NSString *bodyFatString = [[NSString alloc] initWithFormat:@"%.0f", [self getBodyFatPercentage]];
femaleBFCresults.femaleBFCdata.bodyFat = bodyFatString;
[bodyFatString release];
femaleBFCresults.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:femaleBFCresults animated:YES];
[self.view removeFromSuperview];
[femaleBFCresults release];
}
femaleBFCdata.h
@interface FemaleBFCdata : NSObject {
NSString *ageInput;
NSString *heightInput;
NSString *weightInput;
NSString *neckAvg;
NSString *abAvg;
NSString *hipsAvg;
NSString *abHipFactor;
NSString *bodyFat;
NSString *maxBodyFat;
NSString *minWeight;
NSString *maxWeight;
NSString *circumference;
}
@property (nonatomic, retain) NSString *ageInput;
@property (nonatomic, retain) NSString *heightInput;
@property (nonatomic, retain) NSString *weightInput;
@property (nonatomic, retain) NSString *neckAvg;
@property (nonatomic, retain) NSString *abAvg;
@property (nonatomic, retain) NSString *hipsAvg;
@property (nonatomic, retain) NSString *abHipFactor;
@property (nonatomic, retain) NSString *bodyFat;
@property (nonatomic, retain) NSString *maxBodyFat;
@property (nonatomic, retain) NSString *minWeight;
@property (nonatomic, retain) NSString *maxWeight;
@property (nonatomic, retain) NSString *circumference;
女BFCdata.m
@synthesize ageInput;
@synthesize heightInput;
@synthesize weightInput;
@synthesize neckAvg;
@synthesize abAvg;
@synthesize hipsAvg;
@synthesize abHipFactor;
@synthesize bodyFat;
@synthesize maxBodyFat;
@synthesize minWeight;
@synthesize maxWeight;
@synthesize circumference;
- (void)dealloc {
self.ageInput = nil;
self.heightInput = nil;
self.weightInput = nil;
self.neckAvg = nil;
self.abAvg = nil;
self.hipsAvg = nil;
self.abHipFactor = nil;
self.bodyFat = nil;
self.maxBodyFat = nil;
self.minWeight = nil;
self.maxWeight = nil;
self.circumference = nil;
[super dealloc];
}
femaleBFCresults.h
@interface FemaleBFCresults : UIViewController {
FemaleBFCdata *femaleBFCdata;
UILabel *displayAge;
UILabel *displayHeight;
UILabel *displayWeight;
UILabel *displayBodyFat;
UILabel *displayMaxBodyFat;
UILabel *displayMinWeight;
UILabel *displayMaxWeight;
}
@property (nonatomic, retain) FemaleBFCdata *femaleBFCdata;
@property (nonatomic, retain) IBOutlet UILabel *displayAge;
@property (nonatomic, retain) IBOutlet UILabel *displayHeight;
@property (nonatomic, retain) IBOutlet UILabel *displayWeight;
@property (nonatomic, retain) IBOutlet UILabel *displayBodyFat;
@property (nonatomic, retain) IBOutlet UILabel *displayMaxBodyFat;
@property (nonatomic, retain) IBOutlet UILabel *displayMinWeight;
@property (nonatomic, retain) IBOutlet UILabel *displayMaxWeight;
- (IBAction)goBack:(id)sender;
@end
女BFCdata.m
@synthesize femaleBFCdata;
@synthesize displayAge;
@synthesize displayHeight;
@synthesize displayWeight;
@synthesize displayBodyFat;
@synthesize displayMaxBodyFat;
@synthesize displayMinWeight;
@synthesize displayMaxWeight;
- (void)viewDidLoad {
self.displayAge.text = femaleBFCdata.ageInput;
self.displayHeight.text = femaleBFCdata.heightInput;
self.displayWeight.text = femaleBFCdata.weightInput;
self.displayBodyFat.text = femaleBFCdata.bodyFat;
self.displayMaxBodyFat.text = femaleBFCdata.maxBodyFat;
self.displayMinWeight.text = femaleBFCdata.minWeight;
self.displayMaxWeight.text = femaleBFCdata.maxWeight;
[super viewDidLoad];
}
- (void)dealloc {
[displayAge dealloc];
[displayHeight dealloc];
[displayWeight dealloc];
[displayBodyFat dealloc];
[displayMaxBodyFat dealloc];
[displayMinWeight dealloc];
[displayMaxWeight dealloc];
[super dealloc];
}
就像我说的,男性类(class)的完成方式完全相同,这是完美的。但在女类,我的成绩类的返回率一直为 0,我似乎不明白为什么。我已经为此工作了几个月了。我休息了几周,我以为在休息之前我已经完成了这项工作,但我想我没有。有没有人有任何想法可以帮助我解决这个问题?
最佳答案
您绝对确定您的输入字段 socket 均已连接吗?向 nil 导出询问其 -floatValue 将会得到 nil(解释为 0)响应。
关于objective-c - 浮点值返回0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5524192/
#include using namespace std; class C{ private: int value; public: C(){ value = 0;
这个问题已经有答案了: What is the difference between char a[] = ?string?; and char *p = ?string?;? (8 个回答) 已关闭
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 7 年前。 此帖子已于 8 个月
除了调试之外,是否有任何针对 c、c++ 或 c# 的测试工具,其工作原理类似于将独立函数复制粘贴到某个文本框,然后在其他文本框中输入参数? 最佳答案 也许您会考虑单元测试。我推荐你谷歌测试和谷歌模拟
我想在第二台显示器中移动一个窗口 (HWND)。问题是我尝试了很多方法,例如将分辨率加倍或输入负值,但它永远无法将窗口放在我的第二台显示器上。 关于如何在 C/C++/c# 中执行此操作的任何线索 最
我正在寻找 C/C++/C## 中不同类型 DES 的现有实现。我的运行平台是Windows XP/Vista/7。 我正在尝试编写一个 C# 程序,它将使用 DES 算法进行加密和解密。我需要一些实
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
有没有办法强制将另一个 窗口置于顶部? 不是应用程序的窗口,而是另一个已经在系统上运行的窗口。 (Windows, C/C++/C#) 最佳答案 SetWindowPos(that_window_ha
假设您可以在 C/C++ 或 Csharp 之间做出选择,并且您打算在 Windows 和 Linux 服务器上运行同一服务器的多个实例,那么构建套接字服务器应用程序的最明智选择是什么? 最佳答案 如
你们能告诉我它们之间的区别吗? 顺便问一下,有什么叫C++库或C库的吗? 最佳答案 C++ 标准库 和 C 标准库 是 C++ 和 C 标准定义的库,提供给 C++ 和 C 程序使用。那是那些词的共同
下面的测试代码,我将输出信息放在注释中。我使用的是 gcc 4.8.5 和 Centos 7.2。 #include #include class C { public:
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
我的客户将使用名为 annoucement 的结构/类与客户通信。我想我会用 C++ 编写服务器。会有很多不同的类继承annoucement。我的问题是通过网络将这些类发送给客户端 我想也许我应该使用
我在 C# 中有以下函数: public Matrix ConcatDescriptors(IList> descriptors) { int cols = descriptors[0].Co
我有一个项目要编写一个函数来对某些数据执行某些操作。我可以用 C/C++ 编写代码,但我不想与雇主共享该函数的代码。相反,我只想让他有权在他自己的代码中调用该函数。是否可以?我想到了这两种方法 - 在
我使用的是编写糟糕的第 3 方 (C/C++) Api。我从托管代码(C++/CLI)中使用它。有时会出现“访问冲突错误”。这使整个应用程序崩溃。我知道我无法处理这些错误[如果指针访问非法内存位置等,
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,因为
我有一些 C 代码,将使用 P/Invoke 从 C# 调用。我正在尝试为这个 C 函数定义一个 C# 等效项。 SomeData* DoSomething(); struct SomeData {
这个问题已经有答案了: Why are these constructs using pre and post-increment undefined behavior? (14 个回答) 已关闭 6
我是一名优秀的程序员,十分优秀!