Advertisement
Guest User

Untitled

a guest
Nov 20th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.95 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. enum Groups
  7. {
  8. NO_GROUP,
  9. FAMILY,
  10. FRIENDS,
  11. COLLEAGUES
  12. };
  13.  
  14.  
  15. struct Contact
  16. {
  17. std::string Name;
  18. std::string Phone;
  19. std::string Group;
  20.  
  21. };
  22.  
  23. Contact* AddContact(Contact* Obj, int Amount)
  24. {
  25. if (Amount == 0)
  26. {
  27. Obj = new Contact[Amount + 1];
  28. }
  29. else
  30. {
  31. Contact* tmpContact = new Contact[Amount + 1];
  32. for (int i = 0; i < Amount; i++)
  33. {
  34. tmpContact[i] = Obj[i];
  35. }
  36. delete[] Obj;
  37. Obj = tmpContact;
  38. }
  39.  
  40. return Obj;
  41.  
  42. }
  43.  
  44. Contact* AddData(Contact* Obj, int Amount)
  45. {
  46. cout << '\n' <<Amount<<" "<<Obj<<'\n';
  47. //cout << Obj[Amount].Name;
  48. cout << "Name: " << '\n';
  49. cin >> Obj[Amount].Name;
  50.  
  51. cout << "Phone: " << '\n';
  52. cin >> Obj[Amount].Phone;
  53.  
  54. cout << "Group: " << '\n';
  55. cin >> Obj[Amount].Group;
  56.  
  57.  
  58.  
  59. return Obj;
  60. }
  61.  
  62. Contact* DeleteContact(std::string Name, Contact* Obj, int Amount)
  63. {
  64. int temp = 0;
  65. Contact* tmp = new Contact[Amount - 1];
  66. for (int i = 0; i < Amount; i++)
  67. {
  68. if (Obj[i].Name == Name) temp = i;
  69. }
  70. for (int i = temp+1; i < Amount; i++)
  71. {
  72. Obj[i - 1] = Obj[1];
  73. }
  74. for (int i = 0; i < Amount; i++)
  75. {
  76. tmp[i] = Obj[i];
  77. }
  78. delete[] Obj;
  79. Obj = tmp;
  80. delete[] tmp;
  81. return Obj;
  82. }
  83.  
  84.  
  85. int main()
  86. {
  87. int Amount = 0;
  88. Contact* ArrayContact = nullptr;
  89. int choice=0;
  90.  
  91. do
  92. {
  93. std::cout << "1.Create Contact" << '\n' << "2.Delete Contact" << '\n';
  94. std::cout << "3.Edit Contact" << '\n' << "4.Show contact(s)" << '\n' << "5.Exit" << '\n';
  95. std::cin >> choice;
  96. switch (choice)
  97. {
  98. case 1:
  99. ArrayContact = AddContact(ArrayContact, Amount);
  100. //cout << ArrayContact;
  101. Amount++;
  102. AddData(ArrayContact, Amount);
  103.  
  104. break;
  105. case 2:
  106. //DeleteContact()
  107. break;
  108. case 3:
  109. //EditContact();
  110. break;
  111. case 4:
  112. //ShowContact();
  113. break;
  114. case 5:
  115. return 0;
  116. break;
  117. default:
  118. std::cout << "Smth went wrong" << '\n';
  119. }
  120. } while (choice < 5);
  121.  
  122. return 0;
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement