From 83f659d36b8c64209b72e70583cb4f0a6852e7be Mon Sep 17 00:00:00 2001 From: Andrew Date: Wed, 10 Feb 2021 22:18:52 +0400 Subject: =?UTF-8?q?=D0=97=D0=B0=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB=20run.sh=20?= =?UTF-8?q?=D0=BD=D0=B0=20Makefile=20=D0=B8=20=D0=B2=D1=8B=D0=BD=D0=B5?= =?UTF-8?q?=D1=81=20=D1=80=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D1=8E=20=D1=81=D1=82=D0=B5=D0=BA=D0=B0=20=D1=81=20=D1=84=D1=83?= =?UTF-8?q?=D0=BD=D0=BA=D1=86=D0=B8=D1=8F=D0=BC=D0=B8=20=D0=B2=20=D0=BE?= =?UTF-8?q?=D1=82=D0=B4=D0=B5=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + structures/Makefile | 9 +++++++++ structures/run.sh | 7 ------- structures/stack.h | 32 ++++++++++++++++++++++++++++++++ structures/task5.cpp | 33 ++------------------------------- 5 files changed, 44 insertions(+), 38 deletions(-) create mode 100644 .gitignore create mode 100644 structures/Makefile delete mode 100755 structures/run.sh create mode 100644 structures/stack.h diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f47cb20 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.out diff --git a/structures/Makefile b/structures/Makefile new file mode 100644 index 0000000..8694df6 --- /dev/null +++ b/structures/Makefile @@ -0,0 +1,9 @@ +CXX=g++ +CFLAGS=-Wall +COMPILE=$(CXX) $(CFLAGS) + +task5: + $(COMPILE) -o task.out task5.cpp + +clean: + rm task.out diff --git a/structures/run.sh b/structures/run.sh deleted file mode 100755 index f076a51..0000000 --- a/structures/run.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -name="${1%%.*}" -g++ -Wall -o $name.out $name.cpp -./$name.out -rm $name.out - diff --git a/structures/stack.h b/structures/stack.h new file mode 100644 index 0000000..171f8ae --- /dev/null +++ b/structures/stack.h @@ -0,0 +1,32 @@ +#pragma once + +struct stack +{ + int inf; + stack *next; +}; + +void push(stack *&h, int x) +{ + stack *r = new stack; + r->inf = x; + r->next = h; + h = r; +} + +int pop(stack *&h) +{ + int i = h->inf; + stack *r = h; + h = h->next; + delete r; + return i; +} + +void reverse(stack *&h) +{ + stack *head1 = NULL; + while (h) + push(head1, pop(h)); + h = head1; +} diff --git a/structures/task5.cpp b/structures/task5.cpp index 72e1381..f182625 100644 --- a/structures/task5.cpp +++ b/structures/task5.cpp @@ -1,36 +1,7 @@ #include -using namespace std; - -struct stack -{ - int inf; - stack *next; -}; +#include "stack.h" -void push(stack *&h, int x) -{ - stack *r = new stack; - r->inf = x; - r->next = h; - h = r; -} - -int pop(stack *&h) -{ - int i = h->inf; - stack *r = h; - h = h->next; - delete r; - return i; -} - -void reverse(stack *&h) -{ - stack *head1 = NULL; - while (h) - push(head1, pop(h)); - h = head1; -} +using namespace std; stack *result(stack *&h) { -- cgit v1.2.3