الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[مخالف - لم يستخدم البحث :]أنا مبتدىء وأريد أن أفهم هذا الكود

مغلق
بدأه semoo2006 في 5 مارس 2008 · 3 رد · 677 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
		static void Main(string[] args)
		{
			double num, sroot, rerror;
			for(num=1.0;num<100.0;num++)
			{
				sroot=Math.Sqrt(num);
				Console.WriteLine("Square Root of"+num+"is"+sroot);
				rerror=num-(sroot*sroot);
				Console.WriteLine("Rounding Error is "+rerror);
				Console.WriteLine();
			}

أخوانى عند تطبيق هذه الداله توقعت أن تكون كل النتائج مساويه للصفر لأن المتغير rerror عباره عن ناتج طرح مربع المتغير sroot من المتغير num بينما المتغير sroot هو الجذر التربيعى للمتغير num

بينما فى الحقيقه ظهر باقى للطرح فى بعض القيم

هل من أحد يشرح لى من أين أتى باقى الطرح

#2

السلام عليكم ورحمة الله وبركاته

اقتباس
أخوانى عند تطبيق هذه الداله توقعت أن تكون كل النتائج مساويه للصفر لأن المتغير rerror عباره عن ناتج طرح مربع المتغير sroot من المتغير num بينما المتغير sroot هو الجذر التربيعى للمتغير num

بينما فى الحقيقه ظهر باقى للطرح فى بعض القيم

هل من أحد يشرح لى من أين أتى باقى الطرح

هذا الكلام يدل علي انك فاهم الكود كويس

المشكلة هنا ليست في كود #C

هذا البرنامج يوضح ان حساب Sqrt لاي رقم ليس دقيق 100% بديل انك اذا ضربته في نفسه ثم طرحته مرة اخري من الرقم الاصلي يكون هناك فارق وهو ما يسمي Rounding Error كما موضح بالكود

حاول تعملها علي الالة الحاسبة ستجد ايضا ان الناتج لا يكون صفر

لمعرفة المزيد عن الجذر التربيعي ودقته يمكنك الاستعانة بمنتدي الرياضيات والخورزمات

#3

معلش يا اخ سيمو

ايه ده

Math.Sqrt؟؟؟؟

اول مره اشوفهم

#4

تأسف إدارة الفريق العربي لغلق الموضوع وذلك لمخالفته قوانين المشاركات، فقرة استخدام البحث قبل السؤال.

قواعد طرح المشاركات

/index.php?showtopic=29343

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…