CodeGraderBench/CodeGraderBench huggingface dataset:
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int isIncreasingDecreasing(int *A,int n)
{int ans,i,seq2=0,seq1=0,a=0;
	if(n<25 && n>=1){
if(A[0]>A[1])
{seq2++;for(i=0;i<n-1;i++){if(A[i]<A[i+1]){a++;}
}}
else if(A[0]<A[1])
{seq1++;
for(i=0;i<n-1;i++)
{ if(A[i]>A[i+1]){a++;}}}

if(seq1>0&& a==0) {return 1;}
else if(seq2>0&& a==0) {return 2;}
else return 3;
}}

int main()
{int num;
cin>>num;
int a[num];
for(int i=0;i<num;i++)
{cin>>a[i];}
cout<<isIncreasingDecreasing(a,num);
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std ;
int isIncreasingDecreasing (int *A , int n)
{ 
    int m=0 , r=0 ,p=0  ;
    for ( int l = 0 ; l < n-1 ; l++)
    {
        if ( A[l]<A[l+1]) 
        { 
            m++ ;
        } 
    }
     if ( m==n-1) return 1 ;
    for ( int k = 0 ; k < n-1 ; k++)
    {
        if ( A[k]>A[k+1]) 
        { 
            r++ ;
        } 
    }
    if ( r==n-1) 
    {
        return 2 ;
    } else return 3 ; 






}
int main ()
{
  int n ;
  cin >> n ;
  int a[n] ;
  for (int i = 0 ; i < n ; i++ ) 
  {
    cin >> a[i] ;
  } 
  cout << isIncreasingDecreasing ( a , n ) << endl;


}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include <iostream>
using namespace std;
//Final

int isIncreasingDecreasing (int *A, int n){
int ret=0;
int ctr1=0,ctr2=0;
for (int i=0; i < n-1 ; ++i){

if (A[i]<A[i+1]){ctr1=ctr1+1;}
}
for (int i=0; i < n-1 ; i++){
int ctr=0;
if (A[i]>A[i+1]){ctr2=ctr2+1;}
}
if (ctr1==n-1){ret=1;}

else if (ctr2==n-1){ret=2;}
else {ret=3;}
//cout << ctr2<<n<<ret;

cout << ret;
return ret;}

int main(){
int n,x;
cin >> n;
int A[n];
for (int i=0; i < n ; ++i){
cin>> A[i];
}
isIncreasingDecreasing(A,n);
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int IsIncreasingDecreasing (int *A, int n){
for (int i=0; i<n-1; i++){int b=0;
	if (A[i]<A[i+1]) b++;
if (b==n-1){
 return 1;}}
for (int i=0; i<n-1; i++){ int c=0;
	if (A[i]>A[i+1])c++;
if (c==n-1){
 return 2;}}
return 3;
}
int main(){
int n=1; int A[n];
cin>>n;
for (int i=0; i<n; i++) cin>>A[i];
 if (n==1) cout<<"1";
if (n>1) {int m= IsIncreasingDecreasing (A, n);
cout<<m;
} 
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<simplecpp>
using namespace std;
int isIncreasingDecreasing(int *A,int n)
{int c=0,d=0,m=0;int i;
	for(i=0;i<n-1;i++)
	{
	if(A[i]<A[i+1])
	c++;
	else if(A[i]>A[i+1])
	d++;
	else
	m++;
	}
	if(c==i)
	return 1;
	else if(d==i)
	return 2;
	else
	return 3;
}
int main()
{int n; int a[100];

cin>>n;

for(int i=0;i<n;i++)
{
	cin>>a[i];
}
int f=isIncreasingDecreasing(a,n);
cout<<f;
	
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int isIncreasingDecreasing(int* A, int n)
{int i,j;
for(i=0; i<n; i++){
for(j=i+1; j<n; j++){
if(A[i]>A[j]){return 2;}
else if(A[i]<A[j]){return 1;}
}}
}
int main(){
int n,i;
cin>>n;
int A[n];
if(n>=1 && n<25){
for(i=0; i<n; i++)
{cin>>A[i];}
cout<<isIncreasingDecreasing(A,n);
}}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include <iostream>
using namespace std ;
int main { 
 {
 A[n] {m1<m2<m3<..<mn} ;
 return 1 ;
 }
 {
 A[n] {m1>m2>m3>..>mn} ;
 return 2;
 }

 else{
return 3;
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: C
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include <iostream>
using namespace std;
int isIncreasingDecreasing(int *A, int n)
{
	int i,m=3;
	for(i=0;i<n-1;i++)
	{
		if(A[i]<A[i+1])
		{
			m=1;
		}
		else
		{
			m=3;
			break;
		}
	}
	if(m==3)
	{
	 	  for(i=0;i<n-1;i++)
       		  {
               		 if(A[i]>A[i+1])
               	 	 {
                	       m=2;
               		 }
               	 	 else
                  	{
                        	m=3;
                        	break;
                	}
        	}
	}
	if(n==1)   m=1;
	return m;
}
int main()
{
	int n;
	cin>>n;
	int arr[n];
	for(int j=0;j<n;j++)
	{
		cin>>arr[j];
	}
	int p=isIncreasingDecreasing(&arr[0],n);
	cout<<p;
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;

int isIncreasingDecreasing(int* A,int n){
int i;
for(i=0;i<n-1;i++){
		if(A[i]<A[i+1]){continue;}
		else{break;}	
}
if(i==n-1){return 1;}
else{
int j;
for(j=0;j<n-1;j++){
		if(A[j]>A[j+1]){continue;}
		else{break;}	
}
if(j==n-1){return 2;}
else{return 3;}
}

}



int main(){
int n;
cin>>n;
int A[n];
if(n>=1&&n<25){
for(int i=0;i<n;i++){
	cin>>A[i];
}
cout<<isIncreasingDecreasing(A,n);
}
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include <iostream>
using namespace std;
int maxspace ( int *A,int n){
int maxindex = 0;
for (int j =1;j<n;j++){
if (A[maxindex] < A[j]) maxindex = j;
}
return maxindex;
}
int minspace (int *A, int n){
int minindex = 0;
for (int j = 1;j<n;j++){
if (A[minindex] > A[j]) minindex = j;
}
return minindex;
}
int isIncreasingDecreasing(int *A,int n){
int maxindex = maxspace(A,n);
int minindex = minspace(A,n);
if (maxindex == n-1){
bool flag1 = 0;
for (int j = 0;j<n;j++){
if (maxspace (A,j+1) != j) flag1 = 1;
}
if (flag1 == 0) return 1;
else return 3;
}
else if (minindex == n-1){
bool flag2 = 0;
for (int k = 1; k<n;k++){
if (minspace (A,k+1) != k) flag2 = 1;
}
if (flag2 == 0) return 2;
else return 3;
}
else return 3;
}



int main (){
int n;
int A[100];
int q;
cin >> n;
if (n>=1 && n <25){
for (int i = 0;i<n;i++){
cin >> A[i];
}
q = isIncreasingDecreasing( A,n);
cout << q;
}
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<simplecpp>
int isIncreasingDecreasing(int *A,int n)
{ int maxnum=*A[0];
 for(int j=1;j<=n;j++)
 {if(maxnum<*A[j])
 maxnum=*A[j];
 *A[j]=*A[j+1];
 return(1);
 else if(maxnum>*A[j])
  maxnum=*A[j];
  *A[j]=*A[j+1];
  return(2);
  else return(3);
 }}
 main_program
 {int n,A[25];
 for(int i=0;i<=n;i++)
 cin>>A[i];
 cout<<isIncreasingDecreasing(&A,n)}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int main(){
int [A]={n};
cin>>n>>[A];
for(i=0, i<=n, i++){
if((n+1)<n){cout<<"1";}
else if((n+1)>n){cout<<"2";}
else {cout<<"3";}}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: C
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include <iostream>
using namespace std;
int order(int *A,int n){
	int x=0;
	if (n==1){return 1;}
	for(int i=0;i<n-1;i++){
		if (A[i]>A[i+1]){x+=1;}
		else{break;}
		}
		if (x==(n-1)){return 2;}
	x=0;
	for(int i=0;i<n-1;i++){
		if (A[i]<A[i+1]){x+=1;}
		else{break;}
		}
		if (x==(n-1)){return 1;}
		else {return 3;}}
int main(){
	int n;
	cin >> n;
	int a[n];
	for (int i=0;i<n;i++){cin >> a[i];}
	cout << order(a,n);
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int random(int arr[],int n);
int main(){
int n;
cin>>n;
int arr[n];
for(int i=0;i<n;i++){cin>>arr[i];}
cout<<random(arr,n);}
int random(int arr[],int n){
if(n==1)return 1;
bool truthi,truthd;
if(n>1) {for(int i=0;i<n-1;i++){truthi=arr[i]<arr[i+1];}
if(truthi==true)return 1;

if(truthi==false){
for(int i=0;i<n-1;i++){truthd=arr[i]>arr[i+1];}
if(truthd==true)return 2;
else return 3;
}
}
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
using namespace std;
int isIncreasingDecreasing(int *A,int n){
  int j=0;
  {while(A[j+1]>A[j]&&j<(n-1))j++;
  if(j==n-2) return 1;}
  {while(A[j+1]<A[j]&&j<(n-1))j++;
  if(j==n-2) return 2;}
  return 3;} 
int main(){
int n;
int A[n];
cin>>n;
for(int i=0;i<n;i++)cin>>A[i];
cout<<isIncreasingDecreasing(A,n);
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to take the number n and an array A of n numbers as input from the user. The program should then contain a function which determines whether the array is in strictly increasing order (in which case the function should return 1), or else determine whether the array is in strictly decreasing order (in which case the function should return 2), and return 3 otherwise. The format of the function is int isIncreasingDecreasing (int *A, int n). The program should then print the value returned by the function on a new line. You must implement this via a function, otherwise you will get no credit. For simplicity, assume that all entries in the array are unique.

Input Format - Non-negative integer n and an array A of n elements
Output Format - The value 1,2 or 3 as described above. 
Constraints
1 <= n < 25

Sample input - 33 4 2
Sample output - 3

Student submission:
#include<iostream>
#include<functional>
using namespace std;{
function(array[n]){
for( int i=0; i<=n; i++){
if(array[i]<=array[i+1]){
return 1;}
else if( array[i]>=array[i+1]){
return 2;}
else{
return 3;}
}
}
int main(){
int array[n];
cin>>n;
cout<<function(array[n]);
}
}

Grading criterion: Quality of variable names
Rating A: Good Variable Names
Rating B: Ok Variable Names
Rating C: Poor Naming of Variables
Rating D: 0
Assigned grade: B