Path: ...!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!usenet-fr.net!.POSTED!not-for-mail From: Olivier Miakinen Newsgroups: fr.rec.jeux.enigmes Subject: [aide python] Re: F-Nim Date: Sun, 6 Nov 2022 15:33:45 +0100 Organization: There's no cabale Lines: 45 Message-ID: References: NNTP-Posting-Host: 220.12.205.77.rev.sfr.net Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 8bit X-Trace: cabale.usenet-fr.net 1667745226 60077 77.205.12.220 (6 Nov 2022 14:33:46 GMT) X-Complaints-To: abuse@usenet-fr.net NNTP-Posting-Date: Sun, 6 Nov 2022 14:33:46 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4 In-Reply-To: Bytes: 2494 Le 06/11/2022 13:40, Jacques Mathon a écrit : >>>> >>>> ============================================================================= >>>> def choix(have, maxi): >>>> while True: >>>> if have <= maxi: >>>> return have >>>> ## # # ## # >>>> ##### # # ##### >>>> ## # # ## ### >>>> #### ## # >>>> ============================================================================= > > C'est très bien comme ça, cela va m'inciter à me mettre à python qui à > l'air syntaxiquement beaucoup plus ergonomique. :-) Une petite aide sur python a été donnée par ast, mais avec diapublication sur fr.sci.maths plutôt que fr.rec.jeux.enigmes. C'est pourquoi je la redonne ici. > 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 -- Olivier Miakinen