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

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

Kaldata.com - Форуми

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

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

Добре дошли!

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

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

 

Задача C++ низове

Featured Replies

Здравейте! Мъчих се да реша една едва ли не елементарна задача и се надявам да ми помогнете със завършването й тъй като все още се уча и нямам опит :)

Условие:

1.Генериране на случаен стринг[128]-Пример (bcafemgn) -направено

2.Подреждането му по азбучен ред от най-малката буквена стойност до най-голямата или обратното - няма значение-Пример (abcefgmn или nmgfecba) -направено

3.Разместване на първите четири букви и всяка със своята двойка-Пример (abcefgmn -> ecbafgmn) -тук се колебая

4.Извеждане на разменените букви от 3. на нов ред-Пример (abce и ecba) -пробвах с промяната на swap реда sw(a[0],a[1]); към sw(a[0],a[4])

5.Разместване на първите четири с последните четири и техните двойки [3.] Пример(abcefgmn -> gfnmbaec)

Само да допълня, че най-накрая int n=8; и мисля, че тези "get" команди са излишни.

#include <iostream> 
#include <cstring> 
#include <ctime> 
#include <cstdlib> 
using namespace std; 
void randomize() 
{ 
srand(time(0)); 
} 
void makeUp(int n,char lo,char hi,char p[]) 
{
for(int i=0;i<n;i++) 
p[i]=lo+rand()%(hi-lo+1); 
p[n]=0; 
} 
void inp(char p[]) 
{ 
cin.getline(p,128); 
} 
void out(const char *p) 
{ 
cout<<p<<endl; 
} 
char getMaxVal(const char p[]) 
{ 
char x=p[0]; 
for(int i=1;p[i]!=0;i++) 
if (p[i]>x) 
x=p[i]; 
return x; 
} 
char getMinVal(const char p[]) 
{ 
char x=p[0]; 
for (int i=1;p[i]!=0;i++) 
if(p[i]<x) 
x=p[i]; 
return x; 
} 
int getMinNo (int start,const char p[]) 
{ 
int x=start; 
for(int i=start+1;p[i];i++) 
if(p[i]<x) 
x=p[i]; 
return x; 
} 
int getMaxNo (int start,const char p[]) 
{ 
int x=start; 
for(int i=start+1;p[i];i++) 
if(p[i]>p[x]) 
x=i; 
return x; 
} 
void sw(char &a, char &b) 
{ 
char t=a; 
a=b; 
b=t; 
} 
void selSort(char p[]) 
{ 
for (int i=0;p[i];i++) 
sw(p[i],p[getMinNo(i,p)]); 
} 
void selSortRe(char p[]) 
{ 
for (int i=0;p[i];i++) 
sw(p[i],p[getMaxNo(i,p)]); 
} 
int main() 
{ 
randomize(); 
char a[128]; 
int n=4; 
makeUp(n,'a','z',a); 
cout<<a<<endl; 
//inp(a); 
//out(a); 
cout<<"Max Value:"<<getMaxVal(a)<<endl; 
cout<<"Min Value:"<<getMinVal(a)<<endl; 
cout<<"Min Index:"<<getMinNo(0,a)<<endl; 
cout<<"Max Index:"<<getMaxNo(0,a)<<endl; 
sw(a[0],a[1]); 
out(a); 
selSort(a); 
out(a); 
selSortRe(a); 
out(a); 
return 0; 
}

Благодаря предварително!

Редактирано от kokoshoko
Допусната грешка (преглед на промените)

  • 3 месеца по-късно...

Защо си ги писал като мислиш, че са излишни?

Значи, ако бръкнеш в чичко гугъл за проблемът ти с разместването, 100% ще си получиш цялата информация.
 

  • 2 месеца по-късно...
преди 2 минути, Христина Роева написа:

Здравейте, във връзка с тази задача и за генерирането на случаен стринг , може ли да се направи да генерира случайни смислени думи .. ? 


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

 

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

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

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

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

Дарение

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

Бюлетин

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

Профил

Навигация

Търсене

Търсене

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

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