Liebe Freundinnen und Freunde von seitlicher Arabesken,
im Jahr einer Papstwahl kann man auch einmal die Papstzahl einer Person
berechnen.
Die Papstzahl einer Person ist die Anzahl der Päpste der einen heiligen
katholischen apostolischen Kirche, die Zeitgenossen der betreffenden
Person sind oder waren. Eine leicht zu redigierende Liste findet man auf
https://www.herder.de/religion-spiritualitaet/kirche/papsttum/papstliste/
und füllt sie in ein Tabular[] ab (vgl. Notebook) und nennt es pontiFex.
Dann ergibt sich alsFunktion naheliegend
Clear[papalNumber]
papalNumber::unruly := "Pontifex list has unruly sequence numbers.";
papalNumber::unknownPerson := "The person `2`, `1` is seemingly unknown
here.";
papalNumber::unbornPerson := "The person `2`, `1` has an unknown birth
date.";
papalNumber::contemporary := "The person `2`, `1` is a contemporary
person.";
papalNumber::noPope := "No pope in the year `1` known.";
papalNumber::futurism := "The year `1` is in the future.";
papalNumber::livespan := "The person `2`, `1` has a live span {`3`, `4`}";
papalNumber[surname_String, pFex_Tabular] := papalNumber["", surname,
pFex];
papalNumber[forename_String, surname_String, pFex_Tabular] :=
Block[{pe, y0 (* birth year *), y1 (* death year *),
thisYear = DateObject[Now, "Year"][[1, 1]]},
If[Normal[pontiFex[[All, 1]]] != Range[1, pontiFex[[-1, 1]]],
Message[papalNumber::unruly];
Return[$Failed]
];
pe = Entity["Person", forename <> surname][{"BirthDate", "DeathDate"}];
If[Position[pe, "UnknownEntity"] =!= {},
Message[papalNumber::unknownPerson, forename, surname];
Return[$Failed]
];
If[Position[pe[[1]], "Missing"] =!= {},
Messeage[papalNumber::unbornPerson, forename, surname];
Return[$Failed],(* else *)
y0 = DateObject[pe[[1]], "Year"][[1, 1]]
];
If[Position[pe[[2]], "Alive"] =!= {},
Message[papalNumber::contemporary, forename, surname];
y1 = thisYear, (* else *)
y1 = DateObject[pe[[2]], "Year"][[1, 1]]
];
If[y0 < pFex[[1, 3]],
Message[papalNumber::noPope, y0];
Return[$Failed]
];
If[y1 > thisYear,
Message[papalNumber::futurism, y1];
Return[$Failed]
];
Message[papalNumber::livespan, forename, surname, y0, y1];
Length[Range @@ (Part[Select[pFex, ((#p1 <= y0 \[And] #p2 >= y0)
\[Or] (#p1 <= y1 \[And] #p2 >= y1)) &], #, 1] & /@ Range[2])]
] /; TabularQ[pFex]
Einige Personen sind nicht bekannt
In[14]:= papalNumber["Joseph", "Ratzinger", pontiFex]
During evaluation of In[14]:= papalNumber::unknownPerson: The person
Ratzinger, Joseph is seemingly unknown here.
Out[14]= $Failed
In[15]:= papalNumber["Jesus", "Christus", pontiFex]
During evaluation of In[15]:= papalNumber::unknownPerson: The person
Christus, Jesus is seemingly unknown here.
Out[15]= $Failed
andere schon, waren aber zu früh am Werk, um eine Papstzahl zu haben
In[19]:= papalNumber["Nero", pontiFex]
During evaluation of In[19]:= papalNumber::noPope: No pope in the year
37 known.
Out[19]= $Failed
Dante lebte in irregulären Zeiten
In[20]:= papalNumber["Dante", pontiFex]
During evaluation of In[20]:= papalNumber::livespan: The person Dante,
has a live span {1265, 1321}
Out[20]= 14
In[21]:= papalNumber["Stephen", "Wolfram", pontiFex]
During evaluation of In[21]:= papalNumber::contemporary: The person
Wolfram, Stephen is a contemporary person.
During evaluation of In[21]:= papalNumber::livespan: The person Wolfram,
Stephen has a live span {1959, 2025}
Out[21]= 6
In[22]:= papalNumber["Werner", "Heisenberg", pontiFex]
During evaluation of In[22]:= papalNumber::livespan: The person
Heisenberg, Werner has a live span {1901, 1976}
Out[22]= 7
In[23]:= papalNumber["Paul", "Klee", pontiFex]
During evaluation of In[23]:= papalNumber::livespan: The person Klee,
Paul has a live span {1879, 1940}
Out[23]= 5
In[24]:= papalNumber["CarlFriedrich", "Gauss", pontiFex]
During evaluation of In[24]:= papalNumber::livespan: The person Gauss,
CarlFriedrich has a live span {1777, 1855}
Out[24]= 6
In[25]:= papalNumber["Steve", "Jobs", pontiFex]
During evaluation of In[25]:= papalNumber::livespan: The person Jobs,
Steve has a live span {1955, 2011}
Out[25]= 6
Wenn die eigene Papstzahl grösser als 5 wird , sollte man die
Gelegenheit nutzen, das Leben zu genissen.
Mit vorweihnachtlichen Grüssen
Udo.
_______________________________________________
DMUG Deutschsprachiges Mathematica-Forum demug@XXXXXXX.ch
http://www.mathematica.ch/mailman/listinfo/demug
Archiv: http://www.mathematica.ch/archiv.html