CodeGraderBench/CodeGraderBench huggingface dataset:
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
#include<cmath>
main_program{
	float real1;float real2;
	float imag1;float imag2; 
	cout<<"real1+imag1= " <<endl ;
	cout<<"real2+imag2= "<<endl;

	cin>>real1>>imag1>>real2>>imag2;
	 
	float x=real1+imag1;
	float y=real2+imag2;
	  
	cout<<x;
	
	cout<<y;
	float sum=0;

	 
	 sum=x+y; 
	 cout<<sum<<" " ;
	return 0;
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program{
	float a;
	float b;
	float c;
	float d;
	cin>>a>>b>>c>>d;
	
			
	cout<<"The first number is "<<a<<"+ "<<b<<"i"<<endl;
	cout<<"The second number is "<<c<<"+ "<<d<<"i"<<endl;
	
			cout<<"The operation is addition"<<endl;
			cout<<"The result is "<<(a+c)<<"+ "<<(b+d)<<endl;


			cout<<"The operation is subtraction"<<endl;
			cout<<"The result is "<<(a-c)<<"- "<<(b-d)<<endl;

			cout<<"The operation is multiplication"<<endl;
			cout<<"The result is "<<(a*c)<<"* "<<(b*d)<<endl;

			cout<<"The operation is division"<<endl;
			cout<<"The result is "<<(a/c)<<"/ "<<(b/d)<<endl;
		}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include <simplecpp>
main_program{
	float a+ib;
	int a,b,c,d;
	cin<<"a";
	cin<<"b";
	cin<<"c";
	c=a-1;
	cin<<"d";
	d=b-1;
	cout<<sum of (a+c)+i(b+d);
	wait(5);
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include <simplecpp>
main_program{
	float a,b,c,d;
	char i;
	cin>>a>>b>>c>>d>>i;
	cout<<fixed;
	cout.precision(3);
	if(i=='A') cout<<(a+c)<<" "<<(b+d)<<endl;
	else if(i=='S') cout<<(a-c)<<" "<<(b-d)<<endl;
	else if(i=='M') cout<<(a*c)-(b*d)<<" "<<(a*d)+(b*c)<<endl;
	else if(i=='D') cout<<((a*c)+(b*d))/(pow(c,2) + pow(d,2) )<<" "<<((b*c)-(a*d))/(pow(c,2) + pow(d,2))<<endl;
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program{
	float a,b,c,d;
	int i=sqrt(-1);
	a b = (a+ib);
	c d = (c+id);
      	a = real1;
	b = imag1;
	c = real2;
	d = imag2;
      cin >> a b; c d;  A;
      cout <<(a+c)+(b+d)
      cout.precision(3);// print two digits after the decimal point.
      
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program{
	float real1,imag1,real2,imag2,real,imag;
	cin>>real1>>imag1>>real2>>imag2;
	 char condition;
	cin>>condition;
	int x=condition;
	cout<<fixed;
	cout.precision(3);
	
	if (x==65){
		real= real1 + real2;
		imag = imag1 + imag2;
		cout<<real<<" "<<imag;
	}
	else if (x==77){
		real = real1*real2 - imag1*imag2;
		imag = real1*imag2 + real2*imag1;
		cout<<real<<" "<<imag;
	}
	else if (x==83){
		real = real1 - real2;
		imag= imag1 - imag2;
		cout<<real<<" "<<imag;
	}
	else if (x == 68){
		real =( real1*real2 +  imag1*imag2)/(pow(real2,2) +pow(imag2,2));
		imag= ( real2*imag1 - real1*imag2)/(pow(real2,2) + pow(imag2,2));
		cout<<real<<" "<<imag;
	}

}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program{
float r1, r2, i1, i2;
char c;
cin >> r1 >> i1 >> r2 >> i2 >> c;
if (c == "A") {
    float q = (r1 + r2); float w = (i1 + i2); 
    cout << q << " " << w << endl; }
if (c == "S") {
    cout << (r1 - r2) << " " << (i1 - i2) << endl; }
if (c == "M") {
    cout << (r1*r2 - i1*i2) << " " << (r1*i2 + r2*i1) << endl; }
if (c == "D") {
   cout << (r1*r2 + i1*i2)/(pow((r2*r2 + i2*i2), 0.5)) << " " << (i1*r2 - i2*r1)/(pow(exp(r2*r2 + i2*i2, 0.5))) << endl; }
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include <simplecpp>
main_program{
	float p,q,r,s;
	char a;
	cin>>p>>q>>r>>s>>a;
	float R,I;         //real and imaginary part outputs
	if (a==char('A')){
		R=p+r;
		I=q+s;
	}
	if (a==char('S')){
		R=p-r;
		I=q-s;
	}
	if (a==char('M')){
		R=(p*r)-(q*s);
		I=(p*s)+(q*r);
	}
	if (a==char('D')){
		R=((p*r)+(q*s))/(r*r+s*s);
		I=((q*r)-(p*s))/(r*r+s*s);
	}
	cout<<fixed;
	cout.precision(3);
	cout<<R<<" "<<I;
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include <simplecpp>
main_program{
	float a;
	float b;
	float c;
	float d;
	char x;
	cin>>a;
	cin>>b;
	cin>>c;
	cin>>d;
	cin>>x;
	char A;char M;char S;char D;
	if (x==A){
		cout << fixed;
		cout.precision(3);
		cout<<a+c<<" "<<b+d;
	}
	if (x==S){
		cout << fixed;
		cout.precision(3);
		cout<<a-c<<" "<<b-d;
	}	
	if (x==M){
		cout << fixed;
		cout.precision(3);
		cout<<((a*c)-(b*d))<<" "<<((b*c)+(a*d));		
	}
	if (x==D){
		cout << fixed;
		cout.precision(3);
		cout<<((a*c)+(b*d))/((c*c)-(d*d))<<" "<<((b*c)-(a*d))/((c*c)-(d*d));		
	}

}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program
{
	float a;
       float b;
       float c;
       float d;
       char command;
       cin>>a>>b>>c>>d;

       cin>>command;


      // char k ='i';
      // int m,n;
      // m=a+k*b;
      // n=c+k*d;
      
     //  cin>>m>>n;

      if(command=='S')
      {
     cout<<fixed;
     cout.precision(3);



    // cout<<a*c<<" "<<b*d<<"M"<<endl;
    // cout<<a/c<<" "<<b/d<<"D"<<endl;
     cout<<(a-c)<<" "<<(b-d)<<endl;
   

}

else if (command=='M'){
	 cout<<fixed;
     cout.precision(3);


	 cout<<(a*c)-(b*d)<<" "<<(b*c)+(a*d)<<endl;
}
   else if (command=='D'){
	            cout<<fixed;
     cout.precision(3);


 cout<<((a*c)+(b*d))/((pow(c,2))+(pow(d,2)))<<" "<<((b*c)-(a*d))/((pow(c,2))+(pow(d,2)))<<endl;
				 

}

 else{
           cout<<a+c<<" "<<b+d;
	   }
	   }

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
int main(){
	float a,b,c,d;

	char o;
	cin>>a>>b>>c>>d>>o;
	cout<<fixed;
	cout.precision(3);
	if(o=='A') cout<<a+c<<" "<<b+d;
	 if(o=='S') cout<<a-c<<" "<<b-d<<endl;
	 if(o=='D') cout<<(a*c+b*d)/(c*c+d*d)<<" "<<(b*c-a*d)/(c*c+d*d);
	 if(o=='M') cout<<a*c-b*d<<" "<<a*d+b*c;
	
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program
{
	float real1, real2, imag1, imag2;
        cout <<"real1"<<"real2"<<"imag1"<<"imag2";
	cin >> real1 >> real2 >> imag1 >> imag2;

	cout >> real1+real2 >>" ">> imag1+imag2 >>" ";
	cout >> real1-real2 >>" ">> imag1-imag2 >>" ";
	cout >> real1*real2 >>" ">> imag1*imag2 >>" ";
	cout >> real1/real2 >>" ">> imag1/imag2 >>" ";
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program{
	float a1,b1,a2,b2;
	cin >> a1 >>b1 >>a2 >>b2;
	char op;
	cin >>op;
	if (op=='A'){
		cout << fixed;
		cout.precision(3);
		cout <<a1+a2 <<" " <<b1+b2;
		}
	if (op=='S'){
		cout<< fixed;
		cout.precision(3);
		cout <<a1-a2 <<" " <<b1-b2;
	
	}
	if (op=='M'){
		cout<< fixed;
		cout.precision(3);
		cout <<a1*a2-b1*b2 <<" " <<a1*b2+a2*b1;
	
	}
	if (op=='D'){
		cout<< fixed;
		cout.precision(3);
		cout <<(a1*a2+b1*b2)/(a2*a2+b2*b2) <<" " <<(-a1*b2+a2*b1)/(a2*a2+b2*b2);
	}	
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include <simplecpp>
main_program{
float r1,i1,r2,i2;
char o,A,S,M,D;
cin>>r1;
cin>>i1;
cin>>r2;
cin>>i2;
cin>>o;
if(o==A){
cout<<fixed;
cout.precision(3);
cout<<r1+r2<<" "<<i1+i2;
}
else if(o=S){
cout<<fixed;
cout.precision(3);
cout<<r1-r2<<" "<<i1-i2;
}
else if(o==M){
cout<<fixed;
cout.precision(3);
cout<<r1*r2<<" "<<i1*i2;
}
else if(o==D){
cout<<fixed;
cout.precision(3);
cout<<r1/r2<<" "<<i1/i2;
}
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program{
	float real1,imag1,real2,imag2,a,b;
	char command;
	cout<<fixed;
	cout.precision(3);
	cin>>real1;
	cout<<" ";
	cin>>imag1;
	cout<<" ";
	cin>>real2;
	cout<<" ";
	cin>>imag2;
	cout<<" ";
	cin>>command;
	if(command=='A'){
		
		a=real1+real2;
		b=imag1+imag2;
	        cout<<a;
		cout<<" ";
	        cout<<b;   
		
	}
	else if(command=='S'){
		a=real1-real2;
		b=imag1-imag2;
		cout<<a;
		cout<<" ";
	        cout<<b;
		
		
	}
	else if(command=='M'){
		
		a=real1*real2-imag1*imag2;
		b=imag1*real2+imag2*real1;
		cout<<a;
		cout<<" ";
	        cout<<b;
		
	}
	else if(command=='D'){
		a=(real1*real2+imag1*imag2)/(real2*real2+imag2*imag2);
		b=(imag1*real2-imag2*real1)/(real2*real2+imag2*imag2);
		cout<<a;
		cout<<" ";
		cout<<b;
		
	}
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a program that takes as input two complex numbers and performs one of the following operations on them: addition, subtraction, multiplication, or division. The output should be the result of the operation, with 3 digits after the decimal point. The input should be two pairs of floating-point numbers indicating the real and imaginary parts of the complex numbers, separated by spaces, followed by a letter indicating the operation to be performed. The output should be two space-separated numbers, with the real part followed by the imaginary part.

Student submission:
#include<simplecpp>
main_program{
	float a,b,c,d;
	cin>>a>>b>>c>>d;
	char p; cin>>p;
	if(p=='A'){
		float real= a+c;
		float imag= b+d;
		
		cout<<fixed;
		cout.precision(3);
		cout<<real<<" "<<imag;
	}
	if(p=='S') {
		float real=a-c;
		float imag=b-d;
		
		cout<<fixed;
		cout.precision(3);
		cout<<real<<" "<<imag;
	}
	if(p=='M') {
		float real=a*c-b*d;
		float imag=a*d+b*c;
		
		cout<<fixed;
		cout.precision(3);
		cout<<real<<" "<<imag;
	}
	if(p=='D') {
		float real=(a*c+b*d)/(c*c+d*d);
		float imag=(b*c-a*d)/(c*c+d*d);
		
		cout<<fixed;
		cout.precision(3);
		cout<<real<<" "<<imag;
	} 
}

Grading criterion: Overall program correctness
Rating A: "Common requirements  of a Program are correct - i.e.
 
- header (includes, using namespace, etc)
- main syntax
- variables declaration
- overall syntax"
Rating B: Problems are present in the code(eg: printing unnecessary strings, missing semicolons & braces, wrong/missing declarations, wrong header files)
Rating C: 0
Rating D: 0
Assigned grade: A