PDA

View Full Version : سوال: برنامه‌ای برای دریافت دو رشته و مقایسه‌ی آن



DumanNazeri
جمعه 27 اردیبهشت 1392, 10:50 صبح
سلام. وقت بخیر.
ببخشید که من خیلی مزاحم‌تون می‌شم.
سوالی که داشتم اینه..
می‌خوایم برنامه‌ای بنویسم که دو تا رشته دریافت کنه ؛
رشته‌ی اول : ABCDEF
رشته‌ی دوم :‌ XCF
بعد چک کنه که کدام یک از آرایه‌های رشته‌ی دوم در رشته‌ی اول تکرار شده٬ و نتیجه رو ( برای این مثال! ) به این صورت نمایش دهد که :‌
C,F

خودم یه چیزهایی نوشتم اما مشکلش اینکه چنان‌چه آرایه‌ی nام رشته‌ی اول با آرایه‌ی nام رشته‌ی دوم یکسان باشد٬ نتیجه را نمایش می‌دهد!
مثلن :
رشته‌ی اول :‌ xxMASxx
رشته‌ی دوم : yyMASyy
نتیجه : MAS

کد برنامه‌ی خودم رو می‌ذارم. ممنون می‌شم اگر دوستان و عزیزان راهنمایی‌م کنند مثل همیشه.
سالم و موفق باشید.



#include <iostream>
using namespace std;

int main ()
{
char name[30], NAME[20];

cin >> name;
cin >> NAME;

int len = 0;
int LEN = 0;

while ( name[len] != '\0' )
len++;

while ( name[LEN] != '\0' )
LEN++;

for ( int i = 0 ; i < len , i < LEN ; i++ )
if ( name[i] == NAME[i] )
cout << name[i] <<"," ;

return 0;
}

saied_hacker
جمعه 27 اردیبهشت 1392, 11:45 صبح
شما باید از دوتا حلقه استفاده کنید و تک تک عناصر ارایه اول رو با تک تک عناصر ارایه دوم مقایسه کنید. اگر یکسان بود چاپ بشه
for ( int i = 0; i < len; i++ )
for(int j = 0; j < LEN; j++)
if ( name[i] == NAME[j] )
cout << name[i] <<"," ;