Fixed up to 6 (including)

This commit is contained in:
2024-12-14 13:35:13 +03:00
parent 42cb45db32
commit d07a6428a5
10 changed files with 94 additions and 168 deletions

52
task6.h
View File

@@ -1,4 +1,4 @@
#include <iostream>
#include <iostream>
using namespace std;
#pragma once
@@ -11,52 +11,50 @@ namespace task6 {
Node* next;
};
Node* newNode(int key); //создает узел
Node* rand_list(int size); //создает список
void print_list(Node* head); //пишет элементы списка
Node* newNode(int key);
Node* rand_list(int size);
void print_list(Node* head);
bool is_list_empty(Node* head); //пишет, что список пуст, если подкинуть nullptr
void push_back(Node* head, int key); //поместить в конец
void push_forward(Node*& head, int key); //поместить в начало
void squeeze_in(Node* head, int pos, int key); //"всунуть" после элемента
bool is_list_empty(Node* head);
void push_back(Node* head, int key);
void push_forward(Node*& head, int key);
void squeeze_in(Node* head, int pos, int key);
int list_size(Node* head); //узнать размер списка
void behead(Node*& head); //получить список без первого элемента
int list_size(Node* head);
void behead(Node*& head);
int init()
{
setlocale(LC_ALL, "Russian");
int n; cout << "Введите размер: "; cin >> n;
int n; cout << "Введите длину: "; cin >> n;
Node* lst = rand_list(n);
if (is_list_empty(lst))
{
cout << "Список является пустым." << endl;
cout << "Список пуст." << endl;
return 0;
}
cout << "Список содержит элементы: " << endl;
cout << "Список: " << endl;
print_list(lst);
cout << "\n\nДобавим элемент 11111 в начало:" << endl;
cout << "Добавим в начало 11111:" << endl;
push_forward(lst, 11111);
print_list(lst);
cout << "\n\nДобавим элемент 22222 в конец:" << endl;
cout << "Добавим в конец 22222:" << endl;
push_back(lst, 22222);
print_list(lst);
cout << "\n\nДобавим элемент 33333 где-то в середине:" << endl;
cout << "Добавим в середину 33333:" << endl;
squeeze_in(lst, n/2+1, 33333);
print_list(lst);
cout << "\n\nВсего элементов сейчас: " << list_size(lst) << endl;
cout << "Длина списка: " << list_size(lst) << endl;
cout << "\n\nПолучим список без первого элемента с помощью функции обезглавливания:" << endl;
cout << "Список без первого элемента:" << endl;
behead(lst);
print_list(lst);
cout << "\n\nДа это жоско";
return 0;
}
@@ -158,18 +156,6 @@ namespace task6 {
void behead(Node*& head)
{
/*
⢿⣿⣿⣿⣭⠹⠛⠛⠛⢿⣿⣿⣿⣿⡿⣿⠷⠶⠿⢻⣿⣛⣦⣙⠻⣿
⣿⣿⢿⣿⠏⠀⠀⡀⠀⠈⣿⢛⣽⣜⠯⣽⠀⠀⠀⠀⠙⢿⣷⣻⡀⢿
⠐⠛⢿⣾⣖⣤⡀⠀⢀⡰⠿⢷⣶⣿⡇⠻⣖⣒⣒⣶⣿⣿⡟⢙⣶⣮
⣤⠀⠀⠛⠻⠗⠿⠿⣯⡆⣿⣛⣿⡿⠿⠮⡶⠼⠟⠙⠊⠁⠀⠸⢣⣿
⣿⣷⡀⠀⠀⠀⠀⠠⠭⣍⡉⢩⣥⡤⠥⣤⡶⣒⠀⠀⠀⠀⠀⢰⣿⣿
⣿⣿⡽⡄⠀⠀⠀⢿⣿⣆⣿⣧⢡⣾⣿⡇⣾⣿⡇⠀⠀⠀⠀⣿⡇⠃
⣿⣿⣷⣻⣆⢄⠀⠈⠉⠉⠛⠛⠘⠛⠛⠛⠙⠛⠁⠀⠀⠀⠀⣿⡇⢸
⢞⣿⣿⣷⣝⣷⣝⠦⡀⠀⠀⠀⠀⠀⠀⠀⡀⢀⠀⠀⠀⠀⠀⠛⣿⠈
⣦⡑⠛⣟⢿⡿⣿⣷⣝⢧⡀⠀⠀⣶⣸⡇⣿⢸⣧⠀⠀⠀⠀⢸⡿⡆
⣿⣿⣷⣮⣭⣍⡛⠻⢿⣷⠿⣶⣶⣬⣬⣁⣉⣀⣀⣁⡤⢴⣺⣾⣽⡇
*/
head = head->next;
}
}
}