السلام عليكم ورحمه الله وبركاته
كيف اتخلص من مشكله over flow في ضرب عددين كبيرين كل واحد منهم يتكون من اكثر من اربعين digit
والعددين من نوع integer
ارجو المساعده
بالافكار
السلام عليكم ورحمه الله وبركاته
كيف اتخلص من مشكله over flow في ضرب عددين كبيرين كل واحد منهم يتكون من اكثر من اربعين digit
والعددين من نوع integer
ارجو المساعده
بالافكار
السلام عليكم
تغيير نوع المتغير من int إلى long لو كان xمثلا:
unsigned long int x;
أو في لغة C فقط
unsigned long long int x;
طبعا unsigned للأعداد الموجبة فقط
هذه الطريقه غير مقبوله
لازم يكون integerعادي
ولو ممكن نستخدم المصفوفات :(
استخدم خواص التقريب.
هذا مسموح, ولا لأ ايضا
ENG. IMAD, Programing is a way of life, It's in the air, we breath It's pumps through our veines, Without it, we soon crumble to dust
خلاص هناك المصفوفات استخدم وخزن العدد الناتج داخل مصفوفة و انتهى وبدل من كون الاساس 10 ممكن جعله 10000 قسم العدد الذي تريد على 10000 واجعل باقي القسمة في اول خانة
وخارج القسمة اقسمه على 10000 مرة وضع باقي القسمة في الخانة الثانية وهكذا الى ان يصبح خارج القسمة صفرا
وهكذا في العدد الثاني ثم نظم طريقة للضرب مصفوفتين هذا ما يطلق عليه الlong arithmetic
أضاعوني وأي فتى أضاعـوا * * * ليـوم كــريهـة وســـداد ثغــــر
وخـــــلونـي ومعتـرك المنايـا * * * وقد شـــرعوا أسنــتهم لنحـري
كأني لم أكــــــن فيهـم وسيطـا * * * ولم تك نســبتي في آل عمــرو
أجرر في الجـــوامع كـل يـوم * * * ألا لله مظــــلمتـي وهـصـــري
عسى الملك المجيب لمن دعاه * * * سينجيني فيعلم كيــف شكـري
فأجـــزي بالكرامـة أهـل ودي * * * وأجزي بالضـغينة أهل ضري
سؤال لو سمحت: ما مقدار العدد اللذي تستخدمين؟ هل هو integer من سعة 40bits أم من 40 رقم؟؟؟
إذا كان من 40 بيت Bits فيمكنك استخدام Int64__ أو إنشاء Struc من عددين Int حجم كل واحد 32bits.
أما إن كان العدد يتكون من 40 رقم DIGITS فعليك إنشاء struct من 4 Int تمثل العدد في النظام الثنائي.
:blink: لقد خرجت عن الموضوع ربما لكنها تبقى الحل الأنسب
Handling of the int64 and uint64 types
//exemple for a integer 64 bits= 2 integers of 32bits
typedef struct {
unsigned long hi, lo;
} uint64, int64;
//other exemple for a integer 128 bits= 4 integers of 32bits
typedef struct {
unsigned long hi_low64, lo_low64;
unsigned long hi_high64, lo_high64;
} uint128, int128;سأتغيب عن المنتدى وستكون لي زيارات خفيفة بين الحين و الحين
يا صاحب الهم إن الهم منفرج.....................أبشر بخير فإن الفارج الله.
اليأس يقطع أحيانا بصاحبه..........................لا تيأس فإن الكافي الله.
الله يحدث بعد العسر ميسرة.........................لا تفزعن فإن الصانع الله.
إذا بليت فثق بالله وارض به...................فإن الذي يكشف البلوى هو الله.
و الله ما لك غير الله من أحد.......................فحسبك الله في كل لك الله
أخوكم مراد
اعتداءات من الدلفاويين على قسم السي
DeltaAziz ثم romanof ثم ikossan
اين حسن؟
تم تعديل هذه المشاركة بواسطة romanof في 21 أبريل 2006 في 20:06
"First they ignore you, then they laugh at you, then they attack you, then you win"
===
اقتباسحُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا
هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا
الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا
القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ
لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ
البردوني "أبو تمام وعروبة اليوم" 1971
===
اقتباسعبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــمو تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم
ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم
أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟
ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا
البردوني "نحن و الحاكمون "
هذا الموضوع مغلق.