PDA

View Full Version : سوال: مشکلات برنامه من



noura karimi
جمعه 26 آبان 1391, 21:47 عصر
سلام دوستان دارم رو یه پروژه ماتریسی کار میکنم حالا میخوام یه حلقه بازگشتی تعریف کنم اما نمیدونم چطوری اینکار رو بکنم:
میخوام از یه while استفاده کنم بگم تا زمانی که تمام خانه های جدول کاملا پر شود بیات این کارا رو انجام بده

x=x+1;
for (int z=1;z<=m; z++){
if (x<=n) && (x% 2==1)
if (a[x][z] !=c[m][n])
c[x][z]=a[x][z];
else
c[x][z]=-1

if (x<=n) && (x% 2==0)
if (b[x][z] !=c[m][n])
c[x][z]=b[x][z];
else
c[x][z]=-1
if (x>n)
x==1;
c[x][z]=a[x][z];
}

شاید این کدی که نوشتم اشکالاتی داشته باشه اما الان من فقط نمیدونم چطور اون حلقه بازگشتی رو تعریف کنم اگه امکان داره کمکم کنید

یه سوال دیگه :میشه 2 تا if رو پشت سره هم نوشت از }{ بین شرطها باید استفاده کنم؟؟؟؟

omidshaman
جمعه 26 آبان 1391, 22:22 عصر
خط 3-و 9غلطه میشه


if (x<=n && x% 2==1)
if (x<=n && x% 2==0)


میخوام از یه while استفاده کنم بگم تا زمانی که تمام خانه های جدول کاملا پر شود بیات این کارا رو انجام بده
کدوم کار؟ خروجی قراره چی باشه؟

noura karimi
جمعه 26 آبان 1391, 22:37 عصر
خط 3-و 9غلطه میشه


if (x<=n && x% 2==1)
if (x<=n && x% 2==0)


کدوم کار؟ خروجی قراره چی باشه؟
گفتم که اصلا من میخوام این نمونه کد رو تو یه حلقه بازگشتی بنویسم که تا زمان پر شدن خانه های یک جدول مثلا c[m][n]z این کدها تکرار بشه این شرط و شروط ها

omidshaman
جمعه 26 آبان 1391, 22:46 عصر
من که دقیق نفهمیدم قراره چی بشه البته خط 15 این کدتونم اشتباهه
حالا فرض می کنیم یک برنامه می خواین که خانه های مضارب 2k+1 و کوچکتر از n ّبرای سطر ماتریس رو بزاره1


for(x=0;x<size;x++)
for(y=0;y<size;y++)
for(z=0;z<size;z++)
if (x<=n && x% 2==1)
a[x][y][z]=1;

noura karimi
جمعه 26 آبان 1391, 23:03 عصر
من که دقیق نفهمیدم قراره چی بشه البته خط 15 این کدتونم اشتباهه
حالا فرض می کنیم یک برنامه می خواین که خانه های مضارب 2k+1 و کوچکتر از n ّبرای سطر ماتریس رو بزاره1


for(x=0;x<size;x++)
for(y=0;y<size;y++)
for(z=0;z<size;z++)
if (x<=n && x% 2==1)
a[x][y][z]=1;


چرا متوجه منظوره من نمیشید ؟
گفتم یه حلقه با while تعریف کنم به این موضوع که اتا خانه های یک ماتریس پر شوند این کارها را انجام بده

noura karimi
جمعه 26 آبان 1391, 23:05 عصر
خط 3-و 9غلطه میشه


if (x<=n && x% 2==1)
if (x<=n && x% 2==0)


کدوم کار؟ خروجی قراره چی باشه؟


ببینید برنامه ایی که من دارم مینویسم موضوعش اینه


برنامه باید دارای 3 تا جدول باشد و باید 3 عدد را از ورودی بگیرد m وn و p در اینجا ام و ان ستون و سطر جدول ها محسوب میشه وp برای پر کردن جداول به صورت تصادفی



مثال: اگر کاربر مقدار n=3 و m=4 و p=8 وارد کند باید به صورت زیر عمل کند که 3 تا جدول با 3 سطر و 4 ستون ایجاد شود که 2 تا جدول اول را با اعداد تصادفی از 1 تا p یعنی1 تا 8 پر کند اگر خانه ای از جدول خالی بود عدد -1 بگذارد

1- در مرحله بعد باید یک سطر را به صورت تصادفی انتخاب کند مثلا سطر 3 را انتخاب میکند اگر سطری که انتخاب شد فرد باشد از جدول A تمام اعداد موجود در آن سطر را در همان شماره سطر جدول C قرار دهد اما اگر زوج بود از جدول B اینکار را میکند

حالا گفتیم مثلا به صورت تصادفی 3 انتخاب شد پس از جدول اول تمام ارقام موجود در سطر 3 را به سطر 3 جدول سوم انتقال میدهد

2- در مرحله بعد سطر انتخاب شده به اضافه 1 میشه اگر از تعداد سطر ها بزرگتر شد سطر انتخابی ما سطر 1 میشه حالا ارقام موجود در سطر اول را با ارقام موجود در جدول سوم مقایسه میشه اگر ارقام در جدول 3 تکراری نبودن عینا خود آن ارفام را مینویسم اما اگر تکراری بود عدد -1 وارد خانه جدول شود

3- در این مرحله دوباره سطر به اضافه 1 میشه و باز هم مثله مرحله قبل عمل میکنیم
در آخر 1 عدد وارد جدول 3 نشده پس به صورت تصادفی یکی از خانه هایی که -1 در آن قرار دارد آن عدد را هم وارد میکنیم

noura karimi
جمعه 26 آبان 1391, 23:06 عصر
ببینید برنامه ایی که من دارم مینویسم موضوعش اینه


برنامه باید دارای 3 تا جدول باشد و باید 3 عدد را از ورودی بگیرد m وn و p در اینجا ام و ان ستون و سطر جدول ها محسوب میشه وp برای پر کردن جداول به صورت تصادفی



مثال: اگر کاربر مقدار n=3 و m=4 و p=8 وارد کند باید به صورت زیر عمل کند که 3 تا جدول با 3 سطر و 4 ستون ایجاد شود که 2 تا جدول اول را با اعداد تصادفی از 1 تا p یعنی1 تا 8 پر کند اگر خانه ای از جدول خالی بود عدد -1 بگذارد

1- در مرحله بعد باید یک سطر را به صورت تصادفی انتخاب کند مثلا سطر 3 را انتخاب میکند اگر سطری که انتخاب شد فرد باشد از جدول A تمام اعداد موجود در آن سطر را در همان شماره سطر جدول C قرار دهد اما اگر زوج بود از جدول B اینکار را میکند

حالا گفتیم مثلا به صورت تصادفی 3 انتخاب شد پس از جدول اول تمام ارقام موجود در سطر 3 را به سطر 3 جدول سوم انتقال میدهد

2- در مرحله بعد سطر انتخاب شده به اضافه 1 میشه اگر از تعداد سطر ها بزرگتر شد سطر انتخابی ما سطر 1 میشه حالا ارقام موجود در سطر اول را با ارقام موجود در جدول سوم مقایسه میشه اگر ارقام در جدول 3 تکراری نبودن عینا خود آن ارفام را مینویسم اما اگر تکراری بود عدد -1 وارد خانه جدول شود

3- در این مرحله دوباره سطر به اضافه 1 میشه و باز هم مثله مرحله قبل عمل میکنیم
در آخر 1 عدد وارد جدول 3 نشده پس به صورت تصادفی یکی از خانه هایی که -1 در آن قرار دارد آن عدد را هم وارد میکنیم

حالا من از قسمت دوم به بعدش مشکل دارم میتونید کمکم کنید