forked from ucsb-cs24-w22/lab03_starter
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtestlist.cpp
More file actions
74 lines (66 loc) · 2.32 KB
/
testlist.cpp
File metadata and controls
74 lines (66 loc) · 2.32 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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
// testlist.cpp
// Tests intlist.cpp
#include "intlist.h"
#include <cstdlib> // provides atoi
#include <iostream>
using namespace std;
// creates two lists (one empty), and does simple tests of list methods
int main(int argc, char *argv[]) {
IntList list1, list2;
int first = 0, second = 0, last = 0, initial_size;
// append command line arguments to list1
if (argc < 2) {
cout << "error: need at least one int arg on command line" << endl;
cout << "usage: " << argv[0] << " int [int ...]" << endl;
return 1;
}
initial_size = argc - 1;
for (int i = 1; i < argc; i++) {
int value = atoi(argv[i]);
list1.append(value);
if (i == 1)
first = value;
if (i == 2)
second = value;
if (i == initial_size)
last = value;
}
// print and test methods for list1
cout << "List 1: \n ";
list1.print();
cout << endl << " count: " << list1.count() << endl;
int sum = list1.sum();
cout << " sum: " << sum << endl;
cout << " contains " << first << " ? "
<< (list1.contains(first)? "yes" : "no") << endl;
cout << " contains " << second << " ? "
<< (list1.contains(second)? "yes" : "no") << endl;
cout << " contains " << last << " ? "
<< (list1.contains(last)? "yes" : "no") << endl;
cout << " contains " << sum << " ? "
<< (list1.contains(sum)? "yes" : "no") << endl;
cout << " max: " << list1.max() << endl;
cout.setf(ios::fixed);
cout.setf(ios::showpoint);
cout.precision(3);
cout << " average: " << list1.average() << endl;
cout << " List after insertFirst(sum): \n ";
list1.insertFirst(sum);
list1.print();
cout << endl;
// test methods for empty list2 (just need one contains test though)
cout << "Empty list 2: \n ";
list2.print();
cout << endl << " count: " << list2.count() << endl;
cout << " sum: " << list2.sum() << endl;
cout << " contains 1 ? "
<< (list2.contains(1)? "yes" : "no") << endl;
cout << " max: " << list2.max() << endl;
cout << " average: " << list2.average() << endl;
cout << " List 2 after insertFirst(3), then insertFirst(1): \n ";
list2.insertFirst(3);
list2.insertFirst(1);
list2.print();
cout << endl;
return 0;
}