gpt4 book ai didi

C++ 循环和 bool 表达式

转载 作者:行者123 更新时间:2023-11-28 07:16:54 25 4
gpt4 key购买 nike

我在大学有一个 Comp Sci 入门类(class)的作业。我们被告知只能使用循环和 bool 表达式来创建程序。这是直接指向作业表的链接:

http://cs.saddleback.edu/michele/Teaching/CS1A/Assignments/AS8%20-%20Boolean%20Expressions.pdf

我让它与一堆 If、Then、Else 语句一起工作,直到我再次阅读说明并不得不更改它。

我得到了 'm' 'f' 'M' 'F' 部分可以工作,但我无法计算 heightOK 或 weightOK(方向 #2 和 #3)。

请帮忙,谢谢!

PS 我是编程新手...

这是我目前所拥有的:`

    char gender;
int weight;
int height;
bool heightOK;
bool weightOK;

cout << "Please enter the candidate’s information (enter ‘X’ to exit).";

cout << "Gender: ";
cin.get(gender);
cin.getline(100 , '\n');

if (gender == 'm' || 'M' || 'f' || 'F')
{

}
else
{
cout << "***** Invalid gender; please enter M or F *****";
}

cout << "Height: ";
cin >> height;

cout << "Weight: ";
cin >> weight;`

最佳答案

您可以在没有 if 语句的情况下执行此操作。您应该为每个输入使用 do-while 循环,以便在输入无效时循环。然后,您可以像这样设置 bool 变量:

heightOK = ((gender == 'm' || gender == 'M') &&
(height > MALE_TOO_SHORT && height < MALE_TOO_TALL));

heightOK = (heightOK || (/*same as above, female version*/));

你可以在一行中完成所有这些,但这样很难阅读,IMO。您应该能够以相同的方式设置 weightOK。

编辑:do-while 循环请求并获取输入。然后,while 语句测试输入的有效性。

do {
cout << "enter gender (m/f)";
cin >> gender;
} while ( !(gender == 'm' || gender == 'M' || gender == 'f' || gender == 'F') );

如果要告诉用户输入无效,可以在第一次获取输入后使用while循环。

关于C++ 循环和 bool 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20086568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com