提问者:小点点

怎么写一个里面有计数器的函数?


第一周编码,请亲切。
我需要从用户得到4个输入,如果其中的2个是-100我需要函数说你失败。

我需要在这里实现函数,并可能在里面添加一个计数器,但我不知道如何实现。

代码如下所示

cout << "What are the grades of your 4 take-home exams? ";
    cin >>th1>>th2>>th3>>th4;
function here

共2个答案

匿名用户

我需要从用户那里得到4个输入

cin >>th1>>th2>>th3>>th4;

看来这是对的。

如果其中2个是-100

答案就在你的问题本身。 关注如果这个词。

编程语言有各种不同的检查方法,检查某物是否等于其他物,或者某物是否小于其他物,运行某段代码。 我们称这些条件。 如果某个条件为真,就做点什么,否则,就做点不同的事。 示例:

int x = 0;
cin >> x; // take input from user
if (x > 20)
{
   cout << "x is greater than 20";
}
else 
{
   cout << "x is less than 20";
}

而且,你甚至可以同时检查两个变量!!

int x = 1;
int y = 2;
if (x == 1 && y == 2)
   cout << "X is 1, and y is 2";
else
   //print something else

函数是将一些代码放在块中的一种方法,您可以随时重用这些代码。 想象一下,假设你在做蛋糕,你需要某种糖浆。 现在如果你愿意,你可以每次都从零开始做那个糖浆,或者你可以只做很多糖浆,每次你想做蛋糕的时候都用它。 这绝对是个不好的例子,但你明白了。

让我们做一个小函数。 这个函数将接受一个int作为参数,并检查该参数是否等于100。 如果它等于100,我们将返回一个值:1给调用方。 否则,我们将返回一个值:0:

int checkIfHundredOrNot(int value)
{
    if (value == 100)
       return 1;
    else
       return 0;
}

//caller
int main()
{
    int x = 0;
    cin >> x;
    int result = checkIfHundredOrNot(int value);
    cout << "Result is: " << result;
    return 0;
}

有了这些信息,试着解决你的问题。 它应该是相当简单的。 如果你发现什么困难,就用谷歌搜索一下。 你会在那里找到你所有的答案。 特别是谷歌这个:

  • C++中的函数参数是什么?
  • C++中的返回值是什么?
  • C++中的函数是什么?
  • 为什么在C++中使用函数?
  • C++中的运算符是什么?
  • C++中的比较运算符是什么?
  • ===之间有区别吗?

然后仔细阅读它们,并亲手写下每一段代码,重复直到你理解为止。

匿名用户

所以我自己也有点笨,但我会试一试。 我建议大家看看我的解决方案,并尝试用“你”的方式来做你的,因为有很多方法可以找到正确的答案。 如果你真的很明确只有4个输入,你可以试一下:

bool isFail(int a, int b, int c, int d) {

int counter = 0;
if (a == -100) {
    counter++;
}
if (b == -100) {
    counter++;
}
if (c == -100) {
    counter++;
}
if (d == -100) {
    counter++;
}

if (counter >= 2) {
    return true;
}
else
{
    return false;
}

}

这个函数基本上需要4个整数,并根据-100检查每一个整数。 如果结果是-100,则计数器增加1。 然后,我们简单地检查计数器是否等于或大于2,如果是,我们返回一个true值,因为它是失败的(两个或更多的输入是-100)。 如果不是,我们只返回一个false。

在main函数中,您可以简单地初始化变量,输入它们,并简单地执行一个函数调用,以便与另一个“true”值进行比较。 如果结果是肯定的,则打印出一条失败消息。

int a, b, c, d;
std::cin >> a >> b >> c >> d;

if (isFail(a, b, c, d) == true) {
    std::cout << "Fail!" << std::endl;;
}
else
{
    std::cout << "Passed!" << std::endl;
}

最好的问候!