اذهب إلى المحتوى
  • 0

مساعدة في لغة #C

ولاء العمور

السؤال

Recommended Posts

  • 1

أهلا بك،

فيما يلي أحد طرق بناء دالة تقوم بطباعة أرقام العدد بالمعكوس.

public int ReverseInt(int num)
{
    int result=0;
    while (num>0) 
    {
       result = result*10 + num%10;
       num /= 10;
    }
    Console.Write("Number in reverse order: " + result);
    return result;
}

 لاحظ في البداية أن الأسهل إستخدام حلقة التكرار من نوع while وليس for لكن إذا أردت التغيير فلن تحتاج إلا لاستبدال جملة while فقط بجملة for

 for(int i=0;num>0;i++) 

في كلا الحالتين لهذة الطريقة سيطبع الناتج خارج حلقة التكرار.

أبسط طريقة لفهم الدالة السابقة هي أن نجربها على عدد إفتراضي، لنفترض أننا سندخل العدد 123، المتوقع من الدالة أن تطبع العدد بالمعكوس 321.

من خلال التتبع ستلاحظ أن عدد مرات التكرار سيكون نفس عدد الأرقام التي يتكون منها num

في الوضع البتدائي:

  num=123       result=0     الشرط لعبور حلقة التكرار صحيح ومتحقق

لحلقة التكرار الأولى:

result=0*10+123%10         result=3

num=123/10            num=12

لحلقة التكرار الثانية:

result=3*10+12%10         result=32

num=12/10            num=1

لحلقة التكرار الثالثة:

result=32*10+1%10         result=321

num=1/10            num=0

النواتج:

num=0            result=321   الشرط لدخول حلقة التكرار غير متحقق

بهذا نكون قد حصلنا على العدد معكوساً من خلال استخراج أحاده ثم تقليص خاناته واستخراج خانه الأحاد الجديدة وبحلقة تكرار للخوارزمية البسيطة تحصل على الرقم المعكوس.

بالتوفيق 

 

تم التعديل في بواسطة Entesar ElBanna
no reason
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

لدي طريقة أسهل. وتقوم بعكس أي شيء:

string number;
string reversedNumber = "";

Console.Write("Please input your number: ");
number = Console.ReadLine();


var set = number.Reverse();

foreach(char c in set)
{
       reversedNumber += c;
}

Console.WriteLine("Your reversed number is: {0}", reversedNumber);

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...