Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int magic(int, int);
- int magic(int, float);
- int magic(int, char);
- int magic(int *,int *);
- int magic(int, int , int);
- int magic(long, long, int);
- int magic(long, long);
- int main()
- {
- int a = 2, b = 3, c = 4;
- long d = 123425363, e = 3225264;
- char f = 'f';
- float g = 3.14;
- int value;
- value = magic(a, b);
- value = magic(a, g);
- value = magic(c, f);
- value = magic(c, a);
- value = magic(a, b, c);
- value = magic(d, e, c);
- // value = magic(d,a); //в этом случае возникает проблема неоднозначности вызова.
- }
- int magic(int a, int b)
- {
- int i;
- for(i = 0; i < b; i++)
- a*=a;
- cout << "magic for two ints" << endl;
- return a;
- }
- int magic(int a, float b)
- {
- a = a*b - a/b;
- cout << "magic for float and int" << endl;
- return (a%10);
- }
- int magic(int a, char b)
- {
- a = b*2;
- cout << "magic for int ad char" << endl;
- return a;
- }
- int magic(int *a, int *b)
- {
- *a = *b + 24;
- cout << "magic for two pointers" << endl;
- return *a;
- }
- int magic(int a, int b, int c)
- {
- int value;
- value = (a * b)/c;
- cout << "magic for three ints" << endl;
- return value;
- }
- int magic(long a, long b, int c)
- {
- int value;
- value = ((a * b)/c)/sizeof(int);
- cout << "magic for long long and int" << endl;
- return value;
- }
- int magic(long a, long b)
- {
- int i;
- for(i = 0; i < b; i++)
- a*=a;
- cout << "magic for two longs" << endl;
- return a;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement