DMUG-Archiv 2006

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Re: Re[3]: Aufgabe::autobiographische Zahl

Schönen 1. Advent miteinander,

> auch wenn ich vom Ende her inkrementell zähle, geht's:

Es geht auch, wenn bei jedem Durchlauf die Anzahlenfeststellungsreihenfolge zufällig geändert wird:

In[1]:= Remove[sorter]
sorter := Block[{o = Random[Integer, {0, 9}]},
 l = {o};
 While[Length[l] < 10,
   o = Random[Integer, {0, 9}];
   If[Count[l, o] == 0, l = Append[l, o]]
 ];
 l
];

In[6] := abiZ := Block[{l1 = Table[-1, {10}], l2 = sorter, i = 0, log = {}},
 log = {{0, "-", FromDigits[l2]}};
 While[l1 != l2,
   i++;
   l1 = l2;
   l3 = sorter;
   l2 = Fold[ReplacePart[#1, Count[#1, #2], #2 + 1]&, l2, l3];
   AppendTo[log, {i,
      (* FromDigits[] duldet führende Nullen nicht *)
     PaddedForm[FromDigits[l3], 10,
         NumberPadding -> {"0", "0"}, NumberSigns -> {"", ""}],
     PaddedForm[FromDigits[l2], 10,
       NumberPadding -> {"0", "0"}, NumberSigns -> {"", ""}]}]
 ];
TableForm[Most[log], TableHeadings -> {None, {"Schritt", "Sortierer", "Zahl"}}]
];

Die meisten Ausgaben von abiZ haben eine einstellige Schrittzahl, aber es gibt auch dieses:

Schritt   Sortierer           Zahl
0           -                      7016439285
1           8240569713   1610111010
2           8752964013   7100001000
3           2947831605   7300000100
4           0859632714   7201000100
5           0574196238   6100001000
6           3806574192   7210000100
7           7043981562   6210001100
8           0234768951   5210010000
9           2463718950   6210010000
10         4589107623   7100000100
11         3670289541   7200000100
12         7196830425   7100000100
13         6974821530   7200000100
14         1396078425   7100000100
15         8342190675   7200000100
16         7160398425   7100000100
17         7651340829   7210000100
18         9546203817   6210000000
19         1459682307   7100001100
20         5167394802   6301000100
21         9605182374   5400111000
22         4273198560   6300110000
23         8195746023   7210001000
24         4385219607   7210000100
25         7824560913   6210000100
26         9461025837   5301011000
27         7269315804   6201010000
28         2351708694   7110000000
29         0675218493   7200000100
30         4598167320   7100000100
31         0873694125   7210000100
32         1862405739   6210000000
33         3261489705   6210001000

Gruss
Udo.




Verweise:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html