CodeGraderBench/CodeGraderBench huggingface dataset:
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>

main_program{
    bool nc1,db1,op1;
    cin>>nc1>>db1>>op1;
    bool nc2,db2,op2;
    cin>>nc2>>db2>>op2;

    if(nc1&&nc2){
        if(db1||db2){
            if(op1||op2){
                cout<<"compatible";
            }else{
                cout<<"not compatible";
            }
        }else{
            cout<<"not compatible";
        }
    }else{
        cout<<"not compatible";
    }
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    int a,b,c;
    int x,y,z;
    int j=0,k=0,m=0;
    cin>>a>>b>>c;
    cin>>x>>y>>z;
    if(a==1 && x==1){
        j=1;
    }
    if (b==1 || y==1){
        k=1;
    }
    if (c==1 || z==1){
        m=1;
    }
    if (j==1 && k==1 && m==1){
        cout<<"compatible";
    }else{
        cout<<"not compatible";
    }
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    bool a,b,c,d,e,f;
    cin>>a >>b>> c;
    cin>>d >>e >>f;
bool g,h,i;
g=a&d;h=b|e;i=c|f;
if (g==1&&h==1&&i==1){cout<<"compatible";}
else{cout<<"not compatible";}}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>

main_program {
    int nc1=0, nc2=0, dbg1=0, dbg2=0, opt1=0, opt2=0; // nc for new code, dbg for debugging,opt for optimizing
    cin >> nc1 >> dbg1 >> opt1;
    cin >> nc2 >> dbg2 >> opt2;
    if((nc1==1 && nc2==1) && (dbg1==1 || dbg2==1) && (opt1==1 || opt2==1))
    cout << "compatible";
    else
    cout<< "not compatible";

    

}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>
main_program {
        int nca,ncb,da,db,oa,ob;
        cin >> nca >> da >> oa;
        cin >> ncb >> db >> oa;
        int nc,d,o;
        nc=(nca==1 && ncb==1 ? 1 : 0);
        d=(da==1 || db==1 ? 1 : 0);
        o=(oa=1 || ob==1 ? 1: 0);

        if(nc==1 && (o==1 || d ==1)) {
                cout << "compatible" << endl;
        }
        else {
                cout << "not compatible" << endl;
        }
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>
bool newcode(bool a,bool b){
    bool k=0;
    if(a==1 && b==1){
        k=1;
    }
    return k;
}
bool debug(bool a,bool b){
    bool k=0;
    if(a==1 || b==1){
        k=1;
    }
    return k;
}
bool optimize(bool a,bool b){
    bool k=0;
    if(a==1 || b==1){
        k=1;
    }
    return k;
}

main_program{
    bool a,b,c,d,e,f,t =0,x=0,y=0;
    cin>>a>>b>>c ;
    cin>>d>>e>>f ;
    if(newcode(a,d)==1) t=1;
    if(debug(b,e)==1) x=1;
    if(optimize(c,f)==1) y=1;

    if(t==1 && x==1 && y==1){
        cout<<"compatible";
    }else{
        cout<<"not compatible";
    }

}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
bool skillValueA;
bool skillValueB;
cout << "";
cin >> skillValueA;
cout << "";
cin >> skillValueB;
if((skillValueA && skillValueB) &&  (skillValueA || skillValueB) &&  (skillValueA || skillValueB) ){
cout << "compatible";
}
else{
cout << "non-compatible";
}
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: C
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include <simplecpp>
bool fun1(bool a, bool b){
    bool c= a*b;
    if (c==1) return 1;
    else return 0;
}
bool fun2(bool a, bool b){
    bool c= a+b;
    if (c==1) return 1;
    else return 0;
}
main_program{
    int x=0;
    for (int i=1; i<=3; i++){
        if(i!=1){
            bool a, b;
            cin>>a>>b;
            bool c=fun2(a,b);
            if (c==0) {
                cout << "not compatible";
                break;
            }
            x+=1;
            continue;
        }
        else{
            bool a, b;
            cin>>a>>b;
            bool c=fun1(a,b);
            if (c==0) {
                cout << "not compatible";
                break;
            }
            x+=1;
        }
    }
    if(x==3) cout<< "compatible";
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: B
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program {
    int a,b,c,d,e,f;
    cin>>a>>b>>c;
    cin>>d>>e>>f;
    
    
    
    if(a==1&&d==1){
        if((b==1||e==1)&&(c==1||f==1))
        cout<<"compatible"<<endl;
    }
    else {
    cout<<"not compatible"<<endl;}
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
  char ='A', char ='B'
cin>>h
if(A==1 && B==1){ 
    cout<<"compatible";
 }else{ cout<<"not compatible"} 
 else if ( A==1 || B==1) {
    cout<<"compatible";
 } else if ( A==1|| B==1)
 {cout<<"compatible";}
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: C
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>

main_program{
    bool a1, a2, a3, b1, b2, b3;
    cin >> a1 >> a2 >> a3;
    cin >> b1 >> b2 >> b3;

    if(a1 && b1){
        if((a2 || b2) && (a3 || b3)){
            cout << "compatible" << endl;
        }else{
            cout << "not compatible" << endl;
        }
    }else{
        cout << "not compatible" << endl;
    }
}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    
    
    unsigned int x,y,z,p,q,r;
    cin>>x>>y>>z>>p>>q>>r;
   if(x+p==2){
   if(y+q>=1){
   if(z+r>=1){cout<<"compatible";}}}

   else cout<<" not compatible";}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A
Problem: A multinational company wants to form a team consisting of two programmers for an upcoming project. The team selection depends on three distinct skills:

1. New Code
2. Debugging
3. Optimizing

Each programmer has a value of either 0 or 1 for each skill:
- 1 indicates the programmer is skilled in that area.
- 0 indicates the programmer is not skilled in that area.

Compatibility Condition:

Two programmers A and B are considered compatible if all the following conditions are satisfied:

1. Both programmers must be good at new code.
   (Both A and B must have a value of 1 for "new code".)

2. At least one programmer must be good at debugging.
   (Either A or B must have a value of 1 for "debugging".)

3. At least one programmer must be good at optimizing.
   (Either A or B must have a value of 1 for "optimizing".)

Write a C++ program to take the skill values of two programmers as input and determine whether they are compatible.

If they are compatible, print:
compatible

Otherwise, print:
not compatible

Note:
- Output must be in lowercase.
- Do not print any extra messages or prompts.

Input:
Six integers representing the skills of two programmers:
A_new A_debug A_opt B_new B_debug B_opt

Output:
Print "compatible" if conditions are satisfied, otherwise print "not compatible".

Student submission:
#include<simplecpp>
main_program{
    bool a,b,c;
    cin >> a >> b >> c;
    bool x,y,z;
    cin >> x >> y >> z;
    if((a&&x)&&(b||y)&&(c||z)){
        cout << "compatible";

    }
    else{
        cout << "not compatible";
    }

}

Grading criterion: Checking New Code Condition
Rating A: Correctly checks the new code condition using AND

Rating B: some issue
Rating C: major issue
Rating D: 0
Assigned grade: A