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

حذف من Rnd ?

مغلق
بدأه مبرمج مبتدا في 31 ديسمبر 2007 · 38 رد · 2,558 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

هل هناك كود اجعل

int (rnd * 10)

بحيث لا يذكر الرقم 8 ؟؟

startingprogremmer.jpg
#2

بسيطة

Do
x = Int(Rnd * 10)
Loop While x = 8

من أقوال الأئمة

الإمام علي بن أبي طالب -رضي الله عنه-: "الناس ثلاثة : فعالم رباني ، ومتعلم على سبيل النجاة ، وهمج رِعاع غوغاء أتباع كل ناعق ، يميلون مع كل ريح ، لم يستضيئوا بنور العلم ، ولم يلجئوا إلى ركن وثيق".

الإمام مالك -رحمه الله- : " لن يصلح آخر هذه الأمة إلا بما أصلح به أولها ".

الإمام الأوزاعي -رحمه الله- : " عليك بآثار من سلف وإن رفضك الناس وإياك وآراء الرجال وإن زخرفوه لك بالقول ".

الإمام الفضيل بن عياض -رحمه الله- : " عليك بطرق الهدى و لا يضرك قلة السالكين و إياك و طرق الضلالة ولا يغرك كثرة الهالكين ".

علامة الزمان الإمام الألباني -رحمه الله- : " إن الخلاص إلى أيدي هؤلاء الشباب يتمثل في أمرين لا ثالث لهما ؛ التصفية والتربية ".

وكل خير في اتباع من سلف وكل شر في ابتداع من خلف

#3

ممكن شرح while , do , loop

startingprogremmer.jpg
#4

للرفع

startingprogremmer.jpg
#5

طريقة Do,while,loop لها صيغتان

الأولى

do
[statements]
loop while [condition]

يقوم البرنامج بتنفيذ الأوامر المحصورة بين do و loop while ثم يختبر الـ condition المعطى فإذا كان صحيح يقوم بتنفيذ الأوامر مرة أخرى وهكذا حتى يصبح الـ condition غير متحقق فيخرج من الـ loop

الثانية

do while [condition]
[statements]
loop

وهذا يقوم باختبار الـ condition اولا فإذا تحقق يقوم بتنفيذ الأوامر المحصورة بين while و loop وإن كان غير متحقق يخرج من الـ loop

لاحظ الفرق بين الصيغتين فالأولى تقوم بتنفيذ الأوامر ثم الإختبار أما الثانية فتقوم بالإختبار أولا ثم التنفيذ

وهناك أيضا do,until,loop وهي عكس do,while,loop فالأولى تقوم بالتنفيذ طالما الشرط غير متحقق والثانية تقوم بالتنفيذ طالما الشرط متحقق وتكتب بالصيغتين أيضا

من أقوال الأئمة

الإمام علي بن أبي طالب -رضي الله عنه-: "الناس ثلاثة : فعالم رباني ، ومتعلم على سبيل النجاة ، وهمج رِعاع غوغاء أتباع كل ناعق ، يميلون مع كل ريح ، لم يستضيئوا بنور العلم ، ولم يلجئوا إلى ركن وثيق".

الإمام مالك -رحمه الله- : " لن يصلح آخر هذه الأمة إلا بما أصلح به أولها ".

الإمام الأوزاعي -رحمه الله- : " عليك بآثار من سلف وإن رفضك الناس وإياك وآراء الرجال وإن زخرفوه لك بالقول ".

الإمام الفضيل بن عياض -رحمه الله- : " عليك بطرق الهدى و لا يضرك قلة السالكين و إياك و طرق الضلالة ولا يغرك كثرة الهالكين ".

علامة الزمان الإمام الألباني -رحمه الله- : " إن الخلاص إلى أيدي هؤلاء الشباب يتمثل في أمرين لا ثالث لهما ؛ التصفية والتربية ".

وكل خير في اتباع من سلف وكل شر في ابتداع من خلف

#6

اخي خل هناك مثال على تكست مثل :

if text1.text = ... then

ثم تشرح هذه الجملة

لكي توضح المعنى اكثر لاني لم افهم كيف استعملها الى حد الان

وشكرا مع اعتذاري الشديد على الازعاج

startingprogremmer.jpg
#7
Do
x = Int(Rnd * 10)
Loop While x = 8

جربت انا

Do
x = Int(Rnd * 10)
Loop While x = 8
loop while x = 7
loop while x = 9

فلم تعمل !!

ما الحل الان ؟؟

startingprogremmer.jpg
#8
Do
x = Int(Rnd * 10)
Loop While x = 8 or x=7 or x=6

من أقوال الأئمة

الإمام علي بن أبي طالب -رضي الله عنه-: "الناس ثلاثة : فعالم رباني ، ومتعلم على سبيل النجاة ، وهمج رِعاع غوغاء أتباع كل ناعق ، يميلون مع كل ريح ، لم يستضيئوا بنور العلم ، ولم يلجئوا إلى ركن وثيق".

الإمام مالك -رحمه الله- : " لن يصلح آخر هذه الأمة إلا بما أصلح به أولها ".

الإمام الأوزاعي -رحمه الله- : " عليك بآثار من سلف وإن رفضك الناس وإياك وآراء الرجال وإن زخرفوه لك بالقول ".

الإمام الفضيل بن عياض -رحمه الله- : " عليك بطرق الهدى و لا يضرك قلة السالكين و إياك و طرق الضلالة ولا يغرك كثرة الهالكين ".

علامة الزمان الإمام الألباني -رحمه الله- : " إن الخلاص إلى أيدي هؤلاء الشباب يتمثل في أمرين لا ثالث لهما ؛ التصفية والتربية ".

وكل خير في اتباع من سلف وكل شر في ابتداع من خلف

#9
For mm = 1 To 8
If Text1.Item(mm).Locked = True Then
Do
Loop While x = Text1.Item(mm).Text
Text1.Item(0).Text = x
End If
Next mm

عندما اذهب run لا تظهر run error ولا يتوقف ويجب علي ان اصك الفجوال بيسك باكمله واعيد فتحه

يعني يوجد خطا لا اعلم ما هو

startingprogremmer.jpg
#10

للرفع

startingprogremmer.jpg
#11

شئ طبيعي

Do
Loop While x = Text1.Item(mm).Text

هل يمكن أن تخبرني كيف ستنتهي هذه الـ loop

لا يوجد أمر داخل الـ loop يسمح لها بالإنتهاء أبدا

فالشرط الذي تعمل عليه الـ loop إما متحقق وفي هذه الحالة سيظل متحقق إلى الأبد ولن تنتهي الـ loop وأما أنه غير متحقق وفي هذه الحالة لن تنفذ هذه الـ loop أصلا

من أقوال الأئمة

الإمام علي بن أبي طالب -رضي الله عنه-: "الناس ثلاثة : فعالم رباني ، ومتعلم على سبيل النجاة ، وهمج رِعاع غوغاء أتباع كل ناعق ، يميلون مع كل ريح ، لم يستضيئوا بنور العلم ، ولم يلجئوا إلى ركن وثيق".

الإمام مالك -رحمه الله- : " لن يصلح آخر هذه الأمة إلا بما أصلح به أولها ".

الإمام الأوزاعي -رحمه الله- : " عليك بآثار من سلف وإن رفضك الناس وإياك وآراء الرجال وإن زخرفوه لك بالقول ".

الإمام الفضيل بن عياض -رحمه الله- : " عليك بطرق الهدى و لا يضرك قلة السالكين و إياك و طرق الضلالة ولا يغرك كثرة الهالكين ".

علامة الزمان الإمام الألباني -رحمه الله- : " إن الخلاص إلى أيدي هؤلاء الشباب يتمثل في أمرين لا ثالث لهما ؛ التصفية والتربية ".

وكل خير في اتباع من سلف وكل شر في ابتداع من خلف

#12

اخي اريد ان انهي loop اذا لم تنتهي فكيف ؟

startingprogremmer.jpg
#13
For mm = 1 To 8
If Text1.Item(mm).Locked = True Then
Do
Loop While x = Text1.Item(mm).Text
Text1.Item(0).Text = x
End If
Next mm

هذا الكود لحل المربع الاول

انا املي 8 مربعات و وهو يوجد العدد البافي

عندما املي المربعات :

1 . 2 . 3 .4 .5 .6 .7 .8

لا يعمل الكود

لكن اذا املئت المربعات بهذا الترتيب :

1 . 2 . 3 .4 .5 .7 .8 .9

فيوجد الجواب وهو 6

لا اعلم لماذا :)

_______________

اقتباس
اخي اريد ان انهي loop اذا لم تنتهي فكيف ؟
startingprogremmer.jpg
#14

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

لا تقل لي لا يوجد كتب برمجة في البحرين فهذا مستحيل لأنه لو كانت كتب البرمجة غير موجودة فمن أين اشتريت الجهاز الذي تعمل عليه الآن هل اشتريته من المكسيك ؟

لا يعقل أن تكون أجهزة الحاسب متوفرة والكتب المتعلقة به غير متوفر وإذا كنت مصر على أن الكتب غير متوفرة لديكم فيوجد هنا في المنتدى روايط لكتب برمجة حمل منها كتاب mastering visual basic أو ادخل على هذا الرابط

gigapedia.org

وقم بعمل اشتراك فيه ثم ابحث عن الكتاب الذي تريد

تأكد عند البحث أنك قمت باختيار Item Search وليس Google Ebook Search

هناك أمر آخر في غاية الأهمية

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

وهناك أمر ثالث عند تعلمك لأمر جديد عليك أن تقوم بتجربته منفردا بعيدا عن الأوامر الأخرى بقدر المستطاع حتى تفهمه على حده بشكل جيد ثم بعد ذلك تقوم بتجريته مع الأوامر الأخرى التي تعلمتها قبل ذلك وفهمتها بشكل جيد

لا تأتي مرة واحدة وتقوم بتجربة عدة أوامر جديدة عليك وربطها ببعض وأنت لم تفهم بعد كل واحد منهم

تم تعديل هذه المشاركة بواسطة باسم الموجي في 2 يناير 2008 في 11:38

من أقوال الأئمة

الإمام علي بن أبي طالب -رضي الله عنه-: "الناس ثلاثة : فعالم رباني ، ومتعلم على سبيل النجاة ، وهمج رِعاع غوغاء أتباع كل ناعق ، يميلون مع كل ريح ، لم يستضيئوا بنور العلم ، ولم يلجئوا إلى ركن وثيق".

الإمام مالك -رحمه الله- : " لن يصلح آخر هذه الأمة إلا بما أصلح به أولها ".

الإمام الأوزاعي -رحمه الله- : " عليك بآثار من سلف وإن رفضك الناس وإياك وآراء الرجال وإن زخرفوه لك بالقول ".

الإمام الفضيل بن عياض -رحمه الله- : " عليك بطرق الهدى و لا يضرك قلة السالكين و إياك و طرق الضلالة ولا يغرك كثرة الهالكين ".

علامة الزمان الإمام الألباني -رحمه الله- : " إن الخلاص إلى أيدي هؤلاء الشباب يتمثل في أمرين لا ثالث لهما ؛ التصفية والتربية ".

وكل خير في اتباع من سلف وكل شر في ابتداع من خلف

#15
اقتباس
For mm = 1 To 8

If Text1.Item(mm).Locked = True Then

Do

Loop While x = Text1.Item(mm).Text

Text1.Item(0).Text = x

End If

Next mm

هذا الكود لحل المربع الاول

انا املي 8 مربعات و وهو يوجد العدد البافي

عندما املي المربعات :

1 . 2 . 3 .4 .5 .6 .7 .8

لا يعمل الكود

لكن اذا املئت المربعات بهذا الترتيب :

1 . 2 . 3 .4 .5 .7 .8 .9

فيوجد الجواب وهو 6

لا اعلم لماذا

هذا دليل على اني اجرب تجارب و اكواد :)

اقتباس
لا تقل لي لا يوجد كتب برمجة في البحرين فهذا مستحيل لأنه لو كانت كتب البرمجة غير موجودة فمن أين اشتريت الجهاز الذي تعمل عليه الآن هل اشتريته من المكسيك ؟

يوجد اجهزة افضل من جهازي لكن المبرمجون قليلون

توجد كتب ولكني لم احصل على ما اريد فقط حصلت على كتب للمبتدئين جدا ولدي كتب ايضا لقواعد البيانات

المهم اخي ارجو ان تقول لي لماذذا ::

اقتباس
هذا الكود لحل المربع الاول

انا املي 8 مربعات و وهو يوجد العدد البافي

عندما املي المربعات :

1 . 2 . 3 .4 .5 .6 .7 .8

لا يعمل الكود

لكن اذا املئت المربعات بهذا الترتيب :

1 . 2 . 3 .4 .5 .7 .8 .9

فيوجد الجواب وهو 6

لا اعلم لماذا

و :

اقتباس
اخي اريد ان انهي loop اذا لم تنتهي فكيف ؟

مع شكري الجزيل

startingprogremmer.jpg
#16
x = Int(Rnd * 9)

For mm = 1 To 8
If Text1.Item(mm).Locked = True Then
Do
Exit Do
Loop While x = Text1.Item(mm).Text
Text1.Item(0).Text = x
Timer2.Enabled = True
Timer1.Enabled = False
End If
Next mm

تم التعديل :

اذا لم يتحقق الشرط يسوي exit do

ولكن ....

المفروض يجاوب ويسوي الرقم 9 اذا

انا رتبت المربعات البقية حسب الترتيب :

1.2.3.4.5.6.7.8

لكن الجواب 6

startingprogremmer.jpg
#17

اخ مبرمج مبتدا على ما اتذكر دالة Rnd تقوم بعمل ارقام عشوائية اقل من 1 اذا قم بالضرب فى 8 وستكون كل الارقام الناتجة اقل من 8 وريح راسك

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#19

اتمنى حل المشكلة واني اريد توليد ارقام عشوائية غير الارقام الموجود في بقية التكسات

اتمنى تعديل المرفق

solve__.rar

startingprogremmer.jpg
#20

للرفع

startingprogremmer.jpg
#21

اخ مبرمج مبتدا كما قلت لك المثال بسيط جدا ولا يحتاج كل ما قمت به

تفضل المرفق الخاص بك معدل عليه

بالمناسبة اعزرونى فى غيابى عن القسم

solve__.rar

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#22

السلام عليكم

اخي الظاهر بانك ما فهمت قصدي

كل ما اريده ان التكست واحد لا يتكرر مع غيره من التكسات

وذلك اريد عمل طريقة rnd اذا كانت جميع المربعات ممتلئة سيكون رقم واحد مو موجود هو يوضعه

اتمنى فهمت قصدي

startingprogremmer.jpg
#23

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

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

موقع البرنامج

مبارك لشعب تونس photo-thumb-42837.png

#24

هل لك بالتوضيح ؟؟

او التعديل على المثال ؟؟

بالنسبة للصورة 500 كيلوبايت

ساجعلها اصغر ما استطيع

startingprogremmer.jpg
#25

اخي المشكلة كلها موجودة في

x = int(rnd * 9)
for mm = 1 to 8
if text1.item(mm).locked = true
do

loop while x =  text1.item(mm).text or x = 0
text1.item(0) = x
end if
next mm
startingprogremmer.jpg

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

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