djfz-24_25-jezyki/TaskA04/task04.py

36 lines
1.1 KiB
Python
Raw Normal View History

2024-11-15 23:08:20 +01:00
def extract_numbers(line):
numbers = []
current_number = ""
for char in line:
2024-11-17 22:56:41 +01:00
# Sprawdzamy, czy znak jest cyfrą (ASCII dla cyfr to 48-57)
if '0' <= char <= '9':
current_number += char
2024-11-15 23:08:20 +01:00
else:
if current_number: # Jeśli obecna liczba została zakończona
numbers.append(current_number)
current_number = "" # Resetujemy licznik
# Dodajemy ostatnią liczbę, jeśli linia kończy się na cyfry
if current_number:
numbers.append(current_number)
2024-11-17 22:56:41 +01:00
# Ręczna implementacja metody join
result = ""
for i in range(len(numbers)):
result += numbers[i]
if i < len(numbers) - 1: # Dodajemy spację między liczbami
result += " "
return result
2024-11-15 23:08:20 +01:00
# Przetwarzanie danych wejściowych z pliku
input_file = '/Users/jwieczor/Desktop/djfz-24_25-jezyki-1/TaskA04/simple.in'
with open(input_file, 'r') as file:
for line in file:
result = extract_numbers(line.strip()) # Usuwamy końcowe białe znaki
if result: # Wypisujemy tylko linie, które mają liczby
print(result)