// ave1000.cpp: using arrays to compute an average of up to 1000 integers. // Reads integers until end-of-file; no prompt for input. #include using namespace std; constexpr int MAX_ITEMS = 1000; // compute average of an array, returning 0 if the array is empty float ave(int nums[], int size) { int sum = 0; for(int i = 0; i < size; ++i) sum += nums[i]; return size == 0 ? 0.0 : float(sum) / float(size); } // read all numbers - this illustrates that arrays are passed by reference // just like Java; this returns the number of items read int read_numbers(int number_list[], int max_count) { int count = 0; int input_number; cin >> input_number; while ( cin && count < MAX_ITEMS ) { number_list[count] = input_number; ++count; cin >> input_number; } return count; } int main() { int nums[MAX_ITEMS]; int number_count = read_numbers(nums, MAX_ITEMS); if ( number_count == 0 ) cout << "No average for an empty input." << endl; else cout << "Average: " << ave(nums, number_count) << endl; return 0; }