This blog is about providing theory as well as simple executable codes of different programming languages such as java, C, C++, and web programming, etc. This blog will be helpful to the IT students to learn about programming.

Sunday, March 12, 2023

Write a program in C++ to enter marks of 10 students using array. Sort array elements in ascending and descending order using pointer.

 Here's a program in C++ that allows you to enter marks of 10 students using an array, and then sorts the array in ascending and descending order using pointers.

#include <iostream>
using namespace std;
// Function to sort an array in ascending order
void sortAscending(int *arr, int size) {
    for (int i = 0; i < size - 1; i++) {
        for (int j = i + 1; j < size; j++) {
            if (*(arr + j) < *(arr + i)) {

                // Swap the elements using pointer notation
                int temp = *(arr + i);
                *(arr + i) = *(arr + j);
                *(arr + j) = temp;
            }
        }
    }
}

// Function to sort an array in descending order
void sortDescending(int *arr, int size) {
    for (int i = 0; i < size - 1; i++) {
        for (int j = i + 1; j < size; j++) {
            if (*(arr + j) > *(arr + i)) {

                // Swap the elements using pointer notation
                int temp = *(arr + i);
                *(arr + i) = *(arr + j);
                *(arr + j) = temp;
            }
        }
    }
}

int main() {
    const int size = 10;
    int marks[size]; 

    // Input marks of 10 students using pointer notation
    cout << "Enter the marks of 10 students:" << endl;
    for (int i = 0; i < size; i++) {
        cin >> *(marks + i);
    }

    // Print out the original array using pointer notation
    cout << "Original array: ";
    for (int i = 0; i < size; i++) {
        cout << *(marks + i) << " ";
    }
    cout << endl;

    // Sort the array in ascending order using pointer notation
    sortAscending(marks, size);
    cout << "Sorted array in ascending order: ";
    for (int i = 0; i < size; i++) {
        cout << *(marks + i) << " ";
    }
    cout << endl;

    // Sort the array in descending order using pointer notation
    sortDescending(marks, size);
    cout << "Sorted array in descending order: ";
    for (int i = 0; i < size; i++) {
        cout << *(marks + i) << " ";
    }
    cout << endl;
    return 0;
}

In this program, we first declare an integer array marks of size 10, which will be used to store the marks of 10 students.

We then use a for loop to input the marks of the students into the marks array using pointer notation.

After that, we define two functions sortAscending and sortDescending, which take in an integer array 'arr' and its size size, and use nested loops to sort the array in ascending and descending order, respectively. Note that in these functions, we are using pointer notation to access the array elements.

Finally, we call these functions with the marks array and its size as arguments, and print out the original and sorted arrays using pointer notation to verify the correctness of the sorting algorithms.

No comments:

Post a Comment

If you have any doubts, please let me know

Slider Widget