Advertisement
Metaraddin

Untitled

Mar 25th, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.07 KB | None | 0 0
  1. // Kurs.cpp: определяет точку входа для консольного приложения.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <iostream>
  6. #include <string>
  7. #define Len 11
  8. using namespace std;
  9.  
  10. class Banknote
  11. {
  12. private:
  13. int m_rub[2][Len];
  14.  
  15. public:
  16. Banknote(int v1 = 0, int v2 = 0, int v5 = 0, int v10 = 0, int v50 = 0, int v100 = 0, int v200 = 0, int v500 = 0, int v1000 = 0, int v2000 = 0, int v5000 = 0)
  17. : m_rub{ {1, 2, 5, 10, 50, 100, 200, 500, 1000, 2000, 5000}, {v1, v2, v5, v10, v50, v100, v200, v500, v1000, v2000, v5000} }
  18. {
  19. }
  20.  
  21. int funSum()
  22. {
  23. int sum = 0;
  24. for (int i = 0; i < Len; i++)
  25. {
  26. sum = sum + m_rub[0][i] * m_rub[1][i];
  27. }
  28. return sum;
  29. }
  30.  
  31. int checkRub(int ind) // Возвращает индекс в случе успешной проверки, (-1) - если купюра индификатора "ind" (m_rub[0][ind]) не найдена.
  32. {
  33. for (int i = 0; i < Len; i++)
  34. {
  35. if (ind == m_rub[0][i])
  36. {
  37. return (i);
  38. }
  39. }
  40. return (-1);
  41. }
  42.  
  43. int setRub(int ind, int val) // Добавляет val к кол-ву купюр одного вида и возвращает 0 или возвращает (-1) в случае ошибки.
  44. {
  45. if (checkRub(ind) != -1)
  46. {
  47. m_rub[1][checkRub(ind)] = m_rub[1][checkRub(ind)] + val;
  48. return (0);
  49. }
  50. else return (-1);
  51. }
  52.  
  53. int getRub(int ind) // Возвращает кол-во купюр одного вида или (-1) в случае ошибки.
  54. {
  55. if (checkRub(ind) != -1)
  56. {
  57. return m_rub[1][checkRub(ind)];
  58. }
  59. else return (-1);
  60. }
  61. };
  62.  
  63. class Ingredient
  64. {
  65. private:
  66. int m_largeCup;
  67. int m_smallCup;
  68. int m_water;
  69. int m_beans;
  70. int m_milk;
  71. int m_cream;
  72. int m_whiskey;
  73. int m_sugar;
  74. };
  75.  
  76. class Coffee
  77. {
  78. string name;
  79. int price;
  80. Ingredient recipe;
  81. };
  82.  
  83. int main()
  84. {
  85. Banknote balance(100, 100, 100, 100, 50, 50, 25, 10, 6, 3, 1);
  86. cout << balance.funSum() << endl;
  87. balance.setRub(500, 1);
  88. cout << balance.funSum() << endl;
  89. cout << balance.getRub(500);
  90. cin.get(); cin.get();
  91. return 0;
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement