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

سؤال رياضى بحت - لمحبى و محترفى الرياضيات فقط

مغلقرائج
بدأه VB6-Rocket في 9 أغسطس 2005 · 70 رد · 12,714 مشاهدة · في الرياضيات والخوارزميات
مشاركة: واتساب X فيسبوك تيليجرام
#26

انا اعمل عليها ايضا اسرع يا هيثم لا اسبقك :D . الموضوع بات فيه منافسة للترويح .

39_22.gif

تزود من التقوى فإنك لا تدري *** إذا جن ليل هل تعيش إلى الفجر

فكم من فتى أمسى وأصبح ضاحكاً *** وقد نسجت أكفانه وهو لا يدري

لقراءة القرآن الكريم و سماعه و تفسيره ........

ماذا يعني انني مسلم سني؟

قصة غريبة

ConflictResolution.gif

#27

هذه هي المعادلة للتبسيط , سأتأكد منها الآن بكثافة ,

SS=ln(W)/ln(2)
A=((x-(x%2))/2)*0.25*W
RR=(x%4)%2
QQ= [(( ((RR+1)%2)*(((x%4)/2)+1)%2))]*((SS-3)*10)-A

EQUATION = A-((x+(x%2))/2)*0.5*W+QQ+W

المعادلة الشاملة !! وأنا لاأمزح :D

EQUATION = ((x-(x%2))/2)*0.25*W-((x+(x%2))/2)*0.5*W+(( (((x%4)%2+1)%2)*(((x%4)/2)+1)%2))*((ln(W)/ln(2)-3)*10)-A+W

جاري التجربة ...

تم تعديل هذه المشاركة بواسطة HGB في 27 يوليو 2007 في 01:50

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#28

بالمناسبة قد تكون هناك طريقة أبسط بكثير من هذه , لكن أردت أن أطبقها بإستخدام باقي القسمة ,فقط :D

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#29

ما هو رمز ln

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

--------------

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#30

هيثم هل هذا الحل لغاية 16 ام 32 ؟ انا اعمل على 32

39_22.gif

تزود من التقوى فإنك لا تدري *** إذا جن ليل هل تعيش إلى الفجر

فكم من فتى أمسى وأصبح ضاحكاً *** وقد نسجت أكفانه وهو لا يدري

لقراءة القرآن الكريم و سماعه و تفسيره ........

ماذا يعني انني مسلم سني؟

قصة غريبة

ConflictResolution.gif

#31

هو ال log أي اللوغيرتم الطبيعي , وهو لإيجاد العدد أس الإثنين , مثلا 32 عبارة عن 2 أس 5 , فبالمعادلة الخاصة ب ln تكون النتيجة 5 ,

كل ماأعدل على العلاقة أعلاه سأقوم بتحرير تلك المشاركة فقط ,

الحل ياعماد لكل المتسلسلات مهما كانت , 64 و128و256 وهكذا لمالا نهاية :D

تم تعديل هذه المشاركة بواسطة HGB في 10 أغسطس 2005 في 18:25

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#32

أعتقد أنها تعمل الآن لكن توجد مشكلة أيضا في كوبايلر ال VC ملف ال header , math.h , غير موجود !!

هل يمكن تجربة العلاقة , هذه :

SS=ln(W)/ln(2)
A=((x-(x%2))/2)*0.25*W
RR=(x%4)%2
QQ= (((RR+1)%2)*(((x%4)/2)+1)%2)*((SS-3)*10)-(0.25*W)

EQUATION = QQ+W+A-((x+(x%2))/2)*0.5*W

تم التحرير , بعد تعديل الأقواس ,

تم تعديل هذه المشاركة بواسطة HGB في 10 أغسطس 2005 في 18:49

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#33

الاقواس غير مظبوطة - بالنسبة للمعادلة الشاملة

اما المعادلة المجزأة فنتيجتها خطأ تماما

النتيجة الجديدة

22

4

8

0

14

-4

0

-8

نتيجة المعادلة الشاملة

26

8

12

4

18

0

4

-4

تم تعديل هذه المشاركة بواسطة VB6-Rocket في 10 أغسطس 2005 في 19:08

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

--------------

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#34

اقلاع و تركت الموضوع.

39_22.gif

تزود من التقوى فإنك لا تدري *** إذا جن ليل هل تعيش إلى الفجر

فكم من فتى أمسى وأصبح ضاحكاً *** وقد نسجت أكفانه وهو لا يدري

لقراءة القرآن الكريم و سماعه و تفسيره ........

ماذا يعني انني مسلم سني؟

قصة غريبة

ConflictResolution.gif

#35

البرنامج النهائي , مع المعادلة :

// equation.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
int W=16;
int POW=4;

int EQUATION;


	for (int x=0;x<W/2;x++)
	{	
EQUATION = (((POW-3)*10)-(0.25*W))*((x-(x%4))/4)+W+(((x-(x%2))/2)*0.25*W)-((x+(x%2))/2)*0.5*W;
cout << EQUATION << endl;
	}

	cin.get();
	return 0;
}

فقط قم بتغيي القيم W و POW حيث W إذا كانت 16 ستكون POW هي اس الإثنين , يعني 2 أس 4 يساوي 16 , فإن POW = 4 , وهكذا , حيث دالة log لاتعمل لعدم وجود ملف رأس maath في جهازي ,

عند التعويض ب 16 أو 8 , تكون النتيجة سليمة , وعند التعويض ب 32 , يحدث شرخ في الحد الثامن تقريبا , حيث مرة أخرى لمأنتبه للتسلسل في الحدود المتأخرة , ونسق هذه المتسلسة يحتاج لحدود أكبر لتحديدها بصورة نهائية ,

حتى هنا وأكتفي أيضا :D

وإليكم المرفق لطباعة ال 16 , وهو ملف text يجب تغيير إمتداده ل exe أولا ,

equation.txt

تم تعديل هذه المشاركة بواسطة HGB في 10 أغسطس 2005 في 22:24

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#36

مشكور اخى HGB على محاولاتك

ولكن يبدوا ان هذا التسلسل لا يوجد له معادلة ثابتة بدليل انك اخى اضطررت فى النهاية الى استخدام ال LOOPS اى حلها برمجيا

مش مشكلة ... خيرها فى غيرها :)

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

--------------

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#37

السلام عليكم،،، إن كنت فهمت السؤال جيدا:

1- تريد دالة رياضية تقوم بإعطائك النتائج التي وضعتها.

2- لا تريد استخدام دوال التكرار مع أنها رياضية!!

3- تريدها أن تعطي النتائج التالية مثلا:

32

16

8

28

12

4

30

14

6

26

10

2

---

إذا كان هذا هو المطلوب فهذه هي المعادلة (أعد ترتيبها إذا أردتها في جملة واحدة):

public class Testing {

	public static void main(String[]args)throws Exception{

  //testing size 4, 8, 12, 16, 20
  for(int o=4; o<24; o+=4){
 	 for (int i = 0; i<o; i++)
    System.out.println (getValueAt(i+1, o));
 	 System.out.println ();
  }


	}

	/**Returns the value at the spisified position,
  *given the size{4, 8, 12, 16, 20, etc...}
  *which resembles the size of the set.
  */
	public static double getValueAt(int position, int size){
  /**parts: a part contains 4 entries {8, 4, 6, 2}
   *	2 parts {16, 8, 12, 4, ...}
   * 1st part start with 16 and has 12, 14, 10
   * 2nd part start with 8 and has 4, 6, 2
   */
  int parts=size/4;
  /**part: shows the part number we are at, we are at position!
   * and the position is at part:
   */
  int part =  (position+parts-1)%parts;
  /**maxOfPart: computes the maximum number in a part.
   *the maximum of part 2 is 16, the max of part 3 is 32,
   *and the max of part 1 is 8
   */
  double maxOfPart=Math.pow(2,parts-part)*4;
  /**chosenEnum: this can be 1 of four values(1,2,3,4)
   *it resembles the segment we are at.
   *we use this to comput the next opration.
   */
  int chosenEnum=((position+(parts-1))/parts);
  /**value1: converts chosenEnum to the values {8,4,2,6}
   *thanks to 3imad Al-Khleel
   */
  double value1= 27.5 *chosenEnum - 28.75 *Math.pow(chosenEnum, 2.0) +
    10.5 *Math.pow(chosenEnum, 3.0) - 1.25 *Math.pow(chosenEnum, 4.0);
  System.out.print ("chosenEnum: "+chosenEnum+"\tValue1: "+value1+"\tPart: "+part+"\tMaxOfPart: "+
    maxOfPart+"\tResult: ");

  /**Returns the result
   */
  return (value1-8+maxOfPart);
	}


}

الدالة تأخذ قيمتين، الأولى حجمها والثانية الموقع المطلوب!

مع الشكر والتقدير لعماد الخليل!

تم اختبارها على المجموعات ذات الحجم

4 (8،4،6،2)

8 (16،8،12،4،14،6،10،2)

12(...)

16(...)

20(...)

بالتوفيق!!

#38
اقتباس
ولكن يبدوا ان هذا التسلسل لا يوجد له معادلة ثابتة بدليل انك اخى اضطررت فى النهاية الى استخدام ال LOOPS اى حلها برمجيا

مش مشكلة

VBRocket , ال for loop ليس لها علاقة بالمعادلة , وهي فقط لأظهر لك كل النتائج بعد التعويض في المعادلة , ويكفي أن تعوض في المعادلة بأي قيمة x وستحصل على النتيجة المقابلة :)

لاأعرف ربما عماد حل المعادلة من البداية بالطريقة الصحيحة وتنفع أيضا مع الأرقام 32 و 64 و128 لقيم W ونحن لانعلم !!

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#39

اسف لم اخذ بالى من موضوع ال loop انه يعوض عن القيم فقط ...

اخى ابو مازن

الدالة لم تعمل مع انى حاولت بقدر الامكان تحويلها الى الفيجوال بيسك !!!!

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

--------------

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#40
Function getValueAt(ByVal position As Integer, ByVal size As Integer)
Dim Parts As Integer
Parts = size / 4

Dim Part As Integer
Part = (position + Parts - 1) Mod Parts

Dim maxOfPart As Double
maxOfPart = (Parts - Part) ^ 2 * 4

Dim chosenEnum As Integer
chosenEnum = ((position + (Parts - 1)) / Parts)

Dim value1 As Double
value1 = (27.5 * chosenEnum) - (28.75 * (chosenEnum ^ 2)) + (10.5 * (chosenEnum ^ 3)) - (1.25 * (chosenEnum ^ 4))
MsgBox "chosenEnum: " + Str(chosenEnum) + "\tValue1: " + Str(value1) + "\tPart: " + Str(Part) + "\tMaxOfPart: " + Str(maxOfPart) + "\tResult: "
getValueAt = (value1 - maxOfPart + 8)

End Function

ها هى الدالة بالفيجوال بعد التعديل لو يوجد خطأ اخبرنى

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

--------------

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#41

أخي الصاروخ: توجد 3 أخطاء، اثنان منهما في نقلك،، والأخير بسبب طريقة تقريب VB وقد عوضتها بدالة صغيرة Int أنت أعلم بها!!

1- الخطأ الأول معادلة maxOfPart

2- الخطأ الثاني معادلة getValueAt

3- تقريب chosenEnum فأنا قصدت أصغر عدد صحيح وليس أقرب عدد صحيح!

Function getValueAt(ByVal position As Integer, ByVal size As Integer)
Dim Parts As Integer
Parts = size / 4
Dim Part As Integer
Part = (position + Parts - 1) Mod Parts
Dim maxOfPart As Double
maxOfPart = 2 ^ (Parts - Part) * 4
Dim chosenEnum As Integer
chosenEnum = Int((position + (Parts - 1)) / Parts)
Dim value1 As Double
value1 = (27.5 * chosenEnum) - (28.75 * (chosenEnum ^ 2)) + (10.5 * (chosenEnum ^ 3)) - (1.25 * (chosenEnum ^ 4))
'MsgBox "chosenEnum: " + Str(chosenEnum) + "\tValue1: " + Str(value1) + "\tPart: " + Str(Part) + "\tMaxOfPart: " + Str(maxOfPart) + "\tResult: "
Debug.Print "ChosenEnum: "; chosenEnum, "Value1: "; value1, "Part: "; Part, "MaxOfPrint: "; maxOfPart, "Result: ";
getValueAt = (value1 + maxOfPart - 8)

End Function

بالتوفيق!!

#42
HGB كتب:

لاأعرف ربما عماد حل المعادلة من البداية بالطريقة الصحيحة وتنفع أيضا مع الأرقام 32 و 64 و128 لقيم W ونحن لانعلم !!

لا يا هيثم معادلتي لم تكن صحيحة لان المطلوب كما هو واضح يعتمد على متغيرين و ليس متغير واحد حيث ظننت ان المطلوب معادلة لكل سلسلة بينما المطلوب معادلة لكل السلاسل و بالتالي فهناك متغيران. على كل المعادلة تشدني و ربما اعطيها بعض الوقت.

تم تعديل هذه المشاركة بواسطة عماد الخليل في 11 أغسطس 2005 في 18:39

39_22.gif

تزود من التقوى فإنك لا تدري *** إذا جن ليل هل تعيش إلى الفجر

فكم من فتى أمسى وأصبح ضاحكاً *** وقد نسجت أكفانه وهو لا يدري

لقراءة القرآن الكريم و سماعه و تفسيره ........

ماذا يعني انني مسلم سني؟

قصة غريبة

ConflictResolution.gif

#43

شكرا على مجهودك و لكن المعادلة خاطئة على المدى البعيد ( 32 و 64 و .....................)

اليك تسلسل 32 الذى اريده

2

18

10

26

6

22

14

30

4

20

12

28

8

24

16

32

ودالتك لا تظهر هذا التسلسل ... جرب بنفسك واخبرنى بالنتيجة

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

--------------

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#44

المعادلة ليست خطأ!!

أنا فهمت السؤال خطأ إذن !!... ولم أفهمه إلى الآن!! :)

تم تعديل هذه المشاركة بواسطة أبومازن في 11 أغسطس 2005 في 19:51

#45
أبومازن كتب:
أنا فهمت السؤال خطأ إذن !!... ولم أفهمه إلى الآن!! :)

اوضح شرح للمتسلسلة هو الموجود في هذا الرابط او هذه الصورة

39_22.gif

تزود من التقوى فإنك لا تدري *** إذا جن ليل هل تعيش إلى الفجر

فكم من فتى أمسى وأصبح ضاحكاً *** وقد نسجت أكفانه وهو لا يدري

لقراءة القرآن الكريم و سماعه و تفسيره ........

ماذا يعني انني مسلم سني؟

قصة غريبة

ConflictResolution.gif

#46

فهمت السؤال بعد النظر إلى هذا الجدول!!

arkam.jpg

الشفرة أسهل مما تتوقعه!! وهي رياضية جدا:

	public static int getValue(int position, int size){
  if(size==1)return 2;
  int value = getValue(position/2, size/2);
  if(position%2==0)value+= size;
  return value;
	}

الحجم هو إحدى الأرقام 2،4،8،16،32،64 الخ... والموقع هو الموقع من 1 إلى الحجم.

تمت تجربته على هذه الأرقام ونتج الجدول التالي:

128	<><>	64	<><>	32	<><>	16	<><>	8	<><>	4	<><>	2
64	<><>	32	<><>	16	<><>	8	<><>	4	<><>	2	<><>	
96	<><>	48	<><>	24	<><>	12	<><>	6	<><>  <><>	
32	<><>	16	<><>	8	<><>	4	<><>	2	<><>  <><>	
112	<><>	56	<><>	28	<><>	14	<><>  <><>  <><>	
48	<><>	24	<><>	12	<><>	6	<><>  <><>  <><>	
80	<><>	40	<><>	20	<><>	10	<><>  <><>  <><>	
16	<><>	8	<><>	4	<><>	2	<><>  <><>  <><>	
120	<><>	60	<><>	30	<><>  <><>  <><>  <><>	
56	<><>	28	<><>	14	<><>  <><>  <><>  <><>	
88	<><>	44	<><>	22	<><>  <><>  <><>  <><>	
24	<><>	12	<><>	6	<><>  <><>  <><>  <><>	
104	<><>	52	<><>	26	<><>  <><>  <><>  <><>	
40	<><>	20	<><>	10	<><>  <><>  <><>  <><>	
72	<><>	36	<><>	18	<><>  <><>  <><>  <><>	
8	<><>	4	<><>	2	<><>  <><>  <><>  <><>	
124	<><>	62	<><>  <><>  <><>  <><>  <><>	
60	<><>	30	<><>  <><>  <><>  <><>  <><>	
92	<><>	46	<><>  <><>  <><>  <><>  <><>	
28	<><>	14	<><>  <><>  <><>  <><>  <><>	
108	<><>	54	<><>  <><>  <><>  <><>  <><>	
44	<><>	22	<><>  <><>  <><>  <><>  <><>	
76	<><>	38	<><>  <><>  <><>  <><>  <><>	
12	<><>	6	<><>  <><>  <><>  <><>  <><>	
116	<><>	58	<><>  <><>  <><>  <><>  <><>	
52	<><>	26	<><>  <><>  <><>  <><>  <><>	
84	<><>	42	<><>  <><>  <><>  <><>  <><>	
20	<><>	10	<><>  <><>  <><>  <><>  <><>	
100	<><>	50	<><>  <><>  <><>  <><>  <><>	
36	<><>	18	<><>  <><>  <><>  <><>  <><>	
68	<><>	34	<><>  <><>  <><>  <><>  <><>	
4	<><>	2	<><>  <><>  <><>  <><>  <><>	
126	<><>  <><>  <><>  <><>  <><>  <><>	
62	<><>  <><>  <><>  <><>  <><>  <><>	
94	<><>  <><>  <><>  <><>  <><>  <><>	
30	<><>  <><>  <><>  <><>  <><>  <><>	
110	<><>  <><>  <><>  <><>  <><>  <><>	
46	<><>  <><>  <><>  <><>  <><>  <><>	
78	<><>  <><>  <><>  <><>  <><>  <><>	
14	<><>  <><>  <><>  <><>  <><>  <><>	
118	<><>  <><>  <><>  <><>  <><>  <><>	
54	<><>  <><>  <><>  <><>  <><>  <><>	
86	<><>  <><>  <><>  <><>  <><>  <><>	
22	<><>  <><>  <><>  <><>  <><>  <><>	
102	<><>  <><>  <><>  <><>  <><>  <><>	
38	<><>  <><>  <><>  <><>  <><>  <><>	
70	<><>  <><>  <><>  <><>  <><>  <><>	
6	<><>  <><>  <><>  <><>  <><>  <><>	
122	<><>  <><>  <><>  <><>  <><>  <><>	
58	<><>  <><>  <><>  <><>  <><>  <><>	
90	<><>  <><>  <><>  <><>  <><>  <><>	
26	<><>  <><>  <><>  <><>  <><>  <><>	
106	<><>  <><>  <><>  <><>  <><>  <><>	
42	<><>  <><>  <><>  <><>  <><>  <><>	
74	<><>  <><>  <><>  <><>  <><>  <><>	
10	<><>  <><>  <><>  <><>  <><>  <><>	
114	<><>  <><>  <><>  <><>  <><>  <><>	
50	<><>  <><>  <><>  <><>  <><>  <><>	
82	<><>  <><>  <><>  <><>  <><>  <><>	
18	<><>  <><>  <><>  <><>  <><>  <><>	
98	<><>  <><>  <><>  <><>  <><>  <><>	
34	<><>  <><>  <><>  <><>  <><>  <><>	
66	<><>  <><>  <><>  <><>  <><>  <><>	
2	<><>  <><>  <><>  <><>  <><>  <><>

أرجو أن يكون هذا ما تريده!!

اعذرني على طريقة عرض الجدول!!

تم تعديل هذه المشاركة بواسطة أبومازن في 12 أغسطس 2005 في 00:00

#47

ربما نريد تقليل عدد الأسطر ليصبح سطرين:

	public static int getValue2(int position, int size){
  if(size==1)return 2;
  return getValue(position/2, size/2) - size*(position%2-1);
	}

بالتوفيق!!

تم تعديل هذه المشاركة بواسطة أبومازن في 12 أغسطس 2005 في 00:26

#48

الحل باستعمال VB!!

Public Sub test()
For o = 0 To 8 - 1
    For i = 0 To 2 ^ o - 1
        Debug.Print getValue(i, 2 ^ o);
    Next i
    Debug.Print
Next o
End Sub

Public Function getValue(ByVal position As Integer, ByVal size As Integer) As Integer
If size = 1 Then
    getValue = 2
Else
    getValue = getValue(Int(position / 2), Int(size / 2)) - size * ((position Mod 2) - 1)
End If
End Function

الناتج..............

 
2 
 4  2 
 8  4  6  2 
 16  8  12  4  14  6  10  2 
 32  16  24  8  28  12  20  4  30  14  22  6  26  10  18  2 
 64  32  48  16  56  24  40  8  60  28  44  12  52  20  36  4  62  30  46  14  54  22  38  6  58  26  42  10  50  18  34  2 
 128  64  96  32  112  48  80  16  120  56  88  24  104  40  72  8  124  60  92  28  108  44  76  12  116  52  84  20  100  36  68  4  126  62  94  30  110  46  78  14  118  54  86  22  102  38  70  6  122  58  90  26  106  42  74  10  114  50  82  18  98  34  66  2 
 256  128  192  64  224  96  160  32  240  112  176  48  208  80  144  16  248  120  184  56  216  88  152  24  232  104  168  40  200  72  136  8  252  124  188  60  220  92  156  28  236  108  172  44  204  76  140  12  244  116  180  52  212  84  148  20  228  100  164  36  196  68  132  4  254  126  190  62  222  94  158  30  238  110  174  46  206  78  142  14  246  118  182  54  214  86  150  22  230  102  166  38  198  70  134  6  250  122  186  58  218  90  154  26  234  106  170  42  202  74  138  10  242  114  178  50  210  82  146  18  226  98  162  34  194  66  130  2

بالتوفيق!

تم تعديل هذه المشاركة بواسطة أبومازن في 12 أغسطس 2005 في 04:56

#49

ممتاز جدا جدا :)

هذا اقل كود لحل المتسلسلة

لكن انا لم اصل الى معادلة رياضية بحتة س و ص وع مثل التى كتبها الاخ الفاضل عماد الخليل وفى نفس الوقت تحل اى متسلسلة

1- لا خير في حسن الجسوم وطولها إن لم يزن حسن الجسوم عقول

2- لا تنظر إلى صغر الخطيئة .. ولكن انظر إلى عظم من عصيت

3- قد يجمع المال غير آكله . . ويأكل المال غير من جمعه

4- من وثق بالله أغناه ومن توكل عليه كفاه ومن خافه قلت مخافته ومن عرفه تمت معرفته

5- أن تضيء شمعة صغيرة خير لك من أن تنفق عمرك تلعن الظلام

6- لا يحزنك إنك فشلت مادمت تحاول الوقوف على قدميك من جديد

7- صديقك من يصارحك بأخطائك لا من يجملها ليكسب رضاءك

8 - الابتسامة كلمة طيبة بغير حروف

9- لا داعى للخوف من صوت الرصاص .. فالرصاصة التى تقتلك لن تسمع صوتها

10 -- يستطيع الناس أن يعيشوا بلا هواء بضع دقائق وبلا ماء أسبوعين وبلا

طعام حوالى شهرين وبلا أفكار سنوات لا حصر لها

من مواضيعى :

--------------

دروس تعلم كيف تصحح أخطائك بنفسك

برنامج الحائط النارى العربى ---- جديد

برنامج ساعة بالعقارب ------ جديد

لعبة سناك الشهيرة مع الكود

غير نظرتك لل picturebox وانظر ماذا فعلت بها

حمل ملف فلاش على الفورم بكل سهولة

مكتبة تحتوى على 50000 كتاب مجانى معظمها عن الكمبيوتر و البرمجة

برنامج المترجم العربى لترجمة الافلام

#50

ياأبو مازن , الحل تمام , لكننا نريد معادلة فقط بدون أن ندخل recursion أو أي جمل if أو أي شيء له علاقة بالبرمجة , يكفي فقط حلقة للتعويض في قيم x , يعني نريد معادلة نكتبها في ورقه ونعوض فيها بقيم x ونحصل على الناتج مباشرة :)

banner_60_468.gif

NOTHING IS IMPOSSIBLE

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

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