file processing & for loop guestions

after reading scores from file I need to find the lowest score, add all scores together, calculate final score, inside the for loop. I am lost and could use some help. Here is my code so far.


for (index = 1; index < 6; index++)
{
//Get score from input file
fin2 >> scores;

//Output score to outfile, fout
fout << "Score #" << index << ":" << setw(10) << scores << endl;

if (scores < lowScore)
{
lowScore = scores;
}

}

//Calculate scores total
scores += scores;

//Subtract lowest score from scores total
total = scores - lowScore;

//Calculate final score
finalScore = total / (5 - 1);



//Move read pointer
fin2.ignore(100, '\n');

//Get name from input file
getline(fin2, name, '#');

}
Last edited on
Does this help?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream> 
#include <stdlib.h>     /* srand, rand */
#include <time.h>       /* time */
#include <climits> // for int max
int main(int argc, const char * argv[]) {

    
    int numbers[100] = {0};
    srand (time(NULL));

    // making random number array ///
    for (int i = 0; i < 100; i++) {
        numbers[i] = rand()%1000;
        std::cout << "Number " << i+1 <<". " << numbers[i] << std::endl;
    }
    
    // finding lowest nubmer //
    int lowestNumber = INT_MAX;
    int lowestPostion = 0;
    
    for (int i ; i < 100; i++) {
        if (numbers[i] < lowestNumber) {
            lowestNumber = numbers[i];
            lowestPostion = i;
        }
    }
    
    std::cout << "The lowest number is at postion ." << lowestPostion+1 << " and its value is " << lowestNumber <<"." << std::endl;
    
    return 0;
}


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
Number 1. 144
Number 2. 977
Number 3. 711
Number 4. 341
Number 5. 781
Number 6. 32
Number 7. 143
Number 8. 998
Number 9. 294
Number 10. 266
Number 11. 491
Number 12. 887
Number 13. 521
Number 14. 247
Number 15. 106
Number 16. 909
Number 17. 42
Number 18. 716
Number 19. 531
Number 20. 199
Number 21. 194
Number 22. 874
Number 23. 552
Number 24. 692
Number 25. 731
Number 26. 407
Number 27. 67
Number 28. 63
Number 29. 145
Number 30. 873
Number 31. 494
Number 32. 966
Number 33. 983
Number 34. 30
Number 35. 183
Number 36. 279
Number 37. 515
Number 38. 519
Number 39. 656
Number 40. 419
Number 41. 226
Number 42. 693
Number 43. 197
Number 44. 956
Number 45. 981
Number 46. 840
Number 47. 765
Number 48. 143
Number 49. 238
Number 50. 198
Number 51. 462
Number 52. 260
Number 53. 366
Number 54. 316
Number 55. 963
Number 56. 543
Number 57. 841
Number 58. 809
Number 59. 743
Number 60. 154
Number 61. 88
Number 62. 406
Number 63. 392
Number 64. 774
Number 65. 840
Number 66. 892
Number 67. 382
Number 68. 753
Number 69. 654
Number 70. 928
Number 71. 582
Number 72. 406
Number 73. 1
Number 74. 714
Number 75. 831
Number 76. 82
Number 77. 152
Number 78. 796
Number 79. 152
Number 80. 642
Number 81. 676
Number 82. 77
Number 83. 378
Number 84. 737
Number 85. 287
Number 86. 132
Number 87. 683
Number 88. 217
Number 89. 832
Number 90. 563
Number 91. 161
Number 92. 481
Number 93. 656
Number 94. 862
Number 95. 396
Number 96. 715
Number 97. 324
Number 98. 289
Number 99. 733
Number 100. 463
The lowest number is at postion .73 and its value is 1.
Last edited on
not really but thanks for trying to help
i got it figured out
Here is help for you

#include <iostream>
#include <fstream>

using namespace std;

void readScores(float scores[], int &size) {
ifstream in;
float score;
size = 0;
in.open("/home/zamuxolo/qt/lowest/scores.txt");

if(!in)
cout << "File could not be opened or it does not exits." <<endl;
else {
while(in >> score) {
scores[size++] = score;
}
}

}
float sumOfScores(const float scores[], int size) {

float sum = 0.0;

for(int i = 0; i < size ; i++)
sum += scores[i];

return sum;
}
void lowestscore(const float scores[], int size) {

float lowest = 10000;

for(int i = 0; i < size; i++) {
if(scores[i] < lowest) {
lowest = scores[i];
}
}
cout << "Lowest = " << lowest << endl;
}

int main() {

int s = 0;
float scores[100];

readScores(scores, s);
cout << "Final score = "<< sumOfScores(scores, s) << endl;
lowestscore(scores, s);

}

Hope this helps.
Topic archived. No new replies allowed.