Talaan ng mga Nilalaman:
- Hakbang 1: Ginamit na Mga Konsepto
- Hakbang 2: Pangunahing Pag-andar
- Hakbang 3: Paano Mag-omit ng Mga Espesyal na Character?
- Hakbang 4: Inaalis ang Parehong Mga Character
- Hakbang 5: Lumilikha ng Listahan ng Dobleng Dobleng Naka-link
- Hakbang 6: Code upang i-play ang Flames
- Hakbang 7: Sabihin ang Resulta
- Hakbang 8: Code para sa Flames
Video: FLAMES Paggamit ng C ++: 8 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
Kamusta mga kaibigan, Alam nating lahat ang tungkol sa laro ng apoy. Lol, Isa ito sa mga nakakatawang laro na lalong nagpasaya sa aming pagkabata. Sa itinuturo na ito, makikita natin kung paano mag-code ng isang programa ng apoy gamit ang wikang C ++.
Hakbang 1: Ginamit na Mga Konsepto
Dito ko ginamit ang listahan ng doble na naka-link na Circular.
Hakbang 2: Pangunahing Pag-andar
int main ()
{
pangalan ng string1, pangalan2;
int n1, n2; cout << "ENTER UNANG PANGALAN:"; getline (cin, pangalan1); cout << "ENTER SECOND NAME:"; getline (cin, pangalan2);
}
Una, kailangan nating makuha ang dalawang pangalan na may puwang kaya ginagamit ko ang pagpapaandar ng getline () upang makuha ang puwang na may puwang.
Hakbang 3: Paano Mag-omit ng Mga Espesyal na Character?
void emit (string at a)
{
para sa (int i = 0; a ! = '\ 0'; i ++)
{
kung (a > = 'a' && a <= 'z') {}
kung hindi man (a > = 'A' && a <= 'Z') {}
iba pa
a = '0';
}
}
Ngayon, kailangan naming alisin ang mga espesyal na character tulad ng &, $, ''… atbp. Sa pamamagitan ng paggamit ng pagpapaandar na ito tinanggal namin ang lahat ng mga character maliban sa mga alpabeto. Dito, sa halip na alisin, pinalitan ko ito ng '0'.
Hakbang 4: Inaalis ang Parehong Mga Character
para sa (i = 0; name1 ! = '\ 0'; i ++)
para sa (j = 0; name2 [j]! = '\ 0'; j ++)
kung ((name1 == name2 [j] || name1 == name2 [j] +32))
{
name1 = '0';
pangalan2 [j] = '0';
pahinga;
}
Ito ang unang hakbang ng laro ng apoy, Na kailangan naming alisin ang parehong mga character na naroroon sa dalawang pangalan. Tinutulungan kami ng snippet ng code na palitan ang parehong mga character sa pamamagitan ng '0' at ito rin ay gumagana nang maayos kahit na naglalaman ito ng parehong uppercase at lower case. Tinutulungan tayo ng pahayag ng pahinga upang maiwasan ang pagtanggal ng mga paulit-ulit na character.
j = 0; para sa (i = 0; name1 ! = '\ 0'; i ++)
kung (name1 ! = '0')
j ++;
para sa (i = 0; name2 ! = '\ 0'; i ++)
kung (pangalan2 ! = '0')
j ++;
kung (j == 0) cout << "WALANG FLAMES";
Dito, aalisin namin ang lahat ng '0's na naroroon sa parehong pangalan. Samakatuwid, sa wakas, lahat ng pareho, ang mga character ay tinanggal. Pagkatapos ang j ay nadagdagan na ito ay ang bilang ng mga titik na naroroon sa parehong mga pangalan pagkatapos alisin ang parehong mga character. Ngayon kailangan naming suriin kung naglalaman ito ng hindi bababa sa isang character o hindi. Upang gawing mahusay ang code kailangan nating sabihin na walang posibilidad na i-play ang laro ng apoy kung naglalaman ito ng walang natatanging mga character.
Hakbang 5: Lumilikha ng Listahan ng Dobleng Dobleng Naka-link
string a = "apoy";
Una, lumikha ng isang pandaigdigang string na naglalaman ng "apoy".
typedef struct node {
data ng char;
node * susunod, * prev;
} node;
node * tuktok = NULL, * temp;
Ngayon, lumikha ng isang istraktura na naglalaman ng isang data ng character, susunod na pointer ng address, at nakaraang pointer ng address.
Pagkatapos ay lumikha ng isang pointer na tumuturo patungo sa tuktok ng naka-link na listahan.
node * ins (char a) {
node * new1;
new1 = bagong node;
new1-> data = a;
new1-> susunod = NULL;
new1-> prev = NULL;
kung (itaas == NULL)
{
tuktok = bagong1;
temp = tuktok;
}
iba pa
{
temp-> susunod = bagong1;
new1-> prev = temp;
temp = new1;
}
ibalik ang tuktok;
}
Pagkatapos, ipasok ang string na "apoy" sa dobleng listahan ng naka-link ayon sa characterwise.
void check (int j) {
int count1, flag = 0;
para sa (int i = 0; a ! = '\ 0'; i ++)
tuktok = ins (a );
}
Hakbang 6: Code upang i-play ang Flames
void check (int j)
{
int count1, flag = 0;
para sa (int i = 0; a ! = '\ 0'; i ++)
tuktok = ins (a );
node * cur = tuktok, * prev1;
temp-> susunod = tuktok;
tuktok-> prev = temp;
habang (1)
{
bilang1 = 1;
habang (count1 <j)
{
cur = cur-> susunod;
bilang1 ++;
}
node * temp1 = cur;
prev1 = cur-> prev;
cur-> prev-> susunod = cur-> susunod;
cur-> susunod-> prev = cur-> prev;
temp1-> susunod = NULL;
libre (temp1);
cur = prev1-> susunod;
node * test = cur;
kung (test-> data == test-> susunod-> data)
pahinga;
}
}
kailangan naming patakbuhin ang listahan ng pabilog na ang string na "apoy" ayon sa bilang ng mga natatanging character. Pagkatapos kailangan naming alisin ang character sa "apoy" na kasabay ng bilang. Dapat nating mapagtanto ang paggamit ng isang doble na naka-link na listahan sa code na ito. Malaki ang naitutulong nito upang alisin ang isang partikular na character. Tinatanggal nito ng tuloy-tuloy. Hanggang sa maabot ang kundisyon na ang parehong mga character ay paulit-ulit na dumating.
kung (test-> data == test-> susunod-> data) masira;
Hakbang 7: Sabihin ang Resulta
lumipat (cur-> data)
{
case 'f': cout << "FRIENDS &&";
pahinga;
kaso 'l': cout << "LOVE <3";
pahinga;
case 'a': cout << "AFFECTION $";
pahinga;
kaso 'm': cout << "KASAL:)";
pahinga;
kaso 'e': cout << "KAAWAY:(";
pahinga;
kaso 's': cout << "SIBLING";
pahinga; }
Gamitin ang pahayag ng switch na ito upang sabihin sa huling resulta na ang huling character na mananatili pagkatapos na alisin ang lahat ng iba pang mga character ayon sa bilang.
Ngayon ay maaari mong i-play ang apoy madali sa pamamagitan lamang ng pagpasok ng mga pangalan, Nakakatawa tama. I-play ang larong ito gamit ang mga pangalan ng iyong kaibigan at magalit sila LOL. Salamat.
Hakbang 8: Code para sa Flames
Ang kumpletong code para sa FLAMES ay magagamit dito, github.com/naveeen684/Flames-code-using-C-/tree/master