In this HackerRank Functions problem solution in the c++ programming language, Functions are a bunch of statements glued together. A function is provided with zero or more arguments, and it executes the statements on it. Based on the return type, it either returns nothing (void) or something.
The syntax for a function is
return_type function_name(arg_type_1 arg_1, arg_type_2 arg_2, …) {
…
…
…
[if return_type is non void]
return something of type `return_type`;
}
For example, a function to return the sum of four parameters can be written as
int sum_of_four(int a, int b, int c, int d) {
int sum = 0;
sum += a;
sum += b;
sum += c;
sum += d;
return sum;
}
Write a function int max_of_four(int a, int b, int c, int d) which returns the maximum of the four arguments it receives.
+= : Add and assignment operator. It adds the right operand to the left operand and assigns the result to the left operand.
a += b is equivalent to a = a + b;
HackerRank functions problem solution in c++ programming.
#include <iostream> #include <cstdio> using namespace std; int max_of_four(int a, int b, int c, int d) { int data[]={a,b,c,d}; int max = data[0]; for(int i=1;i<=4;i++){ if(max<data[i]) max=data[i]; } return max; } int main() { int a, b, c, d; scanf("%d %d %d %d", &a, &b, &c, &d); int ans = max_of_four(a, b, c, d); printf("%d", ans); return 0; }
Second solution
#include <iostream> #include <algorithm> using namespace std; int max_of_four(int a, int b, int c, int d) { return max(max(a,b),max(c,d)); } int main() { int a, b, c, d; scanf("%d %d %d %d", &a, &b, &c, &d); int ans = max_of_four(a, b, c, d); printf("%d", ans); return 0; }
Noob question
what is
int data[]={a,b,c,d};
in the first solution?
looks like a string?
its an array
That's an array, we can store multiple datas of same kind in it.