Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

تحديات برمجيةالتحدي السادس - حل التمرين الثاني بلغة بايثون

المطلوب

قم بتعريف دالة إسمها PrintSecondLowest, عند استدعاءها نمرر لها مصفوفة أحادية (ذات بعد واحد) فتقوم بطباعة ثاني أصغر عدد موجود فيها.
بعدها قم بإنشاء مصفوفة في البرنامج و تجربة استدعاء الدالة لمعرفة ثاني أصغر عدد موجود في المصفوفة.


الحل بلغة بايثون

# print_second_lowest() هنا قمنا بتعريف الدالة
def print_second_lowest(arr):
if len(arr) == 0:
print("Invalid params")
return
second_lowest = arr[0]
for i in range(len(arr) - 1):
for j in range(i, len(arr)):
if arr[i] > arr[j]:
temp = arr[j]
arr[j] = arr[i]
arr[i] = temp
for i in range(len(arr)):
if arr[i] != arr[0]:
second_lowest = arr[i]
break
if second_lowest == arr[0]:
print("There isn't a second lowest number")
return
print("Second lowest number is:", second_lowest)
# print_second_lowest() هنا قمنا بإنشاء مصفوفة أرقام أحادية و تجربة الدالة
arr = [5, 9, 3, 6, 4, 2, 7, 1, 8]
print_second_lowest(arr)
# print_second_lowest() هنا قمنا بتعريف الدالة def print_second_lowest(arr): if len(arr) == 0: print("Invalid params") return second_lowest = arr[0] for i in range(len(arr) - 1): for j in range(i, len(arr)): if arr[i] > arr[j]: temp = arr[j] arr[j] = arr[i] arr[i] = temp for i in range(len(arr)): if arr[i] != arr[0]: second_lowest = arr[i] break if second_lowest == arr[0]: print("There isn't a second lowest number") return print("Second lowest number is:", second_lowest) # print_second_lowest() هنا قمنا بإنشاء مصفوفة أرقام أحادية و تجربة الدالة arr = [5, 9, 3, 6, 4, 2, 7, 1, 8] print_second_lowest(arr)

سنحصل على النتيجة التالية عند التشغيل في حال كانت المصفوفة تحتوي على نفس القيم المجهزة فيها.

Second lowest number is: 2