Advertisement
Guest User

oop_lab4

a guest
Oct 10th, 2015
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.57 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. int magic(int, int);
  4. int magic(int, float);
  5. int magic(int, char);
  6. int magic(int *,int *);
  7. int magic(int, int , int);
  8. int magic(long, long, int);
  9. int magic(long, long);
  10.  
  11. int main()
  12. {
  13.     int a = 2, b = 3, c = 4;
  14.     long d = 123425363, e = 3225264;
  15.     char f = 'f';
  16.     float g = 3.14;
  17.     int value;
  18.     value = magic(a, b);
  19.     value = magic(a, g);
  20.     value = magic(c, f);
  21.     value = magic(c, a);
  22.     value = magic(a, b, c);
  23.     value = magic(d, e, c);
  24.   //  value = magic(d,a); //в этом случае возникает проблема неоднозначности вызова.
  25.  
  26. }
  27.  
  28. int magic(int a, int b)
  29. {
  30.     int i;
  31.     for(i = 0; i < b; i++)
  32.         a*=a;
  33.     cout << "magic for two ints" << endl;
  34.     return a;
  35. }
  36. int magic(int a, float b)
  37. {
  38.     a = a*b - a/b;
  39.     cout << "magic for float and int" << endl;
  40.     return (a%10);
  41. }
  42. int magic(int a, char b)
  43. {
  44.     a = b*2;
  45.     cout << "magic for int ad char" << endl;
  46.     return a;
  47. }
  48. int magic(int *a, int *b)
  49. {
  50.     *a = *b + 24;
  51.     cout << "magic for two pointers" << endl;
  52.     return *a;
  53. }
  54. int magic(int a, int b, int c)
  55. {
  56.     int value;
  57.     value = (a * b)/c;
  58.     cout << "magic for three ints" << endl;
  59.     return value;
  60. }
  61. int magic(long a, long b, int c)
  62. {
  63.     int value;
  64.     value = ((a * b)/c)/sizeof(int);
  65.     cout << "magic for long long and int" << endl;
  66.     return value;
  67. }
  68. int magic(long a, long b)
  69. {
  70.     int i;
  71.     for(i = 0; i < b; i++)
  72.         a*=a;
  73.     cout << "magic for two longs" << endl;
  74.     return a;
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement