{"id":1219,"date":"2023-04-03T09:29:53","date_gmt":"2023-04-03T08:29:53","guid":{"rendered":"https:\/\/blog.univ-angers.fr\/mathsinfo\/?page_id=1219"},"modified":"2023-04-05T10:02:48","modified_gmt":"2023-04-05T09:02:48","slug":"challenges-2023-pour-calculatrices-hp","status":"publish","type":"page","link":"https:\/\/blog.univ-angers.fr\/mathsinfo\/challenges-2023-pour-calculatrices-hp\/","title":{"rendered":"Challenges 2023 pour calculatrices HP"},"content":{"rendered":"\n<p>Voici les challenges que j&rsquo;ai propos\u00e9s sur Twitter et Facebook (<a href=\"https:\/\/www.facebook.com\/groups\/hpcalculatorclub\/\">HP Calculator Fan Club<\/a>), \u00e0 programmer sur calculatrices HP. <\/p>\n\n\n\n<p>Je mets des solutions en RPL (pour HP 48-49-50 g) et parfois pour d&rsquo;autres machines (HP 12C, HP 35S, HP Prime&#8230;). J&rsquo;ajoute des solutions en Python et APL.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Enonc\u00e9s et corrig\u00e9s<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"583\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1024x583.png\" alt=\"\" class=\"wp-image-1220\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1024x583.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-300x171.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-768x437.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-500x285.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image.png 1147w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">CHALLENGE #1<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP 48+ - Eric Schraf ===\n\n\u00ab 0 + \u2192t \t\t' t = {0, numbers...}\n\u00ab 0 1 9 FOR i\t        ' m = 0 ; for i = 1 to 9\n  t i - NOT\t\t' t == i ? -&gt; {True False...}\n  \u03a3LIST\t\t\t' n = sum({True False...})\n  DUP 2 &gt; * i *\t\t' p = n * i * (n &gt; 2)\n  MAX NEXT \u00bb \u00bb\t        ' m = max(p, m)\n'CH01 STO\n\n1: {4 4 4 9 9 9}\nVAR CH01\n1: 27\n\n=== Version Python - Eric Schraf ===\n\ndef ch01(arr):\n  maxi = 0\n  for v in set(arr): \n    n = arr.count(v)\n    if n &gt; 2: maxi = max(maxi, n * v)\n  return maxi\n\n&gt;&gt; ch01(&#091;4,4,4,9,9,9])\n27\n&gt;&gt; ch01(&#091;1,1,9,9,2,1,2,2,1])\n6\n\n=== Version APL - Eric Schraf ===\n\n      \u2308\/, {\u237a \u00d7 (n &gt; 2) \u00d7 n \u2190 \u2374\u2375} \u2338 4 4 4 4 9 9 9\n27\n      \u2308\/, {\u237a \u00d7 (n &gt; 2) \u00d7 n \u2190 \u2374\u2375} \u2338 1 1 9 9 2 1 2 2 1\n6<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"579\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-3-1024x579.png\" alt=\"\" class=\"wp-image-1223\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-3-1024x579.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-3-300x170.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-3-768x434.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-3-500x283.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-3.png 1148w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">CHALLENGE #2<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP 48+ - Eric Schraf ===\n\n\u00ab {} SWAP WHILE DUP 0 &gt;   ' Transformation nombre en liste\nREPEAT DUP 10 MOD ROT +   ' Ajout de l'unit\u00e9 \u00e0 la liste\nSWAP 10 \/ IP END          ' On passe \u00e0 l'unit\u00e9 suivante\nDROP \u0394LIST                ' Diff\u00e9rences successives\nABS 1 &gt;                   ' Test si certains d\u00e9passent 1\n\u03a3LIST NOT                 ' On les compte : 1 si aucun &gt; 1\n\u00bb\n'CH02 STO\n\n1: 5654\nVAR CH02\n1: 1\n1: 798\nCH02\n1: 0\n\n=== HP Prime - Uwe Sauerland ===\n\nEXPORT ch02(n)\nBEGIN\n  LOCAL k, s := STRING(n);\n  FOR k FROM 1 TO DIM(s) - 1 DO\n    IF ABS(EXPR(s&#091;k, 1]) - EXPR(s&#091;k + 1, 1])) \u2260 1 THEN\n      RETURN 0;\n    END;\n  END;\n  RETURN 1;\nEND;\n\n=== Version APL - Eric Schraf ===\n\n      ch02 \u2190 \u2227\/ 1 = \u2218 | 2 -\/ (\u234e\u00a8 \u2355)\n\n      ch02 '5654'\n1\n      ch02 '798'\n0\n      ch02 '12345654565432123'\n1<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"580\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-5-1024x580.png\" alt=\"\" class=\"wp-image-1225\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-5-1024x580.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-5-300x170.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-5-768x435.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-5-500x283.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-5.png 1442w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">CHALLENGE #3<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP48+ - Eric Schraf ===\n\n\u00ab \"123456789\" \u2192 t s          ' t = longueur voulue\n\u00ab s t 1 FOR j                ' for j = t to 1 step -1\nj RAND * CEIL DUP 'K' STO    ' k = randint(1, j+1) \nDUP SUB 'V' STO              ' Echanger s&#091;k] et s&#091;j]\ns K s j j SUB REPL           \nj V REPL\nDUP 's' STO -1 STEP          ' next \nt SUB OBJ\u2192                   ' transformation chaine en nombre\n\u00bb \u00bb<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP PRIME - Eric Schraf ===\n\nch03:= X \u2192 EXPR(cat(randperm(X)))\n\nch03(5) --&gt; 52143\nch03(1) --&gt; 1\n\n=== APL - Eric Schraf ===\n\n      ch03 \u2190 10 \u22a5 ?\u2368\n\n      ch03 5\n23415\n      ch03 1\n1\n      ch03 9\n165493278<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"582\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1-1024x582.png\" alt=\"\" class=\"wp-image-1221\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1-1024x582.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1-300x170.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1-768x436.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1-500x284.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-1.png 1445w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">CHALLENGE #4<\/h3>\n\n\n\n<p>Voici le <a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">code <\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">t<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">r<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">o<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">u<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">v<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">\u00e9<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\"> <\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">s<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">u<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">r<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\"> <\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">r<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">o<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">s<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">e<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">t<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">t<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">a<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">c<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">o<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">d<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">e<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">.<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">o<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">r<\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">g<\/a><a href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\" rel=\"noreferrer noopener\"> <\/a><a rel=\"noreferrer noopener\" href=\"https:\/\/rosettacode.org\/wiki\/Magic_squares_of_odd_order#IS-BASIC\" target=\"_blank\">que j&rsquo;ai traduit<\/a> :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP48+ - Eric Schraf === (code IS-BASIC sur rosetta.org)\n\n\u00ab \u2192 n\n\u00ab 1 n FOR i\n  1 n FOR j\n  2 i * DUP j - n + 1 - n MOD n *\n  SWAP j + 2 - n MOD + 1 +\n  NEXT NEXT\n  N DUP 2 \u2192LIST \u2192ARRY\n\u00bb \u00bb<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-17.png\"><img loading=\"lazy\" decoding=\"async\" width=\"393\" height=\"192\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-17.png\" alt=\"\" class=\"wp-image-1312\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-17.png 393w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-17-300x147.png 300w\" sizes=\"auto, (max-width: 393px) 100vw, 393px\" \/><\/a><figcaption class=\"wp-element-caption\">Carr\u00e9 magique 5&#215;5<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-11.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-11.png\" alt=\"\" class=\"wp-image-1257\" width=\"324\" height=\"432\" \/><\/a><figcaption class=\"wp-element-caption\">Version de <a href=\"https:\/\/twitter.com\/david_cobac\">@david_cobac<\/a><\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-8.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"580\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-8-1024x580.png\" alt=\"\" class=\"wp-image-1228\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-8-1024x580.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-8-300x170.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-8-768x435.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-8-500x283.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-8.png 1440w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">CHALLENGE #5<\/h3>\n\n\n\n<p>Chaque minute, la grande aiguille avance de 6\u00b0 et la petite de 0,5\u00b0 (car 30\u00b0 en 60 minutes)<br>HH.MM correspond \u00e0 60 * HH + MM minutes. La grande aiguille sera \u00e0 l&rsquo;angle 360 * HH + 6 * MM et la petite aiguille en 30 * HH + 0,5 * MM. L&rsquo;angle entre les 2 = 330 * HH + 5,5 * MM<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP48+ - Eric Schraf ===\n\n\u00ab DUP FP 550 *\n  SWAP IP 330 * + 360 MOD \u00bb\n\nou encore :\n\n\u00ab DUP FP 580 *\n  SWAP 30 * - 360 MOD \u00bb\n\n=== HP 35S, 33S... - Werner Huysegoms ===\n\n00 { 26-Byte Prgm }\n01\u25b8LBL \"H.M\u2221\"\n02 ENTER\n03 FP\n04 580\n05 \u00d7\n06 X&lt;&gt;Y\n07 30\n08 \u00d7\n09 -\n10 360\n11 MOD\n12 END\n\n=== Version Python - Eric Schraf ===\n\ndef ch05(hmm):\n  return round((580 * (hmm % 1) - 30 * hmm) % 360, 2)\n\n&gt;&gt; ch05(3.00)\n270.0\n&gt;&gt; ch05(4.34)\n67.0\n&gt;&gt; ch05(2.15)\n22.5\n\n=== Version APL n\u00b01 - Eric Schraf ===\n\n      ch05 \u2190 360 | (580 \u00d7 1 | \u22a2) - 30 \u00d7 \u22a2\n\n      ch05\u00a8 3 4.34 6 2.15\n270 67 180 22.5\n\n=== Version APL n\u00b02 - Eric Schraf ===\n\n      ch05 \u2190 360 | 580 30 -.\u00d7 (1 | \u22a2), \u22a2\n\n      ch05\u00a8 3 4.34 6 2.15\n270 67 180 22.5<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"577\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6-1024x577.png\" alt=\"\" class=\"wp-image-1226\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6-1024x577.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6-300x169.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6-768x433.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6-1536x866.png 1536w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6-500x282.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-6.png 1810w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">CHALLENGE #6<\/h3>\n\n\n\n<p>Pour les calculatrices ayant la fonction <strong>DDAYS<\/strong> (nombre de jours entre 2 dates), il suffisait de compter le <span style=\"text-decoration: underline\">nombre de jours entre la date voulue et un dimanche quelconque<\/span>, par exemple le 2\/2\/3000 (date tr\u00e8s \u00e9loign\u00e9e dans le futur !). Ensuite on regarde le reste de la division de ce nombre de jours par 7.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP48+ - Joseph Horn ===\n\n\u00ab 2.023 SWAP DDAYS 7 MOD \u00bb\n\n=== HP12C ===\n\n01-36\t\tENTER\n02-02\t\t2\n03-00\t\t0\n04-02\t\t2\n05-03\t\t3\t\t'A changer chaque ann\u00e9e\n06-26\t\tEEX\n07-06\t\t6\n08-16\t\tCHS\n09-40\t\t+\n10-02\t\t2\n11-48\t\t.\n12-00\t\t0\n13-02\t\t2\n14-03\t\t3\n15-43.26\tg DYS\n16-07\t\t7\n17-10\t\t\/\n18-43.24\tg FRAC\n19-01\t\t1\n20-30\t\t-\n21-07\t\t7\n22-20\t\t\u00d7\n23-16\t\tCHS\n24-31\t\tR\/S\n25-43.33.01\tg GTO 01<\/code><\/pre>\n\n\n\n<p>Si maintenant votre calculatrice n&rsquo;a pas la fonction <strong>DDAYS<\/strong>, vous pouvez utiliser la formule g\u00e9n\u00e9rale : <strong>jour_sem = jour + code(mois) + an + [an \/ 4] &#8211; 2<\/strong> pour les ann\u00e9es de la forme 20an. <a href=\"https:\/\/youtu.be\/L9ZjvRQjm5A\" target=\"_blank\" rel=\"noreferrer noopener\">Je vous conseille ma vid\u00e9o Youtube<\/a> \u00e0 ce sujet. <\/p>\n\n\n\n<p>Les codes des mois sont \u00ab\u00a0144025036146\u00a0\u00bb<\/p>\n\n\n\n<p><span style=\"text-decoration: underline\">Ann\u00e9e 2023<\/span> (an = 23) : an + [an \/ 4] &#8211; 2 = 23 + [23 \/ 4] &#8211; 2 = 26 = <strong>5<\/strong> modulo 7. <br>On ajoute donc +5 aux codes des mois ce qui donne \u00ab\u00a0622503514624\u00a0\u00bb (toujours modulo 7).<\/p>\n\n\n\n<p><span style=\"text-decoration: underline\">Ann\u00e9e 2024<\/span> (an = 24) : an + [an \/ 4] &#8211; 2 = 24 + [24 \/ 4] &#8211; 2 = 28 = <strong>0<\/strong> modulo 7. <br>Mais attention, 2024 est une ann\u00e9e bissextile, plus pr\u00e9cis\u00e9ment elle l&rsquo;est \u00e0 partir du 1er mars, avant on ne voit pas la diff\u00e9rence avec une ann\u00e9e \u00ab\u00a0normale\u00a0\u00bb. Il faut donc enlever 1 pour janvier et f\u00e9vrier, ce qui donne le code \u00ab\u00a0034025036146\u00a0\u00bb<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP48+ (Pour l'ann\u00e9e 2023) - Eric Schraf ===\n\n\u00ab DUP FP 2 ALOG * SWAP IP DUP\n\"622503514624\" UNROT SUB\nOBJ\u2192 + 7 MOD \u00bb\n\n=== HP48+ (Pour l'ann\u00e9e 2024) - Eric Schraf ===\n\n\u00ab DUP FP 2 ALOG * SWAP IP DUP\n\"034025036146\" UNROT SUB\nOBJ\u2192 + 7 MOD \u00bb\n\n=== HP 33S, 35S... - Eric Schraf ===\n\n00001  ENTER\n00002  FP\n00003  100\n00004  \u00d7\n00005  x&lt;&gt;y\n00006  IP\n00007  +\/-\n00008  10^x\n00009  426415305226   (pour 2023)\n00010  \u00d7\n00011  FP\n00012  10\n00013  \u00d7\n00014  IP\n00015  +\n00016  7\n00017  RMDR\n\n=== APL - Eric Schraf ===\n\n      ch06 \u2190 {7 | (100 \u00d7 1|\u2375) + \u234e '622503514624'&#091;\u230a\u2375]}\n\n      ch06\u00a8 12.31 4.04 10.27\n0 2 5<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"579\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2-1024x579.png\" alt=\"\" class=\"wp-image-1222\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2-1024x579.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2-300x169.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2-768x434.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2-1536x868.png 1536w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2-500x282.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-2.png 1809w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">CHALLENGE #7<\/h3>\n\n\n\n<figure class=\"wp-block-table aligncenter is-style-stripes\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">V<\/td><td class=\"has-text-align-center\" data-align=\"center\">60<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">D<\/td><td class=\"has-text-align-center\" data-align=\"center\">30.4<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">D1<\/td><td class=\"has-text-align-center\" data-align=\"center\">10.4<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">D2<\/td><td class=\"has-text-align-center\" data-align=\"center\">40.5<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Exemple de donn\u00e9es initiales : On veut 60L d&rsquo;un liquide \u00e0 30,4\u00b0C en m\u00e9langeant des liquides \u00e0 10,4\u00b0C et 40,5\u00b0C.<\/figcaption><\/figure>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-12.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-12.png\" alt=\"\" class=\"wp-image-1260\" width=\"423\" height=\"104\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-12.png 427w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-12-300x74.png 300w\" sizes=\"auto, (max-width: 423px) 100vw, 423px\" \/><\/a><figcaption class=\"wp-element-caption\">Formules permettant de d\u00e9terminer les volumes respectifs \u00e0 utiliser.<\/figcaption><\/figure>\n<\/div>\n\n\n<pre class=\"wp-block-code\"><code>=== HP 42S, 41C... - Werner Huysegoms ===\n\n00 { 16-Byte Prgm }\n01\u25b8LBL \"IPOL\"\n02 STO- ST Z\n03 -\n04 \u00f7\n05 \u00d7\n06 STO- ST Y\n07 X&lt;&gt;Y\n08 END\n\n=== HP Prime - Uwe Sauerland ===\n\nEXPORT ch07(p1, p2, p3, m)\nBEGIN\n  LOCAL m1 := (p3 - p2) \/ (p1 - p2);\n  RETURN m * { m1, 1 - m1 };\nEND;\n\n=== HP 33S, 35S - Eric Schraf ===\n\nPas     Code (42 octets)\n00001   FN = F\n00002   SOLVE X\n00003   V-X\n00004   STOP\nF0001   LBL F\nF0002   SF 11\nF0003   V\u00d7(D-B)\u00f7(A-B)=X\nF0004   RTN\n\n=== Autre version pour HP 33S, 35S - Eric Schraf ===\n'On cherche l'\u00e9quation de la droite passant par (0, D1) et (V, D2)\n'puis l'abscisse qui donnera D en ordonn\u00e9e\n'Visuel ci-dessous\n\nPas     Code (36 o)\n00001   CL\u03a3\n00002   R\u2191\n00003   \u03a3+\n00004   LASTx\n00005   R\u2193\n00006   CLx\n00007   \u03a3+\n00008   R\u2193\n00009   R\u2193\n00010   x\u0302\n00011   -\n00012   LASTx<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-13.png\"><img loading=\"lazy\" decoding=\"async\" width=\"682\" height=\"462\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-13.png\" alt=\"\" class=\"wp-image-1265\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-13.png 682w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-13-300x203.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-13-443x300.png 443w\" sizes=\"auto, (max-width: 682px) 100vw, 682px\" \/><\/a><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4-1024x576.png\" alt=\"\" class=\"wp-image-1224\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4-1024x576.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4-300x169.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4-768x432.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4-1536x864.png 1536w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4-500x281.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-4.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Challenge #8<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP 41C + compatible - Werner Huysegoms ===\n\nGTO \"CH8\", then 6 R\/S 18 R\/S etc\n\n00 { 23-Byte Prgm }\n01\u25b8LBL \"CH8\"\n02 0\n03\u25b8LBL 10      @ M-m m\n04 STOP        @ X M-m m\n05 RCL ST Z\n06 -           @ X-m M-m m\n07 X&gt;Y?\n08 X&lt;&gt;Y\n09 X&gt;0?\n10 CLX\n11 STO+ ST Z\n12 -\n13 GTO 10\n14 END\n\n=== HP48g+ - Werner Huysegoms ===\n\nCH8: \u00ab DUP LMAX SWAP LMIN - \u00bb\nLMAX: \u00ab 0 \u00ab OVER MAX \u00bb FLIST \u00bb\nLMIN: \u00ab DUP HEAD \u00ab OVER MIN \u00bb FLIST \u00bb\nFLIST: \u00ab ROT 1 ROT DOSUBS SWAP DROP \u00bb<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-14.png\"><img loading=\"lazy\" decoding=\"async\" width=\"393\" height=\"192\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-14.png\" alt=\"\" class=\"wp-image-1292\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-14.png 393w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-14-300x147.png 300w\" sizes=\"auto, (max-width: 393px) 100vw, 393px\" \/><\/a><\/figure>\n<\/div>\n\n\n<pre class=\"wp-block-code\"><code>=== HP48g+ - Eric Schraf ===\n\nSCA: \u00ab \u2192 v f \u00ab v \u00ab OVER f EVAL \u00bb STREAM v SIZE \u2192LIST \u00bb\nCH8: \u00ab DUP \u00ab MAX \u00bb SCA SWAP \u00ab MIN \u00bb SCA - \u00bb<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>=== APL - Eric Schraf ===\n\n      ch08 \u2190 \u2308\\ - \u230a\\\n\n      ch08 6 18 \u00af2 100 23 \u00af30\n0 12 20 102 102 130<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9-1024x576.png\" alt=\"\" class=\"wp-image-1229\" srcset=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9-1024x576.png 1024w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9-300x169.png 300w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9-768x432.png 768w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9-1536x864.png 1536w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9-500x281.png 500w, https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-9.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Challenge #9<\/h3>\n\n\n\n<p>Le calcul math\u00e9matique du temps d&rsquo;attente du premier arriv\u00e9 au rendez-vous n&rsquo;est pas simple ! Par contre, par simulation, on obtient facilement une estimation du r\u00e9sultat. En effet, il suffit pour chaque exp\u00e9rience de tirer 2 nombres entiers entre 0 et 59 et de regarder leur diff\u00e9rence en valeur absolue (qui est donc le temps d&rsquo;attente du premier arriv\u00e9). On recommence l&rsquo;exp\u00e9rience des centaines ou milliers de fois et on constate qu&rsquo;en moyenne le temps sera de <strong>20 minutes<\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>=== HP 42S - Werner Huysegoms ===\n\n00 { 43-Byte Prgm }\n01\u25b8LBL \"CH09\"\n02 STO \"N\"\n03 STO \"M\"\n04 0\n05\u25b8LBL 10\n06 XEQ 14\n07 XEQ 14\n08 -\n09 ABS\n10 +\n11 DSE \"M\"\n12 GTO 10\n13 RCL\u00f7 \"N\"\n14 RTN\n15\u25b8LBL 14\n16 RAN\n17 60\n18 \u00d7\n19 IP\n20 END\n\n=== HP 48+ - Werner Huysegoms ===\n\n\u00ab \u2192 N \u00ab\n0 1 N START\nR59 R59 - ABS + NEXT\nN \/ \u00bb \u00bb\n\n'R59':\n\u00ab RAND 60 * IP \u00bb\n\n=== HP Prime - Uwe Sauerland ===\n\nEXPORT ch09(samples)\nBEGIN\n LOCAL k, totalWT := 0;\n FOR k FROM 1 TO samples DO\n  LOCAL sample := ABS(deltalist(RANDINT(2, 0, 59)));\n  totalWT := totalWT + sample(1);\n END;\n return totalWT \/ samples;\nEND;\n<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-16.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/files\/2023\/04\/image-16.png\" alt=\"\" class=\"wp-image-1298\" width=\"384\" height=\"291\" \/><\/a><\/figure>\n<\/div>\n\n\n<pre class=\"wp-block-code\"><code>=== Version APL ===\n\n      ch09 \u2190 { \u2375 \u00f7\u2368 +\/ | - \u233f ? 2 \u2375 \u237460 }\n\n      ch09 100\n18.94\n      ch09 10000\n20.0471\n      ch09 100000\n20.04593\n      ch09 1000000\n19.996039<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Voici les challenges que j&rsquo;ai propos\u00e9s sur Twitter et Facebook (HP Calculator Fan Club), \u00e0 programmer sur calculatrices HP. Je mets des solutions en RPL (pour HP 48-49-50 g) et parfois pour d&rsquo;autres machines (HP 12C, HP 35S, HP Prime&#8230;). &hellip; <a href=\"https:\/\/blog.univ-angers.fr\/mathsinfo\/challenges-2023-pour-calculatrices-hp\/\">Continuer la lecture <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":4913,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1219","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/pages\/1219","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/users\/4913"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/comments?post=1219"}],"version-history":[{"count":73,"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/pages\/1219\/revisions"}],"predecessor-version":[{"id":1315,"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/pages\/1219\/revisions\/1315"}],"wp:attachment":[{"href":"https:\/\/blog.univ-angers.fr\/mathsinfo\/wp-json\/wp\/v2\/media?parent=1219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}