PDA

View Full Version : نمایش تمام اعداد با مربع کامل کوچکتر از عدد ورودی



mahdishahidi
چهارشنبه 22 آذر 1396, 14:32 عصر
میخواستم برنامه بنویسم که تمام اعداد کوچکتر و یامساوی عدد رو از سری اعداد زیر بعوان خروجی بده.
سری: 1و2و4و8و16و32و...

مثلا:
ورودی: 8192
خروجی: 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192

مثلا:
ورودی: 67
خروجی: 1 2 4 8 16 32 64

MMR_1234
چهارشنبه 22 آذر 1396, 18:47 عصر
یک حلقه بساز و از عدد دو شروع کن
هر دفعه کنترل کن که حاصل ضرب عدد بدست آمده درعدد دو از اون مقدار ورودی کمتر باشه
اعداد رو چاپ کن

danialafshari
پنج شنبه 23 آذر 1396, 00:34 صبح
میخواستم برنامه بنویسم که تمام اعداد کوچکتر و یامساوی عدد رو از سری اعداد زیر بعوان خروجی بده.
سری: 1و2و4و8و16و32و...

مثلا:
ورودی: 8192
خروجی: 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192

مثلا:
ورودی: 67
خروجی: 1 2 4 8 16 32 64

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

Hadi-Hashemi
پنج شنبه 23 آذر 1396, 10:33 صبح
Console.Write("? ");
int x = Convert.ToInt32(Console.ReadLine());
int i = 1;


while (true)
{
if ((i * 2) <= x) Console.WriteLine((i * 2));
else break;
i *= 2;
}

danialafshari
پنج شنبه 23 آذر 1396, 17:16 عصر
Console.Write("? ");
int x = Convert.ToInt32(Console.ReadLine());
int i = 1;


while (true)
{
if ((i * 2) <= x) Console.WriteLine((i * 2));
else break;
i *= 2;
}


حل ساده تر:

Console.WriteLine("Please Enter Max Number:");
int Num = int.Parse(Console.ReadLine());
for (int i = 1; i <= Num; i = i * 2)
Console.WriteLine(i.ToString());

mahdishahidi
جمعه 24 آذر 1396, 00:17 صبح
سپاس،
حالا چطور میشه فهمید عدد جزو این مجموعه هست یا نه؟
یعنی مثل 8192 توی مثال بالا هست یا مثل 67؟
فکر کنم بیشتر مربوط به ریاضی میشه...

danialafshari
جمعه 24 آذر 1396, 16:09 عصر
سپاس،
حالا چطور میشه فهمید عدد جزو این مجموعه هست یا نه؟
یعنی مثل 8192 توی مثال بالا هست یا مثل 67؟
فکر کنم بیشتر مربوط به ریاضی میشه...

با سلام
کاری نداره اگر می خواید بعد از گرفتن عدد اول عدد مورد نظر رو بگیره برای این کار می تونید از List یا Dictionary استفاده کنید
به این شکل که در حلقه مقادیر رو هم در لیست قرار بدید و سپس توسط متد Contains می تونید بفهمید عدد مورد نظر در لیست وجود داره یا خیر؟
ولی اگر دوتا عدد رو با هم بگیرید یعنی قبل از عملیات می تونید در همون حلقه بالا یک شرط بزارید که عددتون بررسی کنه و اگر موجود بود پیام بده
موفق باشید