PDA

View Full Version : سوال: تک تک ارقام یک عدد



amirdatis
جمعه 08 اسفند 1393, 13:23 عصر
با سلام
یه سوال داشتم که 80% نوشتم آخرشا هرکاری میکنم در نمیاد
حمع ارقام یک عدد را در خروجی چاپ کند
حالا تک تک ارقام را همینجوری بنویسه
مثلا اگه 1245 را کاربر وارد کرد برنه 1-2-4-5
این شکلی

Share & Learn
جمعه 08 اسفند 1393, 14:12 عصر
با سلام
یه سوال داشتم که 80% نوشتم آخرشا هرکاری میکنم در نمیاد
حمع ارقام یک عدد را در خروجی چاپ کند
حالا تک تک ارقام را همینجوری بنویسه
مثلا اگه 1245 را کاربر وارد کرد برنه 1-2-4-5
این شکلی

سلام
شما کدتون رو تا جایی که نوشتید بذارید تا تو تکمیلش کمکتون کنیم

amirdatis
جمعه 08 اسفند 1393, 14:24 عصر
int num , sum = 0, r;
Console.WriteLine("Enter a number (100-999)");
num = int.Parse(Console.ReadLine());
while (num !=0){




r=num%10;
num=num/10;
sum=sum+r;}


Console.WriteLine("sum of digits = {0}",sum);
Console.ReadKey();

amirdatis
جمعه 08 اسفند 1393, 21:24 عصر
یه نفر نیست کمک ما کنه؟

samin_panahi
جمعه 08 اسفند 1393, 22:17 عصر
یه نفر نیست کمک ما کنه؟

الان مشکل چیه؟
کد شما که مجموع ارقام رو درست می ده!!!

Share & Learn
جمعه 08 اسفند 1393, 23:00 عصر
اگه درست متوجه شده باشم می خواین ارقام رو هم داشته باشید
من 4 مدل نوشتم، امیدوارم بدردتون بخوره
خدمت شما:
int num, sum = 0, r;
int [] digit = new int [3];
int i = 0;
Console.WriteLine("Enter a number (100-999)");
num = int.Parse(Console.ReadLine());
while (num != 0)
{
r = num % 10;
num = num / 10;
sum = sum + r;
digit[i] = r;
i++;
}

Console.WriteLine("sum of digits = {0}", sum);

//-----------------------------------------------
// 1:
Console.WriteLine("====================");
Console.WriteLine(digit[2]);
Console.WriteLine(digit[1]);
Console.WriteLine(digit[0]);

//-----------------------------------------------
// 2:
Console.WriteLine("====================");
Console.WriteLine(string.Join(" + ", digit));

//-----------------------------------------------
// 3:
Console.WriteLine("====================");
foreach (var item in digit)
{
Console.Write(item.ToString());
}

//-----------------------------------------------
// 4:
Console.WriteLine("\n====================");
for (i = digit.Length - 1; i >= 0; i--)
{
Console.Write(digit[i]);
}

البته بدون آرایه هم می شه، اما به نظرم آرایه جالب تره
موفق باشید

SabaSabouhi
شنبه 09 اسفند 1393, 08:35 صبح
سلام
یه راه دیگه هم داره. کلاً از رشته استفاده کنی.

var array = MyString.ToCharArray();
var result = string.Join( "-", array );



و برای جمع:

var sum = 0;
array.ToList()
.ForEach( x=> {
int value;
if ( int.TryParse( x, out value ) )
sum += value;
} );



صبا صبوحی