Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- struct Element
- {
- int Value;
- Element* NextElement;
- Element()
- {
- Value = 0;
- NextElement = nullptr;
- }
- Element(int value)
- {
- Value = value;
- NextElement = nullptr;
- }
- };
- struct LinkedList
- {
- Element* Head;
- Element* Tail;
- int Length;
- LinkedList()
- {
- Head = new Element();
- Tail = Head;
- Length = 0;
- }
- LinkedList(int value)
- {
- Head = new Element(value);
- Tail = Head;
- Length = 1;
- }
- void Add(int value)
- {
- Element* newElement = new Element(value);
- Tail->NextElement = newElement;
- Tail = newElement;
- Length++;
- }
- void PrintList()
- {
- Element* currentElement = Head;
- while (currentElement != nullptr)
- {
- cout << currentElement->Value << ends;
- currentElement = currentElement->NextElement;
- }
- }
- };
- bool IsElementPrimeNumber(Element* head, int currentNumber)
- {
- Element* currentElement = head;
- while (currentElement != nullptr)
- {
- if (currentNumber % currentElement->Value == 0)
- return false;
- else
- currentElement = currentElement->NextElement;
- }
- return true;
- }
- int main()
- {
- int n;
- cin >> n;
- int currentNumber = 2;
- LinkedList list = LinkedList(currentNumber);
- while (list.Length != n)
- {
- Element* currentElement = list.Head;
- if (IsElementPrimeNumber(list.Head, currentNumber))
- list.Add(currentNumber);
- currentNumber++;
- }
- list.PrintList();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement