In: Computer Science
(C++) Create a data file and name it "input.txt". manually save 10 integers into the file. Write a program to read the data and calculate the average of events and odds, separately. Print out the average values.
#include <iostream>
#include <string>
#include <ctime>
#include <stdio.h>      
#include <stdlib.h>
#include <fstream>
using namespace std;
int main()
{
   // WRITING TO FILE
   srand((unsigned)time(NULL));
    //Declaring variables
    string fileName = "input.txt";
    float grade;
    
    //Opening file
    ofstream myfile;
    myfile.open(fileName.c_str());
    for (int i = 0; i < 10; i++) {
        myfile<<(1 + rand() % 10)<<endl;
    }
    //Cloing file
    myfile.close();
    
    // READING FROM FILE
    ifstream file;
   file.open (fileName.c_str());
    if (!file.is_open()) return 0;
   int evenSum = 0, oddSum = 0, evenCount = 0, oddCount = 0;
    int val;
    while (file>>val)
    {
       if(val%2==0){
          evenCount++;
          evenSum+=val;
      }
      else{
         oddCount++;
         oddSum+=val;
      }
    }
   
   cout<<"Average of evens = "<<(1.0*evenSum/evenCount)<<endl;
   cout<<"Average of odds = "<<(1.0*oddSum/oddCount)<<endl;
   
    return 0;
}