构造一个N输入 ;或门。或门返回0 ;如果它的所有输入都是0,则使用java

构造一个N输入 ;或门。或门返回0 ;如果它的所有输入都是0,则使用java,java,loops,variables,Java,Loops,Variables,确切的问题 构造一个N输入或门。如果“或”门的所有输入都为0,则“或”门返回0 为0,否则为1 输入: 3//这些是测试用例 2//这些是输入的数量 1//这些是输入 3/这些 0 0 0 四, 110 输出:1//1个案例的o/p 第二种情况为0//o/p 一, 此代码导致运行时错误 扫描程序java:907、java:1530、java:2160等错误 GFG类{ 静态整数或(整数a[],整数n,整数x){ 对于(int i=0;i0){ int n=in.nex

确切的问题

构造一个N输入或门。如果“或”门的所有输入都为0,则“或”门返回0 为0,否则为1

  • 输入:

  • 3//这些是测试用例

  • 2//这些是输入的数量

  • 1//这些是输入

  • 3/这些

  • 0 0 0

  • 四,

  • 110

  • 输出:1//1个案例的o/p

  • 第二种情况为0//o/p

  • 一,

此代码导致运行时错误

扫描程序java:907、java:1530、java:2160等错误

GFG类{
静态整数或(整数a[],整数n,整数x){
对于(int i=0;i0){
int n=in.nextInt();

对于(int i=0;i您的代码在大部分情况下都能正常工作,但是:

for(int i = 0; i < n; i++) {
    if(x == 0)
        return 0;
}
return 1;
你想要的是:

for(int i = 0; i < n; i++) {
    if(a[i] == 0)
        return 0;
}
return 1;
“输入”对话框:


你可以使用网站提供的示例输入。

你要求一个或门,但你的方法称为XOR。此外,你还有两个无法解释的方法参数。对不起,我给它命名为XOR,先生,但我想知道我的两个参数是如何解释的。对不起,我知道我问了一些愚蠢的问题,但我是初学者,我知道我不是你可以在这里找到这个代码:但是你在哪里,或者a[I]和a[I+1],基本上我用变量x来存储值a[I]| a[I+1]@user3427015不。你没有。在你的代码中,你做了两次相同的工作……让我解释一下:在
函数中,你在数组中迭代寻找零值,如果它在那里,这意味着你应该返回0。当你做
x=x+a[i]| a[i+1]时,你正试图做完全相同的事情
因此,如果您使用了
x
变量,您首先就不需要数组
a
。非常感谢您的帮助,先生……但是我非常抱歉,我尝试了您的代码,它显示了相同的错误。这里是链接:
if(x == 0) return 0; else return 1;
for(int i = 0; i < n; i++) {
    if(a[i] == 0)
        return 0;
}
return 1;
public static void main (String[] args) {
    int x = 0; // assume x is 0.
    Scanner in  = new Scanner(System.in);
    int t = in.nextInt();
    while(t > 0) {
        int n = in.nextInt();
        x = 0; // reinitialise x each time.
        for(int i = 0; i < n; i++) {
            // if and only if all inputs are 0 will x be 0.
            // if any input is 1 -> x | 1 is 1 no matter what x. So the result will be 1.
            x = x | in.nextInt();
        }
        System.out.println(x);
        t--;
    }
    in.close();
}