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>
main_program{
	float a,b,c,d,real,imag;
	char e;
	cin>> a>>b>>c>>d>>e;
	
        if( e==65){ real=a+c;
		     imag=b+d;
	             }
	if(e== 83){ real=a-c;
	             imag=b-d;
	                 }
	if(e== 77) {real=a*c-b*d;
	             imag=b*c+a*d;
	                 }
	if(e== 68){ real=(a*c+b*d)/(c*c+d*d);
	             imag=(b*c-a*d)/(c*c+d*d);
	                }
	cout<<fixed;
	cout.precision(3);
	cout << real<<" "<< imag;
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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,l1,l2;
	char L;
	cin>>r1>>l1>>r2>>l2>>L;

	cout<<fixed; cout.precision(3);

	if(L=='A'){
		cout<<r1+r2<<" "<<l1+l2;
	}
	if(L=='S'){
		cout<<r1-r2<<" "<<l1-l2;
	}
	if(L=='M'){
		cout<<(r1*r2-l1*l2)<<" "<<(r1*l2+r2*l1);
	}
	if(L=='D'){
		cout<<(r1*r2+l1*l2)/(r2*r2+l2*l2)<<" "<<(r2*l1-r1*l2)/(r2*r2+l2*l2);
	}


}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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 x1,y1,x2,y2;char n ; cin >> x1 >> y1 >> x2 >> y2 ;
char S,M,D,A;
cin >> n;
	cout << fixed;
	cout.precision(3);
	if(n == A){
		cout << x1+x2 << " " << y1+y2 << endl;}
	else if(n == S){
		cout << x1-x2 << " " << y1-y2 << endl;}
	else if(n == M){
		cout << (x1*x2)-(y1*y2) << " " << (x1*y2)+(x2*y1) << endl ; }
	else if(n == D){
		cout << ((x1*x2)-(y1*y2))/(x2*x2+y2*y2) << " " << ((x1*y2)+(x2*y1))/(x2*x2+y2*y2) << endl ;}
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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 r1,i1,r2,i2,a,b;
		char c;
	cin>> r1>>i1>>r2>>i2>>c;
	if(c=='A'){
		a=r1+r2;
		b=i1+i2;
		cout<<fixed;
		cout.precision(3);
		cout<<a<<" "<<b;
		
	}
if(c=='S'){
	a=r1-r2;
	b=i1-i2;
	cout<<fixed;
	cout.precision(3);
	cout<<a<<" "<<b;
}
if(c=='M'){
	a=r1*r2-i1*i2;
	b=r1*i2+r2*i1;
	cout<<fixed;
	cout.precision(3);
	cout<<a<<" "<<b;
}
if(c=='D'){
	a=(r1*r2+i1*i2)/(r2*r2+i2*i2);
	b=(r2*i1-r1*i2)/(r2*r2+i2*i2);
	cout<<a<<" "<<b;
}
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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{
double real1,real2,imag1,imag2;	
cin>>real1;
cin>>imag1;
cin>>real2;
cin>>imag2;
char i;
double sum,sub,mul,di;
char A,S,M,D;
if(cin>>A){
sum=((real1+real2)+((imag1+imag2)*i));
cout<<(real1+real2)<<" ";
cout<<(imag1+imag2);
}
if(cin>>S){
sub=((real1-real2)+((imag1-imag2)*i));
cout<<(real1-real2)<<" ";
cout<<(imag1-imag2);}
if (cin>>M){
mul=(((real1*real2)-(imag1*imag2))+(((real1*imag2)+(real2*imag1))*i));
cout<<((real1*real2)-(imag1*imag2))<<" ";
cout<<((real1*imag2)+(real2*imag1));}
if(cin>>D){
di=(((real1*real2)-(imag1*imag2)))/((real2*real2)+(imag2*imag2)) +(((((real2*imag1)-(real1*imag2))))/((real2*real2)+(imag2*imag2))*i);
cout<<(((real1*real2)-(imag1*imag2)))/((real2*real2)+(imag2*imag2))<<" ";
cout<<((((real2*imag1)-(real1*imag2))))/((real2*real2)+(imag2*imag2));}}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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{
        char i;
        float a,b,c,d;
        cin >> a >> b >> c >> d >>i;
        if (i == 'A') cout << a+c << " "<< b+d;
        if(i== 'S') cout << a-c << " " << b-d;
        if ( i =='M') cout << a*c - b*d << " "<< b*c + a*d;
        if ( i=='D') cout << (a*c + b*d)/(c*c+d*d) <<" "<<(b*c-a*d)/(c*c+d*d);
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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;
	char ch;
	cin>>real1>>imag1>>real2>>imag2;
	cin>>ch;
	if(ch=='A'){
		cout<<fixed;
		cout.precision(3);
		cout<<real1+real2<<" "<<imag1+imag2;
	}
	else if(ch=='S'){
		cout<<fixed;
		cout.precision(3);
		cout<<real1-real2<<" "<<imag1-imag2;
	}
	else if(ch=='M'){
		cout<<fixed;
		cout.precision(3);
		cout<<((real1*real2)-(imag1*imag2))<<" "<<imag1*real2+imag2*real1;
	}
	else if(ch=='D'){
		cout<<fixed;
		cout.precision(3);
		cout<<((real1*real2)+(imag1*imag2))/(real2*real2+imag2*imag2)<<" " <<((imag1*real2)-(real1*imag2))/(real2*real2+imag2*imag2);
	}
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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;
	cin>>a>>b>>c>>d;
	float s1=a+c;
	float s2=b+d;
	float A;
	float su1=a-c;
	float su2=b-d;
	float S;

	if(A==s1+s2){
		cout<<s1<<s2<<endl;}
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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;
	char o;
	cin>>real1>>imag1>>real2>>imag2;
	cin>>o;
	float a,b,c,d,e,f,g,h;
	if(o=='A'){a=real1+real2;
		b=imag1+imag2;
		cout<<fixed;
		cout.precision(3);
		cout<<a<<" "<<b;
	}
	else if(o=='S'){c=real1-real2;
                d=imag1-imag2;
		cout<<fixed;
                cout.precision(3);
		cout<<c<<" "<<d;
	}
	else if(o=='M'){e=((real1*real2)-(imag1*imag2));
                f=((real1*imag2)+(real2*imag1));
		cout<<fixed;
                cout.precision(3);
		cout<<e<<" "<<f;
        }
	else if(o=='D'){g=(((real1*real2)+(imag1*imag2))/((real2)*(real2)+(imag2)*(imag2)));
                h=(((real2*imag1)-(real1*imag2))/((real2)*(real2)+(imag2)*(imag2)));
		cout<<fixed;
                cout.precision(3);
                cout<<g<<" "<<h;
        }
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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;
	cin >> real1 >> imag1 >> real2 >> imag2;

	float a, b;

	char O;
	cin >> O;

	switch(O){

		case 'A' : { a = real1 + real2;
			   b = imag1 + imag2;
			   break;

			 }
		case 'S' : {
			   a = real1 - real2;
			   b = imag1 - imag2;
			   break;

			 }
		case 'M' : { 
			   a = (real1*real2)-(imag1*imag2);
			   b = (imag1*real2)+(real1*imag2);
			   break;

			 }
		case 'D' : { 
			   a = ((real1*real2)+(imag1*imag2))/(pow(real2,2)+pow(imag2,2));
			   b = ((imag1*real2)-(real1*imag2))/(pow(real2,2)+pow(imag2,2));
			   break;
			 }

		}

	cout<<fixed;
	cout.precision(3);
       cout << a <<" "<< b;	
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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 a = 'A',s = 'S',m = 'M',o;
	cin >> R1 >> I1 >> R2 >> I2;
	cin >> o;
	cout<< fixed;cout.precision(3);
	if(o==a){cout << R1+R2<< " " << I1+I2 ;}
	else if(o==s){cout << R1-R2 << " " << I1 - I2;}
	else if(o == m){cout <<  R1*R2-I1*I2 << " " << R1*I2+I1*R2;}
	else {cout << (R1*R2 + I1*I2)/(R2*R2+I2*I2) << " " << (I1*R2 - R1*I2)/(R2*R2+I2*I2);}
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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;
	cin >> a >> b >> c >> d;
	char command;
	cin>> command;
	if (command =='A'){
           cout<< fixed;
	   cout.precision(3); 
	   cout<< a+c <<" "<<b+d<<endl;}
	else if (command == 'S'){
		cout<< fixed;
                cout.precision(3);

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

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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 x1,y1,x2,y2,a,b;
	char opt;
	cin>>x1>>y1>>x2>>y2>>opt;
	if(opt=='A'){
		a=x1+x2;
		b=y1+y2;}
       	if (opt=='S'){
		a=x1-x2;
		b=y1-y2;}
	if (opt=='M'){
	       a=x1*x2-y1*y2;
	       b=x1*y2+y1*x2;}
	if(opt=='D'){
		a=(x1*x2+y1*y2)/(x2*x2+y2*y2);
		b=(y1*x2-x1*y2)/(x2*x2+y2*y2);}
	cout<<fixed;
	cout.precision(3);
	cout<<a<<" "<<b;}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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, image1,real2,image2;
char command;
cin>>real1>>image1>>real2>>image2>>command;



if(command=='A'){cout<<fixed;
	cout.precision(3);
	cout<< (real1+real2)<<' ' <<(image1+image2);
		}

else if(command=='S') {cout<<fixed;
	   cout.precision(3);
       	cout<< real1-real2<<' '<< image1-image2 ;
		}
else if(command=='M') {cout<<fixed;
	cout.precision(3);
	cout<< (real1*real2)-(image1*image2)<<' '<<(real1*image2)+ (real2*image1);
	          }
else if (command == 'D') {cout<<fixed;
	cout.precision(3);
	cout<<((real1*real2)+(image1*image2))/((real2*real2) +( image2*image2))<<' '<<( (real2*image1)- (real1*image2))/((real2*real2)+(image2*image2));
}



}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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, operation;
	float  A, S, M, D;
	
	cin>>real1>>imag1>>real2>>imag2>>operation;
	

	float  a, b;
	a=(real1+real2);
	b=(imag1+imag2);
	cout<<fixed;
	cout.precision(3);
	cout<<a<<" "<<b<<endl;
	

	float c, d;
	c=(real1-real2);
	d=(imag1-imag2);
	cout<<fixed;
	cout.precision(3);
	cout<<c<<" "<<d<<endl;
	

	float e, f;
	e=(real1*real2)-(imag1*imag2);
	f=(real1*imag2)+(real2*imag1);
	cout<<fixed;
	cout.precision(3);
	cout<<e<<" "<<f<<endl;

	float g, h;
	g=((real1*real2)+(imag1*imag2))/(pow(real2, 2)+pow(imag2, 2));
	h=-((real1*imag2)-(real2*imag1))/((pow(real2, 2))+ pow(imag2, 2));
	cout<<fixed;
	cout.precision(3);
	cout<<g<<" "<<h<<endl;
	}



}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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 x1,y1,x2,y2;
	char x;
	cin >> x1 >> y1 >> x2 >> y2 >> x;
	if (x=='A'){
		float a,b;
		a = (x1)+(x2);
		b = (y1)+(y2);
		cout <<fixed;
		cout.precision(3);
		cout << (a) <<" " <<(b);
	}
	else if(x=='S'){
		float a,b;
		a=(x1)-(x2);
		b=(y1)-(y2);
		cout<<fixed;
		cout.precision(3);
		cout<<(a)<<" "<<(b);
	}
	else if(x=='M'){
		float a,b;
		a=((x1)*(x2))-((y1)*(y2));
		b=((x1)*(y2))+((x2)*(y1));
		cout <<fixed;
		cout.precision(3);
		cout << (a)<<" "<<(b);
	}
	else if(x=='D'){
		float a,b;
		a=((((x1)*(x2))+(((y1)*(y2))))/((pow(x2,2))+(pow(y2,2))));
		b=((-((x1)*(y2))+((x2)*(y1)))/((pow(x2,2))+(pow(y2,2))));
		cout<<fixed;
		cout.precision(3);
		cout<<(a)<<" "<<(b);
		}
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
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;
	char e,A,S,M,D;
	cin >>a>>b>>c>>d>>e;
	{if(e==A); 
Then; cout << a+c<<" "<<b+d<<endl;
	else
		(e==S);
Then; cout << c-a<<" "<<d-b<<endl;
	else
		(e==M);
		Then; cout <<(a*c-b*d)<<" "<<(a*d+b*c)<<endl;
	else
		(e==D);
		Then; cout <<(a*c+b*d)/(c*c+d*d)<<" "<<endl;
	}
}

Grading criterion: if multiplication takes place if M is passed as input
Rating A: if multiplication takes place correctly if M is passed as an input argument
Rating B: if any other function executed other than multiplication
Rating C: 0
Rating D: 0
Assigned grade: B