Stáhněte aplikaci
Vyberte složku a před úpravou nechte asistenta přečíst příslušné soubory. Určete cíl i hranice úkolu.
Vypočtěte 16bitový internetový součet pro nula až 65535 bajtů s nulovým doplněním posledního lichého bajtu. Otestujte kruhový přenos a prázdný vstup, odmítněte jiné typy a oddělte nekryptografickou kontrolu od autentizace.
Vyberte složku a před úpravou nechte asistenta přečíst příslušné soubory. Určete cíl i hranice úkolu.
Zvolte kompatibilní endpoint. Dostupné nástroje a kvalita odpovědí závisí na nastaveném modelu a serveru.
Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.
Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu.
def internet_checksum(data):
if type(data) is not bytes or len(data) > 65535:
raise ValueError("checksum.bytes")
total = 0
for i in range(0, len(data), 2):
total += (data[i] << 8) | (data[i+1] if i+1 < len(data) else 0)
while total >> 16:
total = (total & 65535) + (total >> 16)
return (~total) & 65535
Před použitím zkontrolujte. Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.