ورود

View Full Version : کمک برای رفع اشکال برنامه جایگشت



panni-qalbeyakhi
سه شنبه 01 بهمن 1387, 11:43 صبح
سلام خدمت دوستان عزیز و گرامی من یک برنامه نوشتم به زبان سی پلاس پلاس و در محیط dev اجرا نمی شه کسی می تونه بگه که مشکل برنامه کجاست. بچه خیلی فوری اگه کسی می تونه فوری کمک کنه
برنامه از این قرار که تعدادی کلمه را می گیرد و جایگشت های ان کلمات را بر می گردونه





#include <iostream>
using namespace std;
//#dfine N
//#define N

bool checkDuplicate (int , int );
int power (int x, int y )
{
int result =1;
for(int i=0;i<y;i++)
result*=x;
return result;
}

int main()
{
int N;
cin>>N;
char c[10];
for (int i=0; i<N; i++)
cin>>c[i];
char s;
cin>>s;
int a[10]={0};
int count=0;
int max=power( N,N);
while(count<max)
{
if( checkDuplicate(a,N))
{
a[0]+=1;
for (int i=0;i<N-1;i++)
{
if(a[i]>=N)
{
a[i]=0;
a[i+1]+=1;
}

if(c[a[i]]==s)
cout<<"Yes";
else
cout<<"No";
}
}
count++;
}
int u;cin>>u;
return 0;
}

bool checkDuplicate(int a[], N)
{
for(int i=0;i<N;i++)
for(int j=i+1;;j<n;j++)
if (a[i]==a[j])
return false;
return true;
}

Elrond
سه شنبه 01 بهمن 1387, 18:24 عصر
بفرماييد :


#include <iostream>
using namespace std;
//#dfine N
//#define N

bool checkDuplicate (int* , int );
int power (int x, int y )
{
int result =1;
for(int i=0;i<y;i++)
result*=x;
return result;
}

int main()
{
int N;
cin>>N;
char c[10];
for (int i=0; i<N; i++)
cin>>c[i];
char s;
cin>>s;
int a[10]={0};
int count=0;
int max=power( N,N);
while(count<max)
{
if( checkDuplicate(a,N))
{
a[0]+=1;
for (int i=0;i<N-1;i++)
{
if(a[i]>=N)
{
a[i]=0;
a[i+1]+=1;
}

if(c[a[i]]==s)
cout<<"Yes";
else
cout<<"No";
}
}
count++;
}
int u;cin>>u;
return 0;
}

bool checkDuplicate(int a[],int N)
{
for(int i=0;i<N;i++)
for(int j=i+1;j<N;j++)
if (a[i]==a[j])
return false;
return true;
}


اوليش به خاطر اين خط بود bool checkDuplicate (int* , int ); که بايد مقدار اول رو از نوع اشارگر مي گذاشتيد.
اشکال دوم نوع N را در bool checkDuplicate(int a[],int N) مشخص نکرده بوديد.
اشکال سوم و چهارم قبل از j در for(int j=i+1;j<N;j++) دو ";" گذاشته بوديد و N را n نوشته بوديد.

m.yazdani6568
دوشنبه 28 بهمن 1387, 17:02 عصر
خواهش می کنم c++این را هم بنویسید