Deutsch   English   Français   Italiano  
<63367bdd$0$25804$426a74cc@news.free.fr>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!weretis.net!feeder8.news.weretis.net!pasdenom.info!nntpfeed.proxad.net!proxad.net!feeder1-1.proxad.net!cleanfeed1-b.proxad.net!nnrp2-2.free.fr!not-for-mail
Date: Fri, 30 Sep 2022 07:17:16 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
 Thunderbird/102.3.0
Newsgroups: fr.sci.maths,fr.comp.lang.python
Content-Language: fr
From: ast <ast@invalid>
Subject: Que fait ce programme ?
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 21
Message-ID: <63367bdd$0$25804$426a74cc@news.free.fr>
Organization: Guest of ProXad - France
NNTP-Posting-Date: 30 Sep 2022 07:17:17 CEST
NNTP-Posting-Host: 91.170.32.5
X-Trace: 1664515037 news-1.free.fr 25804 91.170.32.5:13705
X-Complaints-To: abuse@proxad.net
Bytes: 1324

Devinette: Que retourne cette petite fonction python

(m et n sont 2 entiers naturels)


def f(m, n):
   while n:
     m, n = m ^ n, (m & n) << 1
   return m


pour ceux qui ne connaissent pas python

"while n" c'est "pendant que n est non nul"

^ est l'opérateur "ou exclusif" bit à bit
& est le "et" bit à bit
<< 1 décalage à gauche bit à bit et ajout d'un 0 à droite

a, b = c, d  affectation simultanée a <- c et b <- d