کمک برای نوشتن برنامه اعداد ومپایر به زبان c

aboalisinab

New Member
سلام به همه دوستان

کسی میتونه منو برای نوشتن این برنامه کمک کنه آخه من زیاد وارد نیستم:)

برنامه ای که تمام اعداد ومپایر چهار رقمی رو پیدا کنه البته به زبان C ؟

اعداد vampire عددی است که برابر حاصلضرب ترکیبی از ارقام خودش باشه.
مثلا اگه عدد چهار رقمی abcd رو در نظر بگیریم اگه
ab*cd
یا
ac*bd
یا
ad*cb
یا.... برابر خود عدد بشه اون عدد ومپایر هست

حالا کسی از دوستان میتونه به من کمک کنه و برنامه شو بنویسه فکرنکنم زیاد سخت باشه ولی من زیاد سر در نمی یارم:D.

خوشحال میشم اگه به من کمک کنید:oops:
 

saalek110

Well-Known Member
اگر خواستی اعداد تشکیل دهنده یک عدد را پیدا کنی راههای زیادی شاید باشه.
ولی یک راه که من خودم استفاده می کنم و شاید بهترین راه نباشد تقسیم بر مضارب ده و بعد جدا کردن مقدار صحیح از اعشاری با تابع مربوطه است.

بعدش می تونی با ضرب در مضارب ده اجزا و بررسی مساوی بودن با خود عدد کار را ادامه بدهی.

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

the_king

مدیرکل انجمن
کد:
#include <iostream.h>
#include <conio.h>

void main()
{
	for (int a = 1; a < 10; a++)
	for (int b = 0; b < 10; b++)
	for (int c = 0; c < 10; c++)
	for (int d = 0; d < 10; d++)
	{
		int x = a * 1000 + b * 100 + c * 10 + d;
		if (((a * 10 + b) * (c * 10 + d) == x)
		 || ((b * 10 + a) * (c * 10 + d) == x)
		 || ((a * 10 + b) * (d * 10 + c) == x)
		 || ((b * 10 + a) * (d * 10 + c) == x)
		 || ((a * 10 + c) * (b * 10 + d) == x)
		 || ((c * 10 + a) * (b * 10 + d) == x)
		 || ((a * 10 + c) * (d * 10 + b) == x)
		 || ((c * 10 + a) * (d * 10 + b) == x)
		 || ((a * 10 + d) * (b * 10 + c) == x)
		 || ((d * 10 + a) * (b * 10 + c) == x)
		 || ((a * 10 + d) * (c * 10 + b) == x)
		 || ((d * 10 + a) * (c * 10 + b) == x))
			 cout << x << endl;
	}
	getch();
}
 

saalek110

Well-Known Member
من حواسم نبود.
چون اول کار که عدد را نداریم که با تقسیم و تابع ریاضی تجزیه کنیم به اعداد تشکیل دهنده اش.
البته از روش من هم میشه ولی نوعی لقمه را دور سر چرخاندن فکر کنم بشه.
روش ایشان سرراست تر است.
ممنون از جناب king.
 

جدیدترین ارسال ها

بالا