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

حساب معدل مجموعة أعداد ,

بدأه إشراقة فجر في 10 مايو 2010 · 4 رد · 1,054 مشاهدة · في أرشيف قسم الـــ Assembly
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

كتبت برنامج بسيط يقوم بإيجاد المعدل لخمسة أرقام يدخلهم المستخدم .. ,

عملية الإدخال سليمة , لكن الخطأ في عملية القسمة .. ما تتم يطلع لي خطأ .. ,

هذا الكود ..

.data
num dword 0
d dword 5
.CODE
MAIN	PROC	FAR
mov ecx,5
t:
call readint
add num,eax
loop t
mov eax,num
div d
   call Writeint

أتمنى المساعدة ,

و شكراً جزيلاً ..

1

سبحآن الله وبحمده .. سبحآن الله العظيم .. ,

#2

ليست لدى خبرة فى ال PC assembly ولكن انصحك بتحليل الكود كل جزء على حدا مثلا

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

.data
num dword 0
d dword 5
.CODE
MAIN    PROC    FAR

Call  ReadDec
Div  5.
Call  WriteDec

ادخلى اى رقم يقبل القسمة على 5 وتحققى من النتيجة

1

عن أبي هريرة رضي الله عنه عن النبي صلى الله عليه وسلم أنه قال: سيأتي على الناس زمان سنوات خداعات: يصدق فيها الكاذب ويكذب فيها الصادق، ويؤتمن فيها الخائن ويخون فيها الأمين، وينطق فيها الرويبضة. قيل يا رسول الله وما الرويبضة؟ قال: الرجل التافه ينطق في أمر العامة . رواه احمد والحاكم وصححه الالبانى من حديث ابى هريره.‏

#3

بارك الله فيك أخي على المساعدة , جزاك الله خير ,

أنا نفذت الكود خطوة خطوة .. ويصير الخطأ إذا كانت نوع المتغيرات dword .. ,

أتمنى المساعدة :sad: ..

1

سبحآن الله وبحمده .. سبحآن الله العظيم .. ,

#4

الحمد لله ضبط الكود :) ..

أضفت

CDQ

قبل عملية القسمة .. ,

1

سبحآن الله وبحمده .. سبحآن الله العظيم .. ,

#5

السلام عليكم

الخطأ يمكن أن يكون من نوع المتغيرات

حيث إذا أدخلتِ رقما لايقبل القسمة عليه لن يتم حساب النتيجة

ضعي نوع المتغير REAL4 أو REAL8 أو REAL10

هكذا ليقبل الأعداد ذوات الفواصل و النسبية

:happy:

لاتيأس أبدا مادمت تسعى إلى النجاح .

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