Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Juvenis
0 / 0 / 0
Регистрация: 09.01.2017
Сообщений: 36
#1

Написать программу, удаляющую из стека все элементы, кратные 5 - C++

09.01.2017, 08:10. Просмотров 287. Ответов 4
Метки нет (Все метки)

Предположим, что уже построен стек,элементами которого являются целые числа. Написать программу,которая удаляет из стека все элементы,кратные 5 (использовать для промежуточного хранения элементов стека однонаправленный список без заглавного звена)
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2017, 08:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу, удаляющую из стека все элементы, кратные 5 (C++):

Написать программу, удаляющую из текста все буквы, совпадающие с его последней буквой - C++
Нужно написать программу, удаляющую из текста все буквы, совпадающие с его последней буквой. Помогите, очень прошу!

Написать программу, которая выводит в консоль все числа, кратные 3 в диапазоне от 0 до 100 - C++
Написать программу, которая выводит в консоль все числа, кратные 3 в диапазоне от 0 до 100. прошу помощи использовать while if...

Массивы: все элементы, кратные 10, заменить 0, все нечетные элементы удвоить, а четные уменьшить в 2 раза - C++
помогите написать программу (массивы) Дан массив целых чисел из 50 элементов. - Все элементы кратные 10 заменить 0; - Все нечетные...

Дан массив целых чисел из 10 элементов.Все элементы кратные 10 заменить 0;Все нечетные элементы удвоить, а четные уменьшить на 2; - C++
Дан массив целых чисел из 50 элементов. Все элементы кратные 10 заменить 0; Все нечетные элементы удвоить, а четные уменьшить на 2; ...

Написать программу на удаляющую из строки символы с5 по 12. - C++
Написать программу на удаляющую из строки символы с5 по 12. P.S. Убедительная просьба надо написать на С а не на С++

Написать программу, удаляющую символы пробела в файле - C++
Написать пррограмму на С++, где Символьный файл содержит пробелы. Сжать этот файл (убрать пробелы).

4
MrGluck
Модератор
Эксперт CЭксперт С++
7510 / 4642 / 700
Регистрация: 29.11.2010
Сообщений: 12,675
09.01.2017, 13:10 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <forward_list>
#include <iostream>
#include <stack>
 
int main()
{
    std::stack<int> st;
    std::forward_list<int> buf;
    for (int i=1; i < 12; i++)
        st.push(i);
 
    for (int x; !st.empty() && (x = st.top()); st.pop())
        if (x % 5)
            buf.push_front(x);
 
    for (const auto x : buf)
        st.push(x);
 
    for (int x; !st.empty() && (x = st.top()); st.pop())
        std::cout << x << " ";
}
0
Juvenis
0 / 0 / 0
Регистрация: 09.01.2017
Сообщений: 36
23.01.2017, 07:02  [ТС] #3
--Необходимо условие задачи записать в таком виде
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include<iostream.h>
struct node
{
  int elem;
  node *sled;
};
class Spisok
{
  private:
    node *stk;
    int klad;
  public:
    Spisok () { stk=NULL; }
    int Set_Stack () {return klad;}
    void POSTROENIE();
    void VYVOD();
    void W_S(int);
    void YDALENIE ();
    void OCHISTKA();
};
 
void main ()
{
  Spisok A;
  int  el;
  int t; //Содержимое информационного поля верхушки стека.
 
  A.POSTROENIE (); A.VYVOD ();
  cout<<"Введите вставляемый элемент: ";
  cin>>el;
  A.W_S (el); A.VYVOD ();
 
  cout<<"Удалим элемент из стека.\n";
  A.YDALENIE ();
  t=A.Set_Stack();
  cout<<"Из стека было извлечено число... "<<t<<endl;
  A.VYVOD ();
  A.OCHISTKA();
}
 
void Spisok::POSTROENIE ()
//Построение стека, заданного указателем stk. 
{
  node *t;
  int el;
 
  cout<<"Вводите элементы стека: ";
  cin>>el;
  while  (el!=0)
  {
     t = new (node);
    (*t).elem = el; (*t).sled = stk;
    stk = t; cin>>el;
  }
}
 
void Spisok::VYVOD ()
//Вывод содержимого стека, заданного указателем stk.
{
  node *t;
 
  cout<<"Содержимое стека: "; t = stk;
  while  (t!=NULL)
    {cout<<(*t).elem<<" "; t = (*t).sled;}
  cout<<endl;
}
 
void Spisok::W_S (int el)
//Помещение элемента el в стек stk.
{
  node *q;
 
  q = new (node);
  (*q).elem = el; (*q).sled = stk; stk = q;
}
 
void Spisok::YDALENIE ()
//Удаление элемента из стека, заданного указателем stk.
//Значение информационного поля удаляемого элемента 
//помещается в параметр klad.
{
  node *q;
 
  if  (stk==NULL)
    cout<<"Стек пуст!\n";
  else
  {
    klad = (*stk).elem; q = stk;
    stk = (*stk).sled; delete q;
  }
}
 
void Spisok::OCHISTKA()
//Возврат выделенной памяти в "кучу".
{
  node *t,*q;
 
  t = stk;
  if (t!=NULL)
  {
    q=(*t).sled;
    while  (q!=NULL)
    {
      delete t; t = q; q =(*q).sled;
    }
    delete t;
  }
}
0
MrGluck
Модератор
Эксперт CЭксперт С++
7510 / 4642 / 700
Регистрация: 29.11.2010
Сообщений: 12,675
23.01.2017, 12:52 #4
Цитата Сообщение от Juvenis Посмотреть сообщение
Необходимо
Запишите, в чём проблема?
Или задача стоит в том, чтобы превратить нормальное решение в говнокод, чтобы не было понятно, что его писал не Вася Пупкин?
0
Juvenis
0 / 0 / 0
Регистрация: 09.01.2017
Сообщений: 36
30.01.2017, 06:12  [ТС] #5
Проблема в том,что я планирую прежде всего разобраться в задаче ,а так как вы подали решение задачи мне не понятное,то я выслал понятную мне структуру кода с помощью которой вполне реально решить данную задачу.
P.S. и это с учетом того,что работаю я в Borland и ваша программа не работает
0
30.01.2017, 06:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.01.2017, 06:12
Привет! Вот еще темы с ответами:

Написать программу удаляющую заданную букву из заданного предложения - C++
Написать программу удаления вводимой с клавиатуры буквы из введенного предложения(для представления строк использовать массив типа ...

Написать функцию, которая в одномерном массиве заменяет элементы кратные некоторому числу на нулевые элементы - C++
Знатоки, помогите написать программы по информатике. У меня полный завал по этой теме, а через неделю уже экзамен :( Надеюсь на вашу...

Cоставить программу, удаляющую все пробелы из введеной строки - C++
Доброго времени суток) Не могу понять Как выполнить задание: Нужно в си ++ составить две функции: в первом варианте:функция...

Составить программу, удаляющую все пробелы из введенной строки - C++
Составить программу, удаляющие все пробелы из введенной строки freepascal напишите код программы


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.