Skip to content
Snippets Groups Projects
Commit be6e4e88 authored by linopino's avatar linopino
Browse files

Umsetzung der Testszenarien von Feature4

parent a1d73f82
No related branches found
No related tags found
2 merge requests!7Develop into main,!4Feature4
...@@ -7,17 +7,23 @@ class StringCalculator(IStringCalculator): ...@@ -7,17 +7,23 @@ class StringCalculator(IStringCalculator):
if not numbers: if not numbers:
return 0 return 0
# Prüfe auf das ungültige Format "1,\n" if numbers.startswith("//"):
if ",\n" in numbers: if "\n" not in numbers:
raise ValueError("Ungültiges Zahlenformat: ',\\n' ist nicht erlaubt") raise ValueError("Ungültiges Format: Nicht vollständig")
delimiter_end_index = numbers.index("\n")
delimiter = numbers[2:delimiter_end_index]
numbers = numbers[delimiter_end_index + 1:]
numbers = numbers.replace(delimiter, ",")
# Trenne Zahlen anhand von Komma oder Zeilenumbruch numbers = numbers.replace("\n", ",")
tokens = re.split(r",|\n", numbers)
# Konvertiere zu Integern und finde negative Zahlen # Split the string by commas, convert each value to an integer, and sum them up
numbers_list = list(map(int, tokens)) try:
negative_numbers = [num for num in numbers_list if num < 0] numbers_list = list(map(int, numbers.split(",")))
except ValueError:
raise ValueError("Ungültiges Zahlenformat: Enthält nicht-numerische Werte")
negative_numbers = [num for num in numbers_list if num < 0]
if negative_numbers: if negative_numbers:
raise ValueError(f"Negative nicht erlaubt: {negative_numbers}") raise ValueError(f"Negative nicht erlaubt: {negative_numbers}")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment