سلام به همگی :
چطور میشه محتوای یک اشاره گر را منفی کرد و دوباره در خود اشاره گر قرار داد ؟
Printable View
سلام به همگی :
چطور میشه محتوای یک اشاره گر را منفی کرد و دوباره در خود اشاره گر قرار داد ؟
این تیکه ای از برنامه هست که error می دهد ، باید اشازه گر را منفی کنم تا error نگیره .
باید چه کار کنم ؟
if (p!= NULL) 1
{
top++; 2
p=_p; 3
stack[top]=p; 4
}
این برنامه رو بازگشتی نوشتین
ولی چرا خروجی نداره؟؟؟
............
برنامه ای که نوشته بودم اشتباه بود دوباره می نویسم می ذارم
سلام :
من فقط مي خواستم بدونم اين تيكه برنامه چه طور اجرا مي شود ، خروجيش يك چيز ديگه چاپ مي كند كه ربطي به اين تيكه از برنامه ندارد .
خيلي ممنون كه به تاپيك من توجه كرديد. ممنونم :11:
این تیکه برنامه کلا غلطه چون هیچ وقت تموم نمیشه!
اینم یه برنامه به زبون c++ که تمام جایگشت هایه یه رشته رو چاپ میکنه:
کد:#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
string s;
cin >> s;
sort(s.begin(), s.end());
do {
cout << s << endl;
} while (next_permutation(s.begin(), s.end()));
return 0;
}
سلام :
مرسی از کمکی که کردید ولی من به زبان c می خواستم . من این تیکه برنامه را کاملشو پیدا کردم ولی چون به زبان c++ بود ، کمکی بهم نمی کرد .
ممنونم که به تاپیکم توجه کردید .:11:
می شه برنامه ای که نوشتین رو بذارین اینجا...
سلام.
لطفا پست اولتون رو ویرایش کنید و سوال رو قرار بدید. قرار نیست هر کی جواب گرفت سوالشو پاک کنه. فردا یکی میاد این تاپیکو میبینه باید سر در بیاره موضوع بحث چی بوده.
سلام
وقتی پروژمو به استاد ارائه دادم حتما میذارم .
فقط یک مشکل دیگه پیش آمده برای یک پروژه دیگه که به کمک شما نیاز دارم .
که مشکلمو بالا تاپیک گفتم .
نقل قول:
شما اینو با STL نوشتید دیگه.....می شه توضیح بدید این چیزی که توی پرانتز while نوشتید چیکار می کنه ؟ ممنون
شما چه مشکلی برای منفی کردن مقدار اشاره گر دارین؟؟
منظورتون اینه که خونه ای از حافظه که بهش اشاره می شه منفی بشه؟؟؟
در واقع ، آن مقداري كه اشاره گر ، داره اشاره مي كند بايد بريزه تو پشته ولي قبل از اينكه در پشته بريزه بايد مقدار آن را منفي كند و بعد در پشته بريزه .
یعنی مقدار تو پشته نهایتاً منفی بشه فقط؟؟؟
اگه منظورتون اینه خب چرا می خواین مقدار اشاره گر رو عوض کنید..
قبل از این که بریزین تو پشته ضربدر منفی یک کنید..
ببخشید اگه درست جواب نمی دم سوالتون خیلی گنگه
ضربدر منفي يك كردم ولي بازم error مي گيره .
چه error می ده؟؟؟
شما نتیجه رو چه جوری می ریزین تو stack
error اینکه مثلا اگر p یک اشاره گر باشد ، p - (منفی ) نمی شناسد در حالی که اشاره گر p بدون منفی را می شناسد .
کل برنامه را باید توضیح بدم که چه طوری در پشته میریزه ( 4 صفحه هست) !!!
پوینتر که نمیتونه منفی بشه،
این یه مثال برای منفی کردن مقداری که پوینتر بهش اشاره میکنه
کد:#include <stdio.h>
int main()
{
int *p, n = 12;
printf("positive : %d\n", n);
p = &n;
*p *= -1;
printf("negetive : %d\n", n);
return 0;
}
خب دوست من این که مسلمه که شما نمی تونی اشاره گر رو منفی کن یکی از راها اینه که شما می تونی از یک متغیر کمکی استفاده کنی یا اینکه از همین روشی که دوستمون گفتن استفاده کنین .نقل قول:
مرسي از راهنمايي كه كرديد .
مشکلتون حل شد؟؟؟؟نقل قول:
بله ، تونستیم ، از یک استاد دیگمون پرسیدیم ، جوابمونو داد ، مشکلمون حل شد.
مرسی :11:
[PHP]#include <iostream>
#include <string>
#include <conio.h>
//using namespace std;
void rec (string,string);
int main()
{
cout<<"Enter Your Word:";
string word="";
cin>>word;
rec(word,"");
getch();
}
void rec (string word,string test)
{
if(word.size()==1)
{
cout<<test<<word.at(0)<<endl;
return;
}
else
for(int i=0;i<word.size();i++)
{
if(i!=0 && word.at(i)==word.at(i-1))
continue;
static string test="";
test+=word.at(i);
string temp=word;
temp.erase(temp.begin()+i);
rec(temp,test);
test.resize(test.size()-1);
}
}
[/PHP]