Previous Up Next

6  Langage Python : impératif

import sys

def somme(paquet):
  somme=0
  if(len(paquet)%2!=0): paquet.append(0)
  for i in range(0,int(len(paquet)/2)):
    mot=paquet[2*i]<<8 | paquet[2*i+1]
    somme += mot
  while somme>>16:
    somme=(somme>>16)+somme&0xffff  
  return (~somme)&0xffff

paquet=[]
while True:
  try:
    for mot in input().split():
      paquet.append(int(mot,16))
  except EOFError:
    break

print('somme='+format(somme(paquet),'04x'))

Previous Up Next