Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Малко помощ за задача със стек?

Featured Replies

Здравейте! Задачата  ми е да напиша функции за сравняване на два динамични стека,зададени със своите начални указатели:

 

-по брой елементи(без да се отчитат стойностите им);

 

-по съхраняваните в стековете стойности;

 

-по брой елементи и стойностите им.

 

Може ли някой да ми помогне за втората функция.Благодаря предварително.Досега съм написал това:

 

#include <iostream>

 

using namespace std;

 

 

 

struct elem {

 

 int key;

 

 elem *next;

 

}*start1 = NULL, *start2 = NULL;

 

 

 

void push(int &n, elem *&start) {

 

 elem *p = start;

 

 start = new elem;

 

 start->key = n;

 

 start->next = p;

 

}

 

 

 

int pop(int &n, elem *&start) {

 

 if (start)

 

 {

 

  n = start->key;

 

  elem *p = start;

 

  start = start->next;

 

  return 1;

 

 }

 

 else

 

 {

 

  return 0;

 

 }

 

}

 

 

 

int broi(int broi, elem *&start) {

 

 if (start)

 

 {

 

  elem *p = start;

 

  while (p != NULL)

 

  {

 

   broi++;

 

   p = p->next;

 

  }

 

  return broi;

 

 }

 

 else {

 

  return 0;

 

 }

 

}

 

 

 

void print() {

 

 int n;

 

 cout << "1:";

 

 while (pop(n, start1))

 

 {

 

  cout << "\t" << n;

 

 }

 

 cout << "2: ";

 

 while (pop(n, start2))

 

 {

 

  cout << "\t" << n;

 

 }

 

 cout << endl;

 

}

 

 

 

 

 

void main() {

 

 int n;

 

 do

 

 {

 

  cout << "Chislo:\n";

 

  cin >> n;

 

  if (n != 0) {

 

   push(n, start1);

 

  }

 

 } while (n != 0);

 

 

 

 do

 

 {

 

  cout << "Chislo za 2ri stek:\n";

 

  cin >> n;

 

  if (n != 0) {

 

   push(n, start2);

 

  }

 

 } while (n != 0);

 

 if ((broi(0, start1)) > (broi(0, start2)))

 

  cout << "Parvi stek ima poveche elementi " << endl;

 

 else if ((broi(0, start1)) < (broi(0, start2)))

 

  cout << "Vtori stek  ima poveche elementi" << endl;

 

 else if ((broi(0, start1)) == (broi(0, start2)))

 

  cout << "Stekovete sa ravni" << endl;

 

 

 

 

 

 system("pause");

 

}

 

Доста нескопосан начин сравнение - по три пъти ги броиш едни и същи стекове и за какво е нужно да я предаваш тая 0 като параметър?

   int b=broi(start1)-broi(start2);
   if   (b>0)    cout << "Parvi stek ima poveche elementi " << endl;
   else if (b<0) cout << "Vtori stek  ima poveche elementi" << endl;
   else          cout << "Stekovete sa ravni" << endl;

 

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.