Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- #include <cstdarg>
- double average_function(const int num_elements, ...)
- {
- va_list elements;
- double sum = 0.0;
- va_start(elements, num_elements);
- for(int i = 0; i < num_elements; ++i) {
- sum += va_arg(elements, double);
- }
- va_end(elements);
- return sum / num_elements;
- }
- int main( int argc, char ** argv ) {
- printf("Average: %lf", average_function(5, 25.0, 35.7, 50.1, 127.6, 75.0));
- return 0;
- }
- #include <initializer_list>
- #include <numeric>
- #include <iostream>
- double average(std::initializer_list<double> input) {
- double sum = std::accumulate(input.begin(), input.end(), 0.0);
- return sum / input.size();
- }
- int main() {
- std::cout << "Average: " << average({1, 2, 3, 4, 5, 6, 7, 8});
- }
- template<typename... Args>
- double average(Args... args)
- {
- return average({args...});
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement