Guest User

Untitled

a guest
Jun 20th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.43 KB | None | 0 0
  1. // 2.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <iostream>
  6. #include <list>
  7. #include <string>
  8. using namespace std;
  9.  
  10. //-----------------------------------2-----------------------------------
  11.  
  12. struct pracownik
  13. {
  14. string nazwisko;
  15. int numer_id;
  16. double zarobek;
  17. };
  18. pracownik* nowyPracownik(string nazwisko, int numer_id, double zarobek)
  19. {
  20. pracownik* wsk;
  21. wsk=new pracownik;
  22. wsk->nazwisko=nazwisko;
  23. wsk->numer_id=numer_id;
  24. wsk->zarobek=zarobek;
  25. return wsk;
  26. }
  27. void wyswietl_nowy_pracownik(pracownik *p)
  28. {
  29. cout<<p->nazwisko<<endl;
  30. cout<<p->numer_id<<endl;
  31. cout<<p->zarobek<<endl;
  32. }
  33.  
  34. //-----------------------------------3-----------------------------------
  35.  
  36. list<pracownik> lista_praco;
  37. void Zatrudnij(string nazwisko, int numer_id, double zarobek)
  38. {
  39. pracownik *p;
  40. p = nowyPracownik(nazwisko, numer_id, zarobek);
  41. lista_praco.push_back(*p);
  42. }
  43. void wyswietl()
  44. {
  45. list<pracownik>::iterator it;
  46. pracownik p;
  47. for(it=lista_praco.begin();it!=lista_praco.end();it++)
  48. {
  49. p=*it;
  50. cout<<endl<<"\n Nazwisko: "<<p.nazwisko<<endl<<"\n Numer ID: "<<p.numer_id<<endl<<"\n Zarobek: "<<p.zarobek<<endl;
  51. }
  52. }
  53.  
  54. //-----------------------------------4-----------------------------------
  55.  
  56. pracownik *najdrozszy()
  57. {
  58. list<pracownik>::iterator it;
  59. pracownik * p;
  60. pracownik * p_nd;
  61. *p_nd=*(lista_praco.begin());
  62. for(it=lista_praco.begin();it!=lista_praco.end();it++)
  63. {
  64. *p=*it;
  65. if(p->zarobek>p_nd->zarobek)p_nd=p;
  66. }
  67. cout<<"Nazwisko pracownika o największym zarobku: "<<p_nd->nazwisko;
  68. return p_nd;
  69. }
  70. void Zwolnij(int id)
  71. {
  72. list<pracownik>::iterator it;
  73. pracownik p;
  74. for(it=lista_praco.begin();it!=lista_praco.end();it++)
  75. {
  76. p.nazwisko=it->nazwisko;
  77. p.numer_id=it->numer_id;
  78. p.zarobek=it->zarobek;
  79.  
  80. if(p.numer_id==id)
  81. {
  82. it = lista_praco.erase(it);
  83. }
  84. }
  85. }
  86.  
  87. //---------------------------------main----------------------------------
  88.  
  89. int _tmain(int argc, _TCHAR* argv[])
  90. {
  91. string nazwisko;
  92. int numer_id;
  93. double zarobek;
  94. cout<<"Podaj nazwisko (50 znakow): ";
  95. cin>>nazwisko;
  96. cout<<"Podaj numer ID: ";
  97. cin>>numer_id;
  98. cout<<"Podaj zarobek: ";
  99. cin>>zarobek;
  100.  
  101. Zatrudnij(nazwisko,numer_id,zarobek);
  102. Zatrudnij("franek",2,20.44);
  103. Zatrudnij("ja2n",6, 21.0);
  104. Zatrudnij("ja3n",2222, 20.442);
  105. wyswietl();
  106. Zwolnij(6);
  107. cout<<endl<<"-----------------"<<endl;
  108. wyswietl();
  109. najdrozszy();
  110. system("pause");
  111. return 0;
  112. }
Add Comment
Please, Sign In to add comment