Да се въведат в стек n числа и да се отпечатат броят на тези, които са по-малки от последното.
Всички задачи за:
Оградете кода с:
[c] за С++ програми [/c]
[pascal] за паскал [/pascal]Достъп до сайта:
С повишена трудност:
Задачите със звездичка са с повишена трудност - решавайте ги, ако сте решили другите.-
Последни задачи:
Последни решения:
- Marin

за Къде се намира точка - Marin

за Вмъкване и изтриване на елемент * - Marin

за Позицията на X - Alexander1





за Броят на максималните елементи - Alexander1





за Броят на максималните елементи - Marin

за Пари за закуска - Alexander1





за Ученици с дадена оценка - Alexander1





за По-големи от средното
- Marin
Топ участници за момента:
kaloyan164 решения/коментараGadget131 решения/коментараdreanor112 решения/коментараmarant74 решения/коментараsup3rEva68 решения/коментараБоряна65 решения/коментараNadq53 решения/коментараmaleboldjia48 решения/коментараkrisizdravi9543 решения/коментараMartinPlamenov38 решения/коментараЗадачи за дата:
август 2026 П В С Ч П С Н « февр. 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 Предишни задачи:
- февруари 2017 (38)
- януари 2017 (16)
- декември 2016 (17)
- ноември 2016 (14)
- октомври 2016 (26)
- юни 2016 (3)
- май 2016 (15)
- април 2016 (12)
- март 2016 (14)
- февруари 2016 (9)
- май 2015 (2)
- април 2015 (8)
- март 2015 (8)
- февруари 2015 (13)
- януари 2015 (11)
- декември 2014 (9)
- ноември 2014 (24)
- октомври 2014 (16)
- юни 2014 (2)
- май 2014 (8)
- април 2014 (10)
- март 2014 (14)
- февруари 2014 (22)
- януари 2014 (25)
- декември 2013 (27)
- ноември 2013 (37)
- октомври 2013 (38)
- септември 2013 (2)
- юни 2013 (6)
- май 2013 (10)
- април 2013 (19)
- март 2013 (35)
- февруари 2013 (32)
- януари 2013 (29)
- декември 2012 (28)
- ноември 2012 (37)
- октомври 2012 (26)
- септември 2012 (3)
- май 2012 (16)
- април 2012 (16)
- март 2012 (27)
- февруари 2012 (10)
- януари 2012 (13)
- ноември 2011 (16)
- октомври 2011 (8)
- април 2011 (4)
- март 2011 (19)
- февруари 2011 (19)
- януари 2011 (18)
- декември 2010 (25)
- ноември 2010 (10)
- октомври 2010 (33)
- септември 2010 (1)
По теми:
- break
- бройни системи
- булев тип
- вариантен избор
- вложена условна команда
- вложени цикли
- дати
- динамична променлива
- дървета
- запис
- изброим тип
- класове
- манипулатори на извеждането
- масив
- масив от записи
- многомерни масиви
- множества
- модули
- низ
- низове
- низови функции
- опашки
- отпечатване
- преобразуване на типовете
- реален тип
- рекурсия
- символен тип
- сортиране на масиви
- специфични операции за цели числа
- списъци
- стекове
- структури
- текстов файл
- типизирани файлове
- условна команда
- файл
- функции
- хедър файлове
- целочислен тип
- цикъл do-while
- цикъл for
- цикъл repeat
- цикъл while
- цифри на число
- шах
Всички задачи:
- 2016-2017 (111)
- Архив задачи (791)
- 2010-2011 (131)
- Информатика (131)
- 2011-2012 (109)
- ЗИП Информатика (4)
- 10в (4)
- Информатика (105)
- ЗИП Информатика (4)
- 2012-2013 (227)
- 2013-2014 (182)
- 2014-2015 (91)
- 2015-2016 (53)
- 2010-2011 (131)
Мета
Препоръчваме хостинг:

А ето и решение на подобна задача, което включва и кода за примерна реализация на стек.
#include <cstdlib> #include <iostream> using namespace std; // максимален брой елементи в стека const int N=50; // указател към върха на стека int br = 0; // масив за съхранение на елементите на стека int s[N]; // инициализиране на стека void init() { br=0; } // проверка дали стека е празен bool isEmpty() { return br==0; } // проверка дали стека е пълен bool isFull() { return br==N; } // запис на стойност в стека bool push(int X) { bool ok = !isFull(); if (ok){ s[br] = X; br++; } return ok; } // извличане на стойност от стека bool pop(int &X) { bool ok = !isEmpty(); if (ok) { br--; X = s[br]; } return ok; } // печат на стека void print() { cout<<"top: |"<<br<<"| stack: |"; for(int i=0;i<br;i++) cout<<s[i]<<'|'; cout<<endl; } // да се въведат в стек n числа и да се отпечатат тези, // които са по-големи от последното int main ( ) { int n; cout<<"vavedete n:"; cin>>n; // инициализираме стека init(); print(); // въвеждаме числата int chislo; for(int i=1; i<=n; i++) { cin>>chislo; push(chislo); } print(); // прочитаме последното int posledno; pop(posledno); cout<<"Po-golemite ot "<<posledno<<" sa:\n"; // прочитаме останалите for(int i=1; i<n; i++) { pop(chislo); if(chislo>posledno) cout<<chislo<<endl; } print(); system("pause"); return 0; }#include <cstdlib> #include <iostream> using namespace std; // максимален брой елементи в стека const int N=50; // указател към върха на стека int br=0; // масив за съхранение на елементите на стека int s[N]; // инициализиране на стека void init() { br=0; } // проверка дали стека е празен bool isEmpty() { return br==0; } // проверка дали стека е пълен bool isFull() { return br==N; } // запис на стойност в стека bool push(int X) { bool ok=!isFull(); if (ok){ s[br]=X; br++; } return ok; } // извличане на стойност от стека bool pop(int &X) { bool ok=!isEmpty(); if (ok) { br--; X=s[br]; } return ok; } // печат на стека void print() { cout<<"top: |"<<br<<"| stack: |"; for(int i=0;i<br;i++) cout<<s[i]<<'|'; cout<<endl; } int main ( ) { int n; cout<<"Vuvedete n:"; cin>>n; // инициализираме стека init(); print(); // въвеждаме числата int chislo; for(int i=1; i<=n; i++) { cin>>chislo; push(chislo); } print(); // прочитаме последното int posledno; pop(posledno); cout<<"Po-malkite ot "<<posledno<<" sa:\n"; // прочитаме останалите for(int i=n; i>1; i--) { pop(chislo); if(chislo<posledno) cout<<chislo<<endl; } print(); system("pause"); return 0; }#include <cstdlib> #include <iostream> using namespace std; const int N=50; int br = 0; int s[N]; void init() { br=0; } bool isEmpty() { return br==0; } bool isFull() { return br==N; } bool push(int X) { bool ok = !isFull(); if (ok){ s[br] = X; br++; } return ok; } bool pop(int &X) { bool ok = !isEmpty(); if (ok) { br--; X = s[br]; } return ok; } void print() { cout<<"top: |"<<br<<"| stack: |"; for(int i=0;i<br;i++) cout<<s[i]<<'|'; cout<<endl; } int main ( ) { int n; cout<<"vavedete n:"; cin>>n; init(); print(); int chislo; for(int i=1; i<=n; i++) { cin>>chislo; push(chislo); } print(); int posledno; pop(posledno); cout<<"Po-malkite ot "<<posledno<<" sa:\n"; for( int i=n-1 ; i>0; i--) { pop(chislo); if(chislo<posledno) cout<<chislo<<endl; } print(); system("pause"); return 0; }#include <cstdlib> #include <iostream> using namespace std; // максимален брой елементи в стека const int N=50; class Stack { public: // указател към върха на стека int br; // масив за съхранение на елементите на стека int s[N]; Stack(); bool isEmpty() const; bool isFull() const; bool push(int X); bool pop(int &x); void print() const; }; // инициализиране на стека Stack::Stack() { br=0; } // проверка дали стека е празен bool Stack::isEmpty() const { return br==0; } // проверка дали стека е пълен bool Stack::isFull() const { return br==N; } // запис на стойност в стека bool Stack::push(int X) { bool ok = !isFull(); if (ok){ s[br] = X; br++; } return ok; } // извличане на стойност от стека bool Stack::pop(int &X) { bool ok = !isEmpty(); if (ok) { br--; X = s[br]; } return ok; } // печат на стека void Stack::print() const { cout<<"top: |"<<br<<"| stack: |"; for(int i=0;i<br;i++) cout<<s[i]<<'|'; cout<<endl; } // да се въведат в стек n числа и да се отпечатат тези, // които са по-големи от последното int main ( ) { int n; cout<<"vavedete n:"; cin>>n; // инициализираме стека Stack stk; stk.print(); // въвеждаме числата int chislo; for(int i=1; i<=n; i++) { cin>>chislo; stk.push(chislo); } stk.print(); // прочитаме последното int posledno, br=0; stk.pop(posledno); cout<<"Broqt na po-malkite ot "<<posledno<<" e:\n"; // прочитаме останалите for(int i=1; i<n; i++) { stk.pop(chislo); if(chislo<posledno) br++; } cout<<br<<endl; stk.print(); system("pause"); return 0; }Много добре!
int main(int argc, char *argv[]) { int n; //деклариране на променлива с име n cout<<"Vuvedete n: "; // извеждане на текст на екрана cin>>n; //въвеждане на стойността на n от клавиатурата cout<<"Vuvedete chisla:"; // извеждане на текст на екрана Stack stk, stk1; // деклариране на променливи от тип стек int chislo; // деклариране на променлива с име chislo for(int i=1; i<=n; i++) { // цикъл фор cin>>chislo; // въвеждане на стойността на chislo от клавиатурата stk.push(chislo);// запис на стойността на chislo в стека } stk.copy(stk1); // копиране на стека stk1 stk1.print(); // печат на стека stk1.copy(stk);// копиране на стека stk stk.print(); // печат на стека