Entwickeln Sie ein Online-Quiz
Dank der neuen eingebauten Funktionalität ist das Entwickeln und Bereitstellen von Formularen ein Kinderspiel. Die Bereitstellung solcher Formulare in der Cloud bietet reibungslose persistente Speicherung von Code und Daten, Cloud Computation und externe Bereitstellung durch aktive Dokumente, APIs, Apps usw. Diese Features werden in diesem Beispiel durch die Entwicklung und Bereitstellung von zwei Quiz-Spielen dargestellt. Es geht darum, dass User Großstädte und populäre Filme erkennen.
Entwickeln Sie in der Cloud ein Quiz über US-amerikanische Großstädte.
CloudDeploy[
FormFunction[{"city",
"How many of the 10 most populous US cities can you name?"} ->
RepeatingElement[
Restricted[
"City", {"Country" -> Entity["Country", "UnitedStates"],
"Population" -> TakeLargest[10]}], {1, {1, 10}}],
GeoListPlot[{#city,
Complement[
EntityList@
Entity["City", {"Country" -> Entity["Country", "UnitedStates"],
"Population" -> TakeLargest[10]}], #city]},
GeoLabels -> True, PlotLegends -> {"OK", "Missed"}] &, "PNG"]]
Gehen Sie auf das Formular, um damit zu interagieren.
Wenn eine der Städte, die Sie in die Felder eintragen, nicht unter den 10 Größten der USA ist, zeigt das Formular eine Fehlermeldung an.
Erstellen Sie in der Cloud ein Film-Quiz.
CloudDeploy[
FormFunction[{"movies",
"How many of the 10 top grossing movies by Steven Spielberg can \
you name?"} ->
RepeatingElement[
Restricted[
"Movie", {"Director" ->
Entity["Person", "StevenSpielberg::76z25"],
"DomesticBoxOfficeGross" -> TakeLargest[10]}], {1, {1, 10}}],
With[{images =
EntityValue[
EntityClass[
"Movie", {"Director" ->
Entity["Person", "StevenSpielberg::76z25"],
"DomesticBoxOfficeGross" -> TakeLargest[10]}], "Image",
"EntityAssociation"]},
Grid[{
{"you guessed", Length[#movies],
ImageCollage[Values[KeyTake[images, #movies]]]}, {"you missed",
10 - Length[#movies],
ImageCollage[Values[KeyDrop[images, #movies]]]}
}, Frame -> All, Alignment -> Left]] &]]
Gehen Sie auf die Seite, um das Quiz auszuprobieren.