CodeGraderBench/CodeGraderBench huggingface dataset:
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<iostream>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int arr[n];
	for(int i=0;i<n;i++)
	{
		cin>>arr[i];
	}
	
	for(int k=0;k<n-1;k++)
	{	
		for(int i=k+1;i<n;i++)
		{
		
			if(arr[i]<arr[k])
			{
				int temp=arr[k];
				arr[k]=arr[i];
				arr[i]=temp;
			}	
		
		}
		
	}

	for(int i=0;i<n;i++)
	{
		cout<<arr[i]<<" ";
	}
	return 0;
	
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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


void swap_no(int*a,int*b){
int temp=*a;
*b=*a;
temp=*b;}
int min_ind(int *a,int n ,int k){
int min_ind =k;

for(int i=k;i<n;i++){
if(a[i]<a[min_ind]){
min_ind=i;
} 
}
return min_ind;

}
void sort( int *a, int n){
for(int i=0;i<n;i++){
swap(i,a[min_ind(a,n,i)]);
}
}


int main(){
int n;
cin>>n;
int a[n];

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

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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

int main(){
	
	int n;
	cin >> n;

	int arr[n];
	for(int i = 0; i < n; i++)
		cin >> arr[i];

	int indexOfMin = 0, temp;
	for(int i = 0; i < n - 1; i++){
		indexOfMin = i;
		for(int j = i + 1; j < n; j++){
			if(arr[j] < arr[indexOfMin])
				indexOfMin = j;
		}

		temp = arr[indexOfMin];
		arr[indexOfMin] = arr[i];
		arr[i] = temp;
	}

	for(int i = 0; i < n; i++)
		cout << arr[i] << " ";
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<iostream>
using namespace std;
void swap(int *a,int *b)
{
	int temp;
	temp=*a;
	*a=*b;
	*b=temp;
}
int main()
{
	int n;
	cin>>n;
	int A[n];
	for(int i=0;i<n;i++)
	{
		cin>>A[i];
	}
	for(int j=0;j<n-1;j++)
	{
		for(int k=0;k<n-j-1;k++)
		{
			if(A[k]>=A[k+1])
			{
				swap(&A[k],&A[k+1]);
			}
			else
			{
				continue;
			}
		}
	}
	for(int l=0;l<n;l++)
	{
		cout<<A[l]<<" ";
    }
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<simplecpp>
void swap(int *a,int *b)
{
int temp=*a;
*a=*b;
*b=temp;
}
void arr(int a[],int n)
{int min=100000;

	
	for(int k=0;k<n;k++)
	{
	int ctr=0;
		for(int j=k;j<n;j++)
	{ 
		if(min>a[j])
		{
		min=a[j];
		ctr++;
			}
	
	 	swap(a[j],a[ctr]);
	 }
	for(int i=0;i<n;i++){
	cout<<a[i]<<" ";}
	}
	
}


main_program{
int a[100];
int n;
cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
	}
	arr(a,n);
	
		


}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<iostream>
using namespace std;
int main()
{
int i,j,n,pos,element,tmp;
cin>>n;
int a[n];
for(i=0;i<n;i++)
{
cin>>a[i];
}
for(i=0;i<n;i++)
{
pos = i;
element=a[i];
for(j=i;j<n;j++)
{
if(a[j]<a[pos])
{
pos=j;
element=a[j];
}
}
a[pos]=a[i];
a[i]=element;

}

for(i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<iostream>
using namespace std;
 void swap(int &p,int &q){
 int temp=p;p=q;q=temp;
 }
 int mindex(int *a,int n,int i){
 int minindex=i;
 for(int j=i;j<n;j++){if(a[minindex]>a[j]) minindex=j;}
 return minindex;
 }
 void msort(int *a,int n){
 for(int i=0;i<n;i++){
 swap(a[i],a[mindex(a,n,i)]);
 }
 }
 int main(){
 int n;
 cin>>n;
 int  a[100];
 for(int j=0;j<n;j++) cin>>a[j];
 msort(a,n);
 for(int j=0;j<n;j++) cout<<a[j]<<" ";
 }

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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


void swapR (int& a, int& b){
int temp = a; a = b; b = temp; return;
}

int main(){

	int n,q;
	
	cin >> n;
	
	int a[n];
	
	for(int i=0;i<n;i++){
	
		cin >> a[i];
	
	}
	
	for(int p=0;p<n-1;p++){
	
		for(int k=n-1;k>p;k--){		
			
			if(a[k]<a[k-1]){
			
				swapR(a[k],a[k-1]);
			
			}
												
		}
	
	}
	
	for(int y=0;y<n;y++){
	
		cout << a[y] << " ";
	
	}

}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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

void inp (int *a, int n){
for (int i = 0; i < n; i++) cin >> a[i];
}

void pri (int a [], int n){
for (int i = 0; i < n; i++) cout << a[i]<<" ";
}

int argmin (int *scores, int L,int n){
int minindex = (n-1);
for(int j=L;j<n; j++){
if(scores[minindex] > scores[j]) minindex = j;
}
return minindex;
}

void myswap (int& a, int& b){
int temp = a; a = b; b = temp;
return;
}

void selection_sort (int *data, int n){
for(int i=0; i<n;i++){
int minindex = argmin(data,i,n);
myswap(data[minindex],data[i]);
}
}

int main(){
	int n;
	cin>>n;
	int a[n];
	inp(a,n);
	selection_sort(a,n);
	pri(a,n);

}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
include<iostream>
using namespace std;
int main()
{int n;
cin>>n;
int A[n];
fot(int i=0;i<n;i++)
{cin>>A[i]}
for(int 0;i<n;i++)
{
int min=A[i];
for(int j=0;j<n;j++)
{
 if(A[j]<min)
{
  min=A[j];
  int temp=A[i];
  A[i]=A[j];
  A[j]=temp;
}
}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<simplecpp>
main_program{
int n,,int a[],int i1,int i2;
cin>>n;
int a[];
for (i=0;i<n;i++);{
if(a[0]>a[i]);{
i++;
int temp=a[0];
a[0]=a[i];
a[i]=temp;
}
}
for(j=i+1;j<n-1;j++);{
if(a[1]>a[j]);{
j++;
int temp=a[1];
a[1]=a[j];
a[j]=temp;
}
}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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

 a->array
 x->exponential array

   for(int j=0;j<=n-1;j++)
      int m=a[j]; {
      int x=j;

   for(i=j,i<n-1,i++)
      if(m>a[i+1]){
       m=a[i+1];
       x=i+1;
      }
      }
     a[x]=a[j];
     a[j]=m;->print array

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<simplecpp>

main_program{
int n;
cin>>n;
int a[n];
for(int i=0;i<n;i++)
 cin>>a[i];
for(int i=0;i<n-1;i++)
{
  for(int j=i+1;j<n;j++)
{
  if(a[j]<a[i]){
  int temp=a[j];
  a[j]=a[i];
  a[i]=temp;
}
}


}
for(int i=0;i<n;i++)
{
cout<<a[i]<<endl;
}





}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<iostream>
#include<cmath>

using namespace std;


int main()
{
	int n;
	cin>>n;
	int arr[n];
	for(int k=0;k<n;k++)
	{
		cin>>arr[k];
	}
	for(int i=n;i>=0;i--)
	{
		for(int j=n;j>=n-i;j--)
		{
			int mini=0;
			if(arr[j]<arr[mini])
			{
				swap(arr[j],arr[mini]);
			}
			mini=j;
		}
		cout<<arr[i]<<" ";
	}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<stdio.h>
#include<conio.h>

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: B
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include <iostream>
using namespace std;
int main ()
{
	int n;
	cin >> n;
	int a[n];
	for (int i = 0; i<n; i++)
	{
		cin >> a[i];
	}
	
	int i;
	for (i=0; i<n; i++)
	{
		
		int minindex=i,temp = a[i];
		for (int k=i; k<n; k++)
		{
			if (a[k] <= a[minindex] ) {minindex = k;}
		}
		
		a[i] = a[minindex];
		a[minindex] = temp;
	}
	for (int i = 0; i<n; i++)
	{
		cout << a[i] << " ";
	}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<iostream>
using namespace std;
int argmin(int*A, int n){
                    int minindex=0;
                    for(int j=1;j<n;j++){
                                       if(A[minindex]<A[j]) minindex=j;
                                       }
                    return minindex;
                       }
void swap(int *a,int *b){
                                      int temp=*a;
                                     *a=*b;
                                      *b=temp;
                                      return;}
void sorting(int *A,int n){
                        for(int i=n;i>1;i--){
                                            int minindex=argmin(A,i);
                                           swap(&A[minindex],&A[n-i]);
                                            }
                         }
int main(){
int n;cin>>n;
int *A;
for(int i=0;i<n;i++){cin>>A[i];}
sorting(A, n);
int j;
for(j=0;j<n; j++){cout<<A[j]<<" ";}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include<simplecpp>
main_program{
int n;
cin>>n;
int a[25];
for(int i=0;i<n;i++){
cin>>a[i];}
for(int j=1;j<n;j++){
	if(a[j]>a[j-1]) return 0;
	else if swap(a[j],a[j-1]);
}
	for(int k=0;k<n;k++){
	cout<<a[k];}	
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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

int main(){
int n;
cin>>n;
 int arr[n];
for(int i=0;i<n;i++){cin>>arr[i];}
for(int k=0;k<n;k++){for(int j=n-1;j>k;j--){if(arr[k]<arr[j]){int temp=arr[j];
                                                                arr[j]=arr[k];
                                                                arr[k]=temp;}
                                         }

 
 }for(int l=n-1;l>=0;l--){cout<<arr[l]<<" ";}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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

int main(){
	int n;
	cin >> n;
	int A[n];
	int Min;
	int idx;
	for(int i=0;i<n;i++){
	cin >> A[i];
	}
	for(int i=0;i<n;i++){
	 Min = 1000;
	for(int j=i;j<n;j++){
	if(A[j] < Min){
	Min = A[j];
	idx = j;}
	}
	A[idx] = A[i];
	A[i] = Min;
	}

	for(int i=0;i<n;i++){
	cout << A[i] <<" ";
	}
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

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



int main()
{

    int n;
    cin>>n;
    int a[n];
    for(int i=0;i<n;i++){

        cin>>a[i];
    }




    for(int j=0;j<n-1;j++){
        int m=a[j];
        int x=j;

        for(int i=j;i<n-1;i++){
            if(m>a[i+1]){
                m=a[i+1];
                x=i+1;
            }
        }
        a[x]=a[j];
        a[j]=m;
 
}
    for(int i=0;i<n;i++){

        cout<<a[i]<<" ";
    }

}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A
Problem: Write a C++ program to sort an array A of n numbers strictly using the given algorithm:

1. Find the minimum element in the array.
2. Swap the minimum element with the first element of the array.
3. Find the minimum element in the remaining array.
4. Swap the minimum element with the second element of the array.
5. Repeat steps 3 and 4 until the entire array is sorted.

Constraints:

* n < 25

Input Format:

* Non-negative integer n
* Array A of n elements

Output Format:

* Print the sorted array with a space between adjacent elements.

Student submission:
#include <iostream>
using namespace std;
int min_index(int *a,int n,int j)
{
	int min=n;
	for(int i=n-1;i>=j;i--)
	{
		if(a[min]>a[i]) min=i;
	}
	return min;
}
int main()
{
	int n;
	cin>>n;
	int a[n];
	for(int i=0;i<n;i++) cin>>a[i];
	for(int i=0;i<n;i++)
	{
		int min=min_index(a,n,i);
		int temp=a[i];
		a[i]=a[min];
		a[min]=temp;
	}
	for(int i=0;i<n;i++) cout<<a[i]<<" ";
}

Grading criterion: Reading Input
Rating A: Correctly Reads Inputs
Rating B: Fails To Read Input
Rating C: 0
Rating D: 0
Assigned grade: A