Criação de um quiz on-line
É fácil criar e implantar formulários usando o novo recurso incorporado. Tais formulários podem ser implantados na nuvem, com armazenamento contínuo de código e dados, computação na nuvem, e implementação externa instantânea através de documentos ativos, APIs, aplicativos, etc. Esses recursos estão ilustrados aqui através da criação e implementação de dois "quizzes" que pedem para o usuário identificar grandes cidades e certos filmes populares, respectivamente.
Crie um quiz de cidades grandes dos Estados Unidos na nuvem.
In[1]:=
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"]]
Visite o formulário para interagir com ele.
Se um dos campos não estiver entre as 10 maiores cidades os EUA, o formulário irá exibir uma mensagem de falha.
Crie um quiz na nuvem sobre filmes.
In[2]:=
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]] &]]
Visie página para testar o quiz.