Commit 9e5ab29b authored by r.grosso's avatar r.grosso
Browse files

Add exercise with case insensitive sorting

parent 3071c57c
......@@ -7,7 +7,8 @@
"editable": true
},
"source": [
"### Aufgabe 1 b)"
"### Aufgabe 1 b)\n",
"In Python 2 benutze raw_input für Strings und input für Integers, in Python 3 input und eval(input)"
]
},
{
......@@ -41,7 +42,7 @@
}
],
"source": [
"name = input(\"Please enter your name:\")\n",
"name = raw_input(\"Schreibe deinen Namen, bitte:\")\n",
"\n",
"age = int(input(\"Hallo \", name, \". In welchem Jahr bist du geboren? \"))\n",
"\n",
......@@ -110,7 +111,7 @@
}
],
"source": [
"sentence = input(\"Please write your sentence:\")\n",
"sentence = raw_input(\"Please write your sentence:\")\n",
"revsentence = ' '.join(sentence.split()[::-1])\n",
"print(revsentence)"
]
......@@ -122,7 +123,7 @@
"editable": true
},
"source": [
"### Aufgabe 2 c)"
"### Aufgabe 2 c), d)"
]
},
{
......@@ -138,14 +139,14 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Please write your sentence:\"aa ab ba df fa el la id un nu\"\n",
"un nu la id fa el df ba ab aa\n"
"Please write your sentence:\"Un asdf lsf Lsf Asdia um\"\n",
"Un um Lsf lsf Asdia asdf\n"
]
}
],
"source": [
"sentence = input(\"Please write your sentence:\")\n",
"alpha_ordered = sorted(sentence.split())\n",
"sentence = raw_input(\"Please write your sentence:\")\n",
"alpha_ordered = sorted(sentence.split(), key = lambda v: v.lower())\n",
"rev_alpha_ordered = ' '.join(alpha_ordered[::-1])\n",
"print(rev_alpha_ordered)"
]
......@@ -157,12 +158,12 @@
"editable": true
},
"source": [
"### Aufgabe 2 d)"
"### Aufgabe 2 e)"
]
},
{
"cell_type": "code",
"execution_count": 1,
"execution_count": 25,
"metadata": {
"collapsed": false,
"deletable": true,
......@@ -173,8 +174,8 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Choose a name:\"Nobel\"\n",
"10\n"
"Choose a scientist name:Darwin\n",
"2\n"
]
}
],
......@@ -182,8 +183,14 @@
"birthMonths = {\"Einstein\":3, \"Hawking\":1, \"Newton\":1, \"Franklin\":1, \"Darwin\":2, \"Curie\":11, \"Pasteur\":12,\n",
" \"Copernicus\":1, \"Fleming\":8, \"Nobel\":10, \"Mendelev\":2, \"Bohr\":10, \"Mendel\":7, \"Faraday\":9,\n",
" \"Watson\":4, \"Hubble\":11, \"Feynman\":5, \"Rutherford\":8}\n",
"month = input(\"Choose a name:\")\n",
"print(birthMonths[month])"
"name = raw_input(\"Choose a scientist name:\")\n",
"if isinstance(name, str):\n",
" try:\n",
" print(birthMonths[name])\n",
" except KeyError:\n",
" print(\"Invalid name\")\n",
"else:\n",
" print(\"Enter the chosen name in quotes\")"
]
},
{
......
......@@ -40,6 +40,7 @@
\item Schreibe ein Programm, welches die Worte eines Satz, der im Terminal eingegeben wird, in umgekehrter Reihenfolge wieder ausgibt. \Hinweis{Benutze \texttt{[::-1]} als besondere ``\textit{extended slice syntax}''}
\\ \Hinweis{``\textit{Das ist ein Haus.}'' wird zu ``\textit{Haus ein ist Das.}''}.
\item Schreibe ein Programm, welches alle Worte eines Satzes, der im Terminal eingegeben wird, in umgekehrter alphabetischer Ordnung ausgibt.
\item Wie in der vorherigen Übung, aber Groß- und Kleinschreibung werden nicht unterschieden. \Hinweis{\texttt{sort} oder \texttt{sorted} können als ``\texttt{key=}'' Argument eine Lambda-Funktion gegeben werden \ldots}
\item Schreibe ein Programm, welches ein Schlüsselwert-Verzeichnis (\textit{dictionary}) mit z.B. zehn Name => Geburtsmonate Schlüssel-Wert-Paaren enthält. Das Programm
gibt die Geburtsmonate für den vom User über das Terminal gewählten Namen aus.
\end{enumerate}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment