-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathhighest.cpp
More file actions
56 lines (47 loc) · 1.09 KB
/
highest.cpp
File metadata and controls
56 lines (47 loc) · 1.09 KB
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
#include <iostream>
using namespace std;
char highestOccurringChar(char input[]);
int main() {
char input[100] = "aansudnasaanc";
char highest = highestOccurringChar(input);
cout << highest << endl;
return 0;
}
int count(char input[], char letter) {
int count = 0;
for (int i = 0; input[i] != '\0'; i++) {
if (input[i] == letter) {
count++;
}
}
return count;
}
bool isDone(char done[], char letter) {
for (int i = 0; i < 100; i++) {
if (done[i] == letter) {
return true;
}
}
return false;
}
char highestOccurringChar(char input[]) {
int maxCount = 0;
char done[100];
int doneCount = 0;
char letter;
for (int i = 0; input[i] != '\0'; i++) {
char t = input[i];
if (isDone(done, t)) {
// cout << t << " is done." << endl;
continue;
}
int c = count(input, input[i]);
if (c > maxCount) {
maxCount = c;
letter = input[i];
}
done[doneCount] = t;
doneCount++;
}
return letter;
}