gpt4 book ai didi

java - 处理语言中的自定义函数

转载 作者:行者123 更新时间:2023-12-02 00:08:54 25 4
gpt4 key购买 nike

在“处理”编程语言(Java 的一种形式)方面做一些大学工作。

所以我的问题是'编写一个名为twoNumbers(int a,int b) 的函数,它接受两个参数a 和b。如果a大于b,则将两个数字相加,并在控制台窗口中显示字符串“the sum of a and b is sum”,其中a和b以及和是a、b及其值和。最后,该函数应该返回总和。'

..soo 这是我对代码的尝试,如果我将 (int a,int b) 放在客户函数之后,它只是说我的另一个 int a = number,是重复的,这是正确的,但我不知道如何给 a 和 b 一个数字而不让它认为它是重复的?我应该把它从无效的设置标签中删除吗?因为我不确定这是否会导致太多的 { 括号...

/* Question 1 */

int twoNumbers(){
int a = 30;
int b = 20;
if (a > b) {println(a+b);}
println("The sum of a and b is sum");
int sum;
sum = a+b;
println(sum);
}

任何帮助都会对解决这个问题和其他问题有很大帮助:)

谢谢!!

最佳答案

此外,您的函数没有返回值,这会给您带来错误。看来你把事情搞混了。要么将其声明为 void,要么返回声明类型的值(最后一个是您的赋值所要求的)。无论哪种方式,都需要调用函数或方法来执行,而您却没有调用它!所以你的函数内的代码没有被运行!如下:

void imAMethod()
{
println("hello");
}

这是一个有效的方法,但不会执行任何操作,您需要调用它,例如:

imAMethod();// calling your method

void imAMethod()
{
println("hello");
}

但这也不起作用,会给你错误“看起来你正在混合“主动”和“静态”模式”。那是因为要在处理中使用函数,您需要在草图中至少有一个 setup() 方法,所以:

 void setup()
{
imAMethod();
}//end of setup

void imAMethod()
{
println("hello");
}

将按预期工作。

但是你需要一个函数,所以正如 Jesper 指出的那样,你必须执行以下操作:

int a = 30; // those are global variables to pass to your function
int b = 20;
void setup()// this is a builtin basic Processing method
{
//call your function
println("The sum of " + a + " and " + b + " is "+ twoNumbers(a, b));
}

int twoNumbers(int a, int b)
{
//do your math and tests here
return result;
}

作业中还有一件事不清楚。函数必须返回某些内容,因此如果a不大于b,则不清楚该函数应返回什么。你必须处理这种情况,否则编译器会提示。您可能希望将此测试移出函数以使事情变得更容易,例如:

if (a < b)
println("The sum of " + a + " and " + b + " is "+ twoNumbers(a, b));//call your function
else
println(a + " is smaller than " + b);

在函数中只求和。但这可能不是作业所要求的......无论如何,即使a不大于b,你也需要返回一些东西。请注意,打印到控制台也可以在函数内部完成。

嗯,重新阅读作业,我认为期望的是:总是返回总和,如果 a 大于 b 则打印,这更有意义,更容易,比如:

int twoNUmbers(int a, int b)
{
if (a < b){/*print the string*/}
return a + b;
}

只是给 jlordo 的注释。在Processing.org 中,您没有主程序,或者更好的是,它对用户是透明/隐藏的。处理就像java的一种“方言”。所以上面的代码将按原样运行。有两个基本的内置函数:setup()和draw()。如果用户不使用它们中的任何一个,IDE 会将其扭曲到 setup() 函数中,该函数将在其他地方调用 main() 。它将运行一次。 Draw() 而是永远循环。

关于java - 处理语言中的自定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13271961/

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