Мазмұны:

C ++ көмегімен жалын: 8 қадам
C ++ көмегімен жалын: 8 қадам

Бейне: C ++ көмегімен жалын: 8 қадам

Бейне: C ++ көмегімен жалын: 8 қадам
Бейне: Верёвку, мыло и в горы ► 9 Прохождение The Legend of Zelda: Breath of the Wild (Wii U) 2024, Шілде
Anonim
C ++ көмегімен жалын
C ++ көмегімен жалын
C ++ көмегімен жалын
C ++ көмегімен жалын

Сәлем достар, біз жалын ойыны туралы бәріміз білеміз. Лол, бұл біздің балалық шағымызды бақытты еткен ең қызықты ойындардың бірі. Бұл нұсқаулықта біз C ++ тілінің көмегімен жалын бағдарламасын қалай кодтау керектігін қарастырамыз.

1 -қадам: қолданылатын түсініктер

Қолданылатын ұғымдар
Қолданылатын ұғымдар

Мұнда мен Circular қос байланысқан тізімін қолдандым.

2 -қадам: Негізгі функция

int main ()

{

жол аты1, аты2;

int n1, n2; cout << «БІРІНШІ АТЫН ЕНГІЗУ:»; getline (cin, name1); cout << «ЕКІНШІ АТЫН ЕТІҢІЗ:»; getline (cin, name2);

}

Біріншіден, біз бос орынмен екі атауды алуымыз керек, сондықтан мен бос орын бар жолды алу үшін getline () функциясын қолданамын.

3 -қадам: Арнайы таңбаларды қалай алып тастауға болады?

бос эмитент (жол және а)

{

үшін (int i = 0; a ! = '\ 0'; i ++)

{

егер (a > = 'a' && a <= 'z') {}

әйтпесе (a > = 'A' && a <= 'Z') {}

басқа

a = '0';

}

}

Енді біз &, $, ''… т.б сияқты арнайы таңбаларды алып тастауымыз керек. Бұл функцияны қолдана отырып, біз алфавитен басқа барлық таңбаларды алып тастадық. Міне, оны алып тастаудың орнына оны '0' дегенге ауыстырамын.

4 -қадам: Бірдей таңбаларды жою

үшін (i = 0; name1 ! = '\ 0'; i ++)

үшін (j = 0; name2 [j]! = '\ 0'; j ++)

егер ((name1 == name2 [j] || name1 == name2 [j] +32))

{

name1 = '0';

name2 [j] = '0';

үзіліс;

}

Бұл жалын ойынының бірінші қадамы, біз екі атаудың кейіпкерлерін алып тастауымыз керек. Бұл код үзіндісі бізге сол таңбаларды '0' -ге ауыстыруға көмектеседі, сонымен қатар ол үлкен және кіші әріптерді қосқанда жақсы жұмыс істейді. Үзіліс мәлімдемесі қайталанатын таңбаларды алып тастамауға көмектеседі.

j = 0; (i = 0; name1 ! = '\ 0'; i ++) үшін

егер (name1 ! = '0')

j ++;

үшін (i = 0; name2 ! = '\ 0'; i ++)

егер (name2 ! = '0')

j ++;

егер (j == 0) cout << «АЛАМ ЖОҚ»;

Мұнда біз екі атта да бар барлық 0 -ді алып тастаймыз. Сондықтан, ақырында, бәрібір, таңбалар жойылады. Содан кейін j - бұл бірдей таңбаларды алып тастағаннан кейін екі атта болатын әріптердің саны. Енді біз оның құрамында кемінде бір таңба бар -жоғын тексеруіміз керек. Кодты тиімді ету үшін, егер бірегей таңбалар болмаса, жалын ойынын ойнауға мүмкіндік жоқ екенін айту керек.

5 -қадам: Қосарланған байланысқан тізімді құру

а жолы «жалын»;

Алдымен «жалын» бар ғаламдық жолды жасаңыз.

typedef құрылымдық түйін {

char деректері;

түйін *келесі, *алдыңғы;

} түйін;

түйін *top = NULL, *temp;

Енді таңба деректері, келесі мекенжай көрсеткіші және алдыңғы мекенжай көрсеткіші бар құрылымды жасаңыз.

Содан кейін байланыстырылған тізімнің жоғарғы жағын көрсететін көрсеткішті жасаңыз.

node* ins (char a) {

түйін *жаңа1;

new1 = жаңа түйін;

new1-> деректер = a;

new1-> келесі = NULL;

new1-> prev = NULL;

егер (жоғарғы == NULL)

{

top = new1;

температура = жоғарғы;

}

басқа

{

temp-> келесі = жаңа1;

new1-> prev = temp;

temp = new1;

}

жоғарғы қайтару;

}

Содан кейін «жалын» жолын екі еселенген тізімге мінездеме бойынша енгізіңіз.

жарамсыз тексеру (int j) {

int count1, жалауша = 0;

үшін (int i = 0; a ! = '\ 0'; i ++)

top = ins (a );

}

6 -қадам: Жалынды ойнауға арналған код

Жалынды ойнауға арналған код
Жалынды ойнауға арналған код

жарамсыз тексеру (int j)

{

int count1, жалауша = 0;

үшін (int i = 0; a ! = '\ 0'; i ++)

top = ins (a );

түйін *cur = top, *prev1;

temp-> келесі = жоғарғы;

top-> prev = temp;

кезінде (1)

{

санау1 = 1;

уақыт (санау <<j)

{

cur = cur-> келесі;

count1 ++;

}

түйін *temp1 = cur;

prev1 = cur-> prev;

cur-> prev-> next = cur-> келесі;

cur-> next-> prev = cur-> prev;

temp1-> келесі = NULL;

тегін (temp1);

cur = prev1-> келесі;

түйін *тест = cur;

егер (тест-> деректер == тест-> келесі-> деректер)

үзіліс;

}

}

біз бірегей таңбалар санына сәйкес «жалын» жолы болып табылатын дөңгелек тізімді іске қосуымыз керек. Содан кейін біз санауға сәйкес келетін «жалындардағы» таңбаны алып тастауымыз керек. Біз осы код үзіндісінде екі еселенген байланыстырылған тізімді қолдануды түсінуіміз керек. Белгілі бір кейіпкерді алып тастауға көп көмектеседі. Ол үздіксіз жояды. Бір таңбалар бірнеше рет келетін шартқа жеткенше.

if (test-> data == test-> next-> data) үзіліс;

7 -қадам: Нәтижені айтыңыз

қосқыш (cur-> деректер)

{

case 'f': cout << «FRIENDS &&»;

үзіліс;

case 'l': cout << «LOVE <3»;

үзіліс;

case 'a': cout << «AFFECTION $»;

үзіліс;

case 'm': cout << «НЕКЕ:)»;

үзіліс;

case 'e': cout << «ДУШМАН:(»;

үзіліс;

case 's': cout << «SIBLING»;

үзіліс; }

Бұл ауыстыру операторын санауға сәйкес барлық басқа таңбаларды алып тастағаннан кейін қалатын соңғы нәтижені айту үшін қолданыңыз.

Енді сіз жалынды атауларды енгізу арқылы оңай ойнай аласыз, бұл күлкілі. Бұл ойынды досыңыздың атымен ойнаңыз және оларды ашуландырыңыз LOL. Рақмет сізге.

8 -қадам: Жалынға арналған код

FLAMES толық коды мына жерде, github.com/naveeen684/Flames-code-using-C-/tree/master