Advertisement
Guest User

Untitled

a guest
Dec 7th, 2016
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.98 KB | None | 0 0
  1. //main
  2. #include <iostream>
  3. #include "Node.h"
  4. #include "Kolejka.h"
  5.  
  6. using namespace std;
  7.  
  8. int main()
  9. {
  10.     Kolejka k;
  11.     k.push(1);
  12.     k.push(25);
  13.     k.push(77);
  14.     k.printKol();
  15.     k.pop();
  16.     k.printKol();
  17.     return 0;
  18. }
  19.  
  20. //kolejka.h
  21. #ifndef KOLEJKA_H
  22. #define KOLEJKA_H
  23. #include "Node.h"
  24.  
  25.  
  26. class Kolejka
  27. {
  28.     private:
  29.         Node *head, *tail;
  30.     public:
  31.         Kolejka();
  32.         ~Kolejka();
  33.         void push(int info);
  34.         Node* pop();
  35.         void printKol();
  36.         bool isEmpty();
  37. };
  38.  
  39. #endif // KOLEJKA_H
  40.  
  41. //kolejka.cpp
  42. #include "Kolejka.h"
  43. #include "Node.h"
  44. #include <iostream>
  45.  
  46. Kolejka::Kolejka()
  47. {
  48.     head = tail = 0;
  49. }
  50.  
  51. Kolejka::~Kolejka()
  52. {
  53.     //dtor
  54. }
  55.  
  56. bool Kolejka::isEmpty(){
  57.     if (head == 0)
  58.         return 1;
  59.     else
  60.         return 0;
  61. }
  62.  
  63. void Kolejka::push(int el){
  64.     if (isEmpty()){
  65.         Node* tmp = new Node(el);
  66.         head = tmp;
  67.         tail = tmp;
  68.     }
  69.     else{
  70.         Node* tmp = new Node(el);
  71.         tail->setNext(tmp);
  72.         tail=tmp;
  73.     }
  74.  
  75. }
  76.  
  77. Node* Kolejka::pop(){
  78.     if (isEmpty()){
  79.         std::cout << "error";
  80.         return 0;
  81.     }
  82.     else{
  83.         Node* tmp = head;
  84.         head = head->getNext();
  85.         return tmp;
  86.     }
  87. }
  88.  
  89. void Kolejka::printKol(){
  90.     Node* tmp = head;
  91.     while (tmp != 0){
  92.         std::cout << tmp->getInfo() << " ";
  93.         tmp = tmp->getNext();
  94.     }
  95.     std::cout << std::endl;
  96.  
  97. }
  98.  
  99. //node.h
  100. #ifndef NODE_H
  101. #define NODE_H
  102.  
  103.  
  104. class Node
  105. {
  106.     private:
  107.         int info;
  108.         Node* next;
  109.     public:
  110.         Node();
  111.         ~Node();
  112.         Node(int inf);
  113.         Node* getNext();
  114.         void setNext(Node* nex);
  115.         int getInfo();
  116.         void setInfo(int inf);
  117. };
  118.  
  119. #endif // NODE_H
  120.  
  121. //node.cpp
  122. #include "Node.h"
  123.  
  124. Node::Node()
  125. {
  126.     info = 0;
  127.     next = 0;
  128. }
  129.  
  130. Node::~Node()
  131. {
  132.     //dtor
  133. }
  134. Node::Node(int inf){
  135.     info = inf;
  136.     next = 0;
  137. }
  138.  
  139. Node* Node::getNext(){
  140.     return next;
  141. }
  142.  
  143. void Node::setNext(Node* nex){
  144.     next = nex;
  145. }
  146.  
  147. int Node::getInfo(){
  148.     return info;
  149. }
  150.  
  151. void Node::setInfo(int inf){
  152.     info = inf;
  153. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement