В Python можно решить эту задачу, написав программу для сложения заданного количества чисел, вводимых пользователем, с использованием функций with и без них.
Я объясню оба подхода. Алгоритм решения очень прост: программа сначала определяет, сколько чисел вы хотите сложить, например, 3, 5 или 8. Затем программа по одному запрашивает каждое из этих чисел.
Например, если вы выберете 4 числа для сложения, программа 4 раза попросит вас ввести 4 разных числа.
Для поиска суммы n чисел
Чтобы сложить или найти сумму n чисел, например, если вам нужно сложить два числа, например, 5 и 6, вы можете использовать следующий код.
# Accepting the total number user want to add num = int(input("Enter the number of numbers you want to add: ")) # empty list to store all the number entered by the user n_numbers = [] # for loop to accept the number from the user and add it to the empty list for i in range(num): # accepting input from the user in each iteration number = int(input(f"Enter the {i+1} number: ")) # adding each input number to the n_numbers list using append() method n_numbers.append(number) # intializing a with 0 to store the sum of all the given numbers total = 0 # Running loop to take each number from the n_numbers for current_num in n_numbers: # In each iteration adding each numbers to the total total = current_num + total print(f"Total of given {num} number is : ", total)
Из вывода пользователь вводит 2 числа: 5 и 6. Затем оба числа складываются, и сумма данного числа равна 11.
С использованием функции sum()
Вы также можете добавить несколько чисел, используя эту функцию. В Python есть встроенная функция sum(), которая складывает заданные числа.
Например, вы можете изменить код из предыдущего раздела следующим образом.
# Accepting the total number user want to add num = int(input("Enter the number of numbers you want to add: ")) # empty list to store all the number entered by the user n_numbers = [] # for loop to accept the number from the user and add it to the empty list for i in range(num): # accepting input from the user in each iteration number = int(input(f"Enter the {i+1} number: ")) # adding each input number to the n_numbers list using append() method n_numbers.append(number) # using the sum() function to add the given n numbers total = sum(n_numbers) print(f"Total of given {num} number is : ", total)
Обратите внимание: на этот раз функция sum() служит для сложения n чисел. В представленном коде список n_numbers передаётся в функцию в виде sum(n_numbers). В результате функция складывает числа и возвращает сумму, которая в данном случае равна 21.
Также на этот раз добавляются 4 числа [5, 8, 7, 1].
С использованием цикла For
Вы можете использовать одиночный цикл for, чтобы найти сумму n чисел. Например, запустите код ниже.
# initialize the sum to 0 total_sum = 0 # ask the user how many numbers they want to add n = int(input("Enter the number of values you want to add: ")) # loop to take the numbers from the user for i in range(n): num = float(input(f"Enter number {i+1}: ")) total_sum += num # print the final sum print(f"The sum of the {n} numbers is: {total_sum}")
Пользователь вводит три числа из вывода: 34, 20 и 50. Затем с помощью цикла for добавляются три числа, сумма 104,0.