﻿ Python: Find the sum of the numbers among the first k with more than 2 digits - w3resource

# Python: Find the sum of the numbers among the first k with more than 2 digits

## Python Programming Puzzles: Exercise-34 with Solution

Write a Python program to find the sum of the numbers in a given list among the first k with more than 2 digits.

```Input:
[4, 5, 17, 9, 14, 108, -9, 12, 76]
Value of K: 4
Output:
0

Input:
[4, 5, 17, 9, 14, 108, -9, 12, 76]
Value of K: 6
Output:
108

Input:
[114, 215, -117, 119, 14, 108, -9, 12, 76]
Value of K: 5
Output:
331

Input:
[114, 215, -117, 119, 14, 108, -9, 12, 76]
Value of K: 1
Output:
114
```

Visual Presentation:

Sample Solution-1:

Python Code:

``````# Define a function named 'test' that takes a list of numbers 'nums' and an integer 'k' as input
def test(nums, k):
# Initialize a variable 's' to store the sum of numbers meeting the specified conditions
s = 0
# Iterate through the first 'k' elements in 'nums'
for i in range(len(nums))[:k]:
# Check if the absolute value of the current number has more than 2 digits
if len(str(abs(nums[i]))) > 2:
# Add the current number to the sum 's'
s = s + nums[i]
# Return the final sum 's'
return s

# Assign a specific list of numbers 'nums' to the variable
nums = [4, 5, 17, 9, 14, 108, -9, 12, 76]

# Print a message indicating the operation to be performed
print("Original list:", nums)

# Assign a specific value 'K' to the variable
K = 4

# Print a message indicating the value of 'K'
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))

# Assign another specific value 'K' to the variable
K = 6

# Print a message indicating the value of 'K'
print("\nOriginal list:", nums)
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))

# Assign another specific list of numbers 'nums' to the variable
nums = [114, 215, -117, 119, 14, 108, -9, 12, 76]

# Print a message indicating the operation to be performed
print("\nOriginal list:", nums)

# Assign another specific value 'K' to the variable
K = 5

# Print a message indicating the value of 'K'
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))

# Print an additional message indicating the original list
print("\nOriginal list:", nums)

# Assign another specific value 'K' to the variable
K = 1

# Print a message indicating the value of 'K'
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))
``````

Sample Output:

```Original list: [4, 5, 17, 9, 14, 108, -9, 12, 76]
Value of K: 4
sum of the numbers among the first k with more than 2 digits
0

Original list: [4, 5, 17, 9, 14, 108, -9, 12, 76]
Value of K: 6
sum of the numbers among the first k with more than 2 digits
108

Original list: [114, 215, -117, 119, 14, 108, -9, 12, 76]
Value of K: 5
sum of the numbers among the first k with more than 2 digits
331

Original list: [114, 215, -117, 119, 14, 108, -9, 12, 76]
Value of K: 1
sum of the numbers among the first k with more than 2 digits
114
```

Flowchart:

Sample Solution-2:

Python Code:

``````#License: https://bit.ly/3oLErEI

# Define a function named 'test' that takes a list of numbers 'nums' and an integer 'k' as input
def test(nums, k):
# Use a generator expression to sum numbers meeting the specified conditions in the first 'k' elements of 'nums'
return sum(n for n in nums[:k] if len(str(abs(n))) > 2)

# Assign a specific list of numbers 'nums' to the variable
nums = [4, 5, 17, 9, 14, 108, -9, 12, 76]

# Print a message indicating the operation to be performed
print("Original list:", nums)

# Assign a specific value 'K' to the variable
K = 4

# Print a message indicating the value of 'K'
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))

# Assign another specific value 'K' to the variable
K = 6

# Print a message indicating the value of 'K'
print("\nOriginal list:", nums)
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))

# Assign another specific list of numbers 'nums' to the variable
nums = [114, 215, -117, 119, 14, 108, -9, 12, 76]

# Print a message indicating the operation to be performed
print("\nOriginal list:", nums)

# Assign another specific value 'K' to the variable
K = 5

# Print a message indicating the value of 'K'
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))

# Print an additional message indicating the original list
print("\nOriginal list:", nums)

# Assign another specific value 'K' to the variable
K = 1

# Print a message indicating the value of 'K'
print("Value of K:", K)

# Print a message indicating the operation to be performed
print("Sum of the numbers among the first k with more than 2 digits:")
# Print the result of the test function applied to 'nums' and 'K'
print(test(nums, K))
``````

Sample Output:

```Original list: [4, 5, 17, 9, 14, 108, -9, 12, 76]
Value of K: 4
sum of the numbers among the first k with more than 2 digits
0

Original list: [4, 5, 17, 9, 14, 108, -9, 12, 76]
Value of K: 6
sum of the numbers among the first k with more than 2 digits
108

Original list: [114, 215, -117, 119, 14, 108, -9, 12, 76]
Value of K: 5
sum of the numbers among the first k with more than 2 digits
331

Original list: [114, 215, -117, 119, 14, 108, -9, 12, 76]
Value of K: 1
sum of the numbers among the first k with more than 2 digits
114
```

Flowchart:

Python Code Editor :

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿