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 {
    int a; int b; int c;
    cin >> a >> b >> c;
    int x; int y; int z;
    cin >> x >> y >> z;

    if(a==1 && x==1 && (b==1 || y==1) && (c==1 || z==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 n,m ;
cin>>n,m>>"What are skills in newcode,debugging and optimization of A and B respectively ?";
if(){n = 111 ; m = 111;,
n=100 ;m=111;,
n=101 ;m=110;,
n=101 ;m=111;,
n=100 ;m=111; 
cout<<"Youre Compatible";
else 
cout<<"youre 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: 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{
    int n;
    int m;
    int j;
    cin>>n;
    cin>>m;
    for(j=1;j<2;j++){
    if("n=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>
bool newCode(int A, int B){
  return  (A==1 && B==1);
}
bool deBug(int A, int B){
return (A==1 || B==1);
}
bool optimize(int A,int B){
return (A==1 || B==1);
}

   
main_program{
      int skill_A;
      int skill_B;
      int nc;
      int db;
      int op;
      
    for(int i=1;i<=3;i++){
         cin>>skill_A;
         cin>>skill_B;
      if(i==1) nc=newCode(skill_A,skill_B);
      
      if(i==2) db=deBug(skill_A,skill_B);
      if(i==3) op=optimize(skill_A,skill_B);
      cout<<endl;
    }
    
    if(nc && db && op) 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 A_newcode,A_debug,A_optimize,B_newcode,B_debug,B_optimize;
    cin>>A_newcode>>A_debug>>A_optimize;
    cin>>B_newcode>>B_debug>>B_optimize;
    if(((A_newcode && B_newcode)==1)&&((A_debug||B_debug)==1)&&((A_optimize||B_optimize)==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, dbA, opmA, ncB, dbB, opmB;
    cin>>ncA>>dbA>>opmA;
    cin>>ncB>>dbB>>opmB;
    if((ncA==1 && ncB==1)&&(dbA==1 || dbB==1)&&(opmA==1 || opmB==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 <iostream>
using namespace std;
int main(){
    int n1,d1,o1;
    cin>>n1>>d1>>o1;
    int n2,d2,o2;
    cin>>n2>>d2>>o2;
    int k=0;
    if(n1&&n2) k+=1;
    if(d1||d2) k+=1;
    if(o1||o2) k+=1;
    if(k==3) 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 a1,a2,a3,b1,b2,b3;
    cin>>a1>>a2>>a3;
    cin>>b1>>b2>>b3;
    if ( (a1*b1==1) && (a2+b2>0) && (a3+b3>0))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>

int main(){
    bool c1NewCode, c1Debugging, c1Optimizing;
    bool c2NewCode, c2Debugging, c2Optimizing;
    
    cin>>c1NewCode>>c1Debugging>>c1Optimizing;
    cin>>c2NewCode>>c2Debugging>>c2Optimizing;
    if ((c1NewCode&&c2NewCode) && (c1Debugging||c2Debugging) && (c1Optimizing||c2Optimizing))
        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 p1_c,p1_d,p1_o,p2_c,p2_d,p2_o;
    bool comp = true;
    cin >> p1_c >> p1_d >> p1_o;
    cin >> p2_c >> p2_d >> p2_o;
    while (true) {
        if (!(p1_c && p2_c)) {
               comp = false;
               break;
        }
        if (!(p1_d || p2_d)) {
                comp = false;
                break;
        }
        if (!(p1_o || p2_o)) {
                comp = false;
                break;
        }
        break;
    }
    if (comp == true) 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 <iostream>
using namespace std;

int main(){
    int skA1,skA2,skA3,skB1,skB2,skB3,a,b,c;
    cin >> skA1>>skA2>>skA3>>skB1>>skB2>>skB3;
    if (skA1== 1 && skB1 == 1){
        a = 1;
    }
    else {a=0;}
    if (skA2 !=0 || skB2 != 0){
        b=1;
    }
    else{
        b=0;
    }
    if (skA3!=0 || skB3 != 0){
        c=1;
    }
    else {
        c=0;
    }
    if (a==b && b==c ){
        cout << "compatible";
    }
    else if (a==c && b==a){ 
        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<iostream>
using namespace std;

bool newcode(int n1,int m1) {
    if(n1==1&&m1==1) return true;
    else return false;
}
bool debugging(int n2,int m2) {
    if(n2==1||m2==1) return true;
    else return false;
}
bool optimizing(int n3,int m3) {
    if(n3==1||m3==1) return true;
    else return false;
}

int main() {
    int n1,n2,n3,m1,m2,m3;
    cin>> n1 >> m1;
    cin>> n2 >> m2;
    cin>> n3 >> m3;
    if(newcode(n1,m1)&&debugging(n2,m2)&&optimizing(n3,m3)) {
        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