jeudi 16 avril 2020

My array is gettting an error because it's being defined as a singular integer

The point of this program is to output whether a series of digits (the number of digits undefined) is sorted or not (largest to smallest or smallest to largest. I have defined my array in my function parameter, and I am trying to use a for loop to store the user's input, as long as it is above 0, in said array; however, I am getting the error "argument of type int is incompatible with parameter of type int*" I know this means my for loop is assigning a single value to my variable repeatedly from reading similar questions however I can not figure out how to fix this.

#include <iostream>
using namespace std;

bool isSorted(int list[]);

int main()
{    
    int i;
    int list[2000];
    int k = 0;
    for (i = 0; i < 2000; i++)
    {
        int j;
        while (j > 0)
        {
            cin >> j;
            list[i] = j;
        }
    }
    isSorted(list[2000]);
    bool is = isSorted(list[2000]);
    if (is == true)
        cout << "sorted";
    else
        cout << "unsorted";

    return 0;
}

bool isSorted(int list[])
{
    int i = 0;
    for (i = 0; i < 2000; i++)
    {
        if (list[i] > list[i + 1] || list[i] < list[i - 1])
        {
            return false;
        }
        else
            return true;
    }
}

Aucun commentaire:

Enregistrer un commentaire