• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

med reda

اعضاء
  • عدد المشاركات

    159
  • تاريخ الانضمام

  • تاريخ اخر زياره

السمعه بالموقع

32 عادي

عن med reda

  • الرتبة
    عضو

معلومات الملف الشخصي

  • الجنس ذكر
  • اهتمامات breaking things and rebuilding them from scratch

طرق الإتصال

  1. ماهي استخدامات yield

    حتى تفهم الامرyield  جيدا ، يجب ان تفهم الفرق بينه وبين return المستخدم في ارجاع قيم الدوال   عند تنفيذ دالة ما . فان بايثون يقوم بحجز مساحة في الذاكرة namespace ليضع فيها المتغيرات المحلية local variables الخاصة بالدالة.   بعد استدعاء الدالة يقوم بايثون او بالتحديد الامرreturn يقوم بحذف جميع المتغيرات المحلية التي انشاءها سابقا وارجاع قيمة الدالة . اما عند استخدام الامر yield فان المتغرات المحلية لا يتم تدميرها عند الخروج من الدالة وهذا يسمح بالرجوع الى الدالة وتكملة تنفيذها انطلاقا من الحالة التي تركناها فيها اخر مرة
  2. هل يمكن التحرر من for

    While تعتبر حلقة تكرارية ايضا لكن عند استعمالها احذر من الحلقة الغير منتهيةinfinite loop ، لذا يجب عليك الاعتناء بشروط الخروج  من الحلقة يمكنك الخروج من الحلقة باستعمال الامر break المثال الذي طرحته خاطئ ، وبعبارة ادق لا ينفذ ابدا، لذا حاول تصحيحة بنفسك
  3. سؤال عن دالة range

    الدالة range() تقوم بانشاء iterator ولا ادري ماهو المصطلح العربي المرادف لذلك ، المهم هو عبارة عن list  بها مجموعة من القيم يمكن الولوج اليها بواسطة حلقة تكرار عادية يمكنك استظهار هته القيم مع مفاتيحها دون اللجوء الى القواميس كالتالي:   for i, j in enumerate(range(5)): print i,j
  4. فك التشفير :1 خوارزمية قيصر

    صاحب الموقع الذي نشرته قام بالاشارة الى احد رواد علم التشفير العرب وهو يعقوب الكندي صراحة اول مرة اسمع ان اول منذ وضع اسس علم فك التشفير هم العرب حيث كانوا يطلقون عليه قديما علم التعمية. قمت بالبحث قليلا فوجدت كتابا قيما يتحدث عن علم التعمية واستخراج المعمى عند العرب انصح الجميع بالاطلاع عليه حيث انه يحتوي معلومات قيمة  https://dl.dropboxusercontent.com/u/57265173/kindy.pdf لي عودة بعد ان احاول حل المشكل المطروح 
  5. التشفير: 1خوارزمية قيصر

    يجب ادخال البيانات على شكل يونيكود
  6. التشفير: 1خوارزمية قيصر

    اصلحت الكود : هذه المرة خورارزمية التشفير تضيف المسافات والرموز كما هي الى النص المشفر كما ان النص المدخل يتم تحويله الى  lower case ثم اقوم بالتشفير او فك التشفير message = raw_input("What is your message? ")shift = int(raw_input("What is your shift? "))operation = int(raw_input("Encrypt or Decrypt: 1:Encrypt / 0:Decrypt"))if operation not in [1, 0]: operation = (raw_input("Encrypt or Decrypt: 1:Encrypt / 0:Decrypt : ")) operation = bool(operation)def cesar(message, shift): cipherText = "" for ch in message: ch = ch.lower() if ch.isalpha(): if operation: stayInAlphabet = ord(ch) + shift else: stayInAlphabet = ord(ch) - shift if stayInAlphabet > ord('z'): stayInAlphabet -= 26 finalLetter = chr(stayInAlphabet) cipherText += finalLetter else: cipherText += ch if operation: print "Your ciphered text is: ", cipherText else: print "Your decipherd text is: ", cipherText return cipherTextcesar(message, shift)
  7. التشفير: 1خوارزمية قيصر

    معك حق  لم انتبه لنص التمرين جيدا ساصلح الكود ثم اعود
  8. التشفير: 1خوارزمية قيصر

    عذرا على التاخر تفضل حلي:   message = raw_input("What is your message? ") shift = int(raw_input("What is your shift? ")) operation = int(raw_input("Encrypt or Decrypt: 1:Encrypt / 0:Decrypt")) if operation not in [1, 0]: operation = (raw_input("Encrypt or Decrypt: 1:Encrypt / 0:Decrypt : ")) operation = bool(operation) def cesar(message, shift): cipherText = "" for ch in message: if ch.isalpha(): if operation: stayInAlphabet = ord(ch) + shift else: stayInAlphabet = ord(ch) - shift if stayInAlphabet > ord('z'): stayInAlphabet -= 26 finalLetter = chr(stayInAlphabet) cipherText += finalLetter if operation: print "Your ciphered text is: ", cipherText else: print "Your decipherd text is: ", cipherText return cipherText cesar(message, shift)
  9.     المثال الذي طرحت هو لحساب العاملي لعدد ماسانطلق من النقطة التي اعطتك مفهوما خاطئ عن مفهوم الارتدادهو في قولك : ان يضرب5*3  وهي ثاني دورة للحلقة التكرارية في البرنامجالبرنامج حقيقة يقوم بالاحتفاظ بناتج الضرب في كل مرة ثم تكرار الحلقة مع انقاص 1 من المتغير الاول في كل مرة الى ان نصل الى الرقم 1 اين ينتهي البرنامج
  10. باختصار شديد هو استدعاء الدالة لنفسها واحسن تطبيق لذلك هو متتالية فيبوناتشي def fibo(n): if n == 0: return 0 elif n == 1: return 1 else: return fibo(n-1)+fibo(n-2)print fibo(6)
  11. تمرين بسيط(palindromise number)

    هو سطر برمجي اخي الكريم وساخبرك لماذا لاني لم اقم الا باختصار البرنامج الاول الذي كتبته  هناك عبارة شرطية . العمليات المنطقية استعملتها وذلك لانك لا تسطيع كتابة اكثر من تعليمة واحدة في نفس السطر دونها   اذا لم كلامي مقنعا بما يكفي . ارجوا ان تعطيني مثال عن تصورك للنتيجة في سطر واحد
  12. تمرين بسيط(palindromise number)

    تم حل التمرين في سطر واحد ههههه قلت لك لن يستطيع فهمه الا الكمبيوتر: res = lambda s: (s, ' is palindrom' ) if s == s[::-1] else (int(s[len(s)/2 +1:][::-1]) > int(s[:len(s)/2]) and str(int(s[:len(s)/2])+1) + s[len(s)/2] + str(int(s[:len(s)/2])+1)[::-1] or str(int(s[:len(s)/2])) + s[len(s)/2] + str(int(s[:len(s)/2]))[::-1] and len(s)%2 == 1 or int(s[len(s)/2 :][::-1]) > int(s[:len(s)/2 ]) and str(int(s[:len(s)/2 ])+1) + str(int(s[:len(s)/2 ])+1)[::-1] or str(int(s[:len(s)/2 ])) + str(int(s[:len(s)/2 ]))[::-1]) تنفيذ الدالة يكون كما يلي: print res("1230456") من لديه حل اقصر فليتفضل
  13. هذه المشكلة رياضية وليست برمجية يمكننا معالجتها كحالة خاصة  انا تركت البرنامج هكذا لانك لم تبين كيف يجب التعامل معها في سوألك
  14. def primefactors(x): xx = x li=[] loop=2 while loop<=x: if x%loop==0: x = x /loop li.append(loop) else: loop+=1 return str(xx) + '=' +'*'.join([ str(i) for i in li]) print primefactors(120) لم ارى التطبيق الذي قمت بارفاقه لاني استخدم لينكس  تم اصلاح الخرج الان