Pobierz aplikację
Wybierz folder i poproś asystenta o przeczytanie odpowiednich plików przed ich zmianą. Określ cel oraz granice zadania.
Wyznacz ciąg Collatza od dodatniej liczby całkowitej z jawnymi limitami kroków i wartości. Sprawdź początek jeden, dojście do jednego i przekroczenie obu limitów, zgłaszając błąd bez twierdzenia, że każdy ciąg się kończy.
Wybierz folder i poproś asystenta o przeczytanie odpowiednich plików przed ich zmianą. Określ cel oraz granice zadania.
Wybierz zgodny endpoint. Dostępne narzędzia i jakość odpowiedzi zależą od skonfigurowanego modelu i serwera.
Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
def collatz(start, max_steps, value_cap):
if any(type(v) is not int for v in (start, max_steps, value_cap)):
raise ValueError("limit.integer")
if not 0 <= max_steps <= 10000 or not 1 <= start <= value_cap <= 10**18:
raise ValueError("limit.range")
result = [start]
for _ in range(max_steps):
if start == 1:
return result
start = start // 2 if start % 2 == 0 else 3 * start + 1
if start > value_cap:
raise ValueError("value.cap")
result.append(start)
if start != 1:
raise ValueError("step.cap")
return resultSprawdź przed zastosowaniem. Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.