جدول المحتويات:

اللهب باستخدام C ++: 8 خطوات
اللهب باستخدام C ++: 8 خطوات

فيديو: اللهب باستخدام C ++: 8 خطوات

فيديو: اللهب باستخدام C ++: 8 خطوات
فيديو: C++ شرح شامل ومبسط جداً للبرمجة بلغة 2024, يوليو
Anonim
اللهب باستخدام C ++
اللهب باستخدام C ++
اللهب باستخدام C ++
اللهب باستخدام C ++

مرحبًا أيها الأصدقاء ، نعلم جميعًا لعبة اللهب. لول ، إنها واحدة من أكثر الألعاب تسلية التي جعلت طفولتنا أكثر سعادة. في هذا الدليل ، سنرى كيفية برمجة برنامج flames باستخدام لغة C ++.

الخطوة 1: المفاهيم المستخدمة

المفاهيم المستخدمة
المفاهيم المستخدمة

هنا استخدمت قائمة التعميم المرتبطة بشكل مضاعف.

الخطوة 2: الوظيفة الرئيسية

انت مين()

{

سلسلة name1 ، name2 ؛

كثافة العمليات n1 ، n2 ؛ cout << "أدخل الاسم الأول:" ؛ Getline (cin، name1) ؛ cout << "ENTER SECOND NAME:"؛ Getline (cin، name2) ؛

}

أولاً ، نحتاج إلى الحصول على مسافة بين الاسمين ، لذا أستخدم دالة getline () للحصول على سلسلة بها مسافة.

الخطوة 3: كيف تحذف الأحرف الخاصة؟

انبعاث باطل (سلسلة & أ)

{

لـ (int i = 0؛ a ! = '\ 0'؛ i ++)

{

إذا (a > = 'a' && a <= 'z') {}

else if (a > = 'A' && a <= 'Z') {}

آخر

أ = '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" كما أنه يعمل بشكل جيد حتى أنه يحتوي على كل من الأحرف الكبيرة والصغيرة. تساعدنا عبارة break على تجنب حذف الأحرف المتكررة.

j = 0 ؛ لـ (i = 0 ؛ name1 ! = '\ 0' ؛ i ++)

إذا (name1 ! = '0')

ي ++ ؛

لـ (i = 0؛ name2 ! = '0'؛ i ++)

إذا (name2 ! = '0')

ي ++ ؛

إذا (j == 0) cout << "NO FLAMES" ؛

هنا ، نقوم بإزالة جميع '0' الموجودة في كلا الاسمين. لذلك ، أخيرًا ، تتم إزالة الأحرف. ثم تتم زيادة j بحيث يكون عدد الأحرف الموجودة في كلا الاسمين بعد إزالة نفس الأحرف. نحتاج الآن إلى التحقق مما إذا كان يحتوي على حرف واحد على الأقل أم لا. لجعل الكود فعالًا ، نحتاج إلى معرفة أنه لا توجد إمكانية للعب لعبة flames إذا كانت لا تحتوي على أحرف فريدة.

الخطوة 5: إنشاء قائمة دائرية مرتبطة بشكل مضاعف

السلسلة أ = "النيران" ؛

أولاً ، قم بإنشاء سلسلة عالمية تحتوي على "flames".

عقدة بنية typedef {

بيانات شار

العقدة * التالي ، * السابق ؛

}العقدة؛

عقدة * أعلى = NULL ، * temp ؛

الآن ، قم بإنشاء بنية تحتوي على بيانات حرف ومؤشر العنوان التالي ومؤشر العنوان السابق.

ثم قم بإنشاء مؤشر يشير إلى أعلى القائمة المرتبطة.

node * ins (char a) {

عقدة * new1 ؛

new1 = عقدة جديدة ؛

new1-> البيانات = أ ؛

new1-> التالي = NULL ؛

new1-> prev = NULL؛

إذا (أعلى == NULL)

{

أعلى = جديد 1 ؛

درجة الحرارة = أعلى ؛

}

آخر

{

درجة الحرارة-> التالي = جديد 1 ؛

new1-> prev = temp؛

درجة الحرارة = جديد 1 ؛

}

العودة للأعلى

}

بعد ذلك ، أدخل سلسلة "flames" في القائمة المرتبطة بشكل مضاعف عن طريق الحرف.

شيك باطل (int j) {

عدد العمليات 1 ، العلم = 0 ؛

لـ (int i = 0؛ a ! = '\ 0'؛ i ++)

top = ins (a ) ؛

}

الخطوة 6: كود لتشغيل اللهب

كود للعب النيران
كود للعب النيران

شيك باطل (int j)

{

عدد العمليات 1 ، العلم = 0 ؛

لـ (int i = 0؛ a ! = '\ 0'؛ i ++)

top = ins (a ) ؛

العقدة * cur = top ، * prev1 ؛

درجة الحرارة-> التالي = أعلى ؛

أعلى-> prev = درجة الحرارة ؛

بينما (1)

{

العد 1 = 1 ؛

بينما (عدد 1 <ي)

{

cur = cur-> التالي ؛

عدد 1 ++ ؛

}

عقدة * temp1 = cur ؛

prev1 = cur-> prev؛

cur-> prev-> next = cur-> next ؛

cur-> next-> prev = cur-> prev ؛

temp1-> التالي = NULL ؛

مجاني (temp1) ؛

cur = prev1-> التالي ؛

عقدة * اختبار = cur ؛

إذا (test-> data == test-> next-> data)

استراحة؛

}

}

نحتاج إلى تشغيل القائمة الدائرية التي هي سلسلة "flames" وفقًا لعدد الأحرف الفريدة. ثم نحتاج إلى إزالة الشخصية في "flames" التي تتزامن مع العد. يجب أن ندرك استخدام قائمة مرتبطة بشكل مضاعف في مقتطف الشفرة هذا. يساعد كثيرا في إزالة شخصية معينة. يزيل باستمرار. حتى تصل إلى الحالة التي تأتي فيها نفس الشخصيات بشكل متكرر.

إذا (test-> data == test-> next-> data) break ؛

الخطوة 7: أخبر النتيجة

التبديل (cur-> البيانات)

{

case 'f': cout << "FRIENDS &&"؛

استراحة؛

case 'l': cout << "LOVE <3" ؛

استراحة؛

الحالة 'a': cout << "AFFECTION $"؛

استراحة؛

case 'm': cout << "MARRIAGE:)" ؛

استراحة؛

case 'e': cout << "العدو:("؛

استراحة؛

case 's: cout << "SIBLING" ؛

استراحة؛ }

استخدم عبارة التبديل هذه لإخبار النتيجة النهائية التي تبقى الحرف الأخير بعد إزالة جميع الأحرف الأخرى وفقًا للعدد.

الآن يمكنك لعب النيران بسهولة بمجرد إدخال الأسماء ، إنه أمر مضحك. العب هذه اللعبة باستخدام أسماء أصدقائك واجعلهم يغضبون LOL. شكرا لك.

الخطوة 8: رمز اللهب

الكود الكامل لـ FLAMES متاح هنا ،

github.com/naveeen684/Flames-code-using-C-/tree/master