Advertisement
Guest User

Untitled

a guest
Nov 14th, 2019
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.55 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3.  
  4. using namespace std;
  5.  
  6. bool averageFromFile(const string& name, double &average){
  7. ifstream inputFile;
  8. inputFile.open(name);
  9. if (inputFile){
  10.  
  11. double number;
  12. double sum = 0;
  13. int count = 1;
  14.  
  15. //Check to see if empty
  16. if(inputFile >> number){
  17. sum = sum + number;
  18.  
  19. while(inputFile >> number){
  20. sum = sum + number;
  21. count++;
  22. }
  23.  
  24. average = sum / count;
  25. }else{
  26. return false;
  27. }
  28.  
  29. inputFile.close();
  30. return true;
  31. }else{
  32. return false;
  33. }
  34. }
  35.  
  36. int main() {
  37.  
  38. char menu_choice = 'K';
  39. string filename;
  40.  
  41. do{
  42. cout << "Choose: L->Find lowest value, H->Find highest value, A->Find average, Q->Quit: ";
  43. cin >> menu_choice;
  44.  
  45. //Validate input
  46. while(menu_choice != 'L' && menu_choice != 'H' && menu_choice != 'A' && menu_choice != 'Q'){
  47. cout << "Choose: L->Find lowest value, H->Find highest value, A->Find average, Q->Quit: ";
  48. cin >> menu_choice;
  49. }
  50.  
  51. if (menu_choice == 'Q'){
  52. break;
  53. }
  54.  
  55.  
  56. double number = 0;
  57. double lowest;
  58. double highest;
  59. double average = 0;
  60.  
  61.  
  62. if(menu_choice == 'L'){
  63.  
  64. cout << "Enter input file name: ";
  65. cin >> filename;
  66.  
  67. ifstream inputFile;
  68. inputFile.open(filename);
  69.  
  70. if(inputFile) {
  71.  
  72. //Get the first value
  73. inputFile >> number;
  74.  
  75. //Find the lowest value
  76. lowest = number;
  77. while(inputFile >> number){
  78. if(number < lowest){
  79. lowest = number;
  80. }
  81. }
  82. cout << "Lowest value is " << lowest;
  83. }else{
  84. cout << "File empty or could not open file" << endl;
  85. }
  86. inputFile.close();
  87. }else if(menu_choice == 'H'){
  88.  
  89. cout << "Enter input file name: ";
  90. cin >> filename;
  91.  
  92. ifstream inputFile;
  93. inputFile.open(filename);
  94.  
  95. if(inputFile) {
  96.  
  97. //Find the highest value
  98. highest = number;
  99. while(inputFile >> number){
  100. if (number > highest){
  101. highest = number;
  102. }
  103. }
  104. cout << "Highest value is " << highest;
  105. }else{
  106. cout << "File empty or could not open file" << endl;
  107. }
  108. inputFile.close();
  109. }
  110.  
  111. if(menu_choice == 'A'){
  112.  
  113. cout << "Enter input file name: ";
  114. cin >> filename;
  115.  
  116. //Find average
  117. bool foundAverage = averageFromFile(filename, average);
  118. if(foundAverage){
  119. cout << "Average value is " << average;
  120. }
  121. }
  122.  
  123. cout << endl;
  124. }while(menu_choice != 'Q');
  125. cout << "Exiting" << endl;
  126.  
  127.  
  128. return 0;
  129. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement