اذهب إلى المحتوى
  • 0

كيف أحل هذا النوع من مثلث باسكال باستخدام بايثون؟

TheBrain

السؤال

Recommended Posts

  • 1

إليك هذا الحل:

n = 4
i = 1
while i <= n:
	j = n-i
	while j != 0:
		print " ",
		j -= 1

	j = 1
	while j < i:
		print i-j+1,
		j += 1
	j = 1
	while j <= i:
		print j,
		j += 1
	print ""
	i +=1

حيث n هو عدد الأسطر الذي تريدها.

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

يمكنك استخدام حلقات for وسيكون الأمر أقصر وأسهل بكثير.

n = 4

for i in range(1, n+1):
	for j in range(n-i):
		print " ",

	for j in range(1, i):
		print i-j+1,

	for j in range(1, i+1):
		print j,
	print ""

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

تفضل

i, s = 1, ""
while i <= 4:
    s += str(i)
    print (" " * (4-i))+s[::-1]+s[1:]
    i += 1

عمل تكرار الى 4 وجمع الارقام بجانب بعضها في s لينتج عن كل عملية تكرار

1
12
123
1234

ومن ثم طباعة s مع معكوسة لينتج

1
212
32123
4321234

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

(" " * (4-i))

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

وسينتج

   1
  212
 32123
4321234

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...