index.html 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  6. <title>iVProgH - LInE (free educational software and contents)</title>
  7. <link href="../css/bootstrap.min.css" rel="stylesheet">
  8. <link href="../css/style.css" rel="stylesheet">
  9. </head>
  10. <!--
  11. -------------------------------------------------------------------------------
  12. JavaScript code: starting point
  13. This JavaScript code could be inserted in any LMS to get the iLM content and send it to the server.
  14. In this example it use a single "applet" instance, here from iHanoi.
  15. -->
  16. <script Language="JavaScript">
  17. //<![CDATA[
  18. var strAnswer = '';
  19. var evaluationResult = '';
  20. var comment = '';
  21. function submit_iMA_Answer (index) {
  22. // alert('./ex_pt/index.html: window.frames=' + window.frames);
  23. // alert('./ex_pt/index.html: window.frames.iLM=' + window.frames.iLM);
  24. var name = 'iLM[' + index + ']'; // alert('name='+name);
  25. window.frames[name].getEvaluation();
  26. var strAnswer = window.frames[name].getAnswer();
  27. alert('Copie o código ivph a seguir (para usá-lo com o iVProgH): ' + strAnswer);
  28. //DEBUG
  29. //D var strFrames = "";
  30. //D var arrFrames = parent.document.getElementsByTagName("IFRAME");
  31. //D for (var i=0; i<arrFrames.length; i++) {
  32. //D strFrames += ', ' + arrFrames[i].name; // if (arrFrames[i].contentWindow === window) alert("yay!");
  33. //D } // acho 'window.frames' de nome 'iLM'!!!
  34. //D if (index<10)
  35. //D alert('./ex_pt/index.html: window.frames=' + strFrames);
  36. // alert('window.frames.iLM=' + window.frames.iLM); // undefined
  37. //D var docForm = document.formEnvio;
  38. //D // Prepared to be used with more than 1 "applet'
  39. //D var exercise_answer = new Array(3); // answer: to get the learner answer
  40. //D var exercise_value = new Array(3); // value from the iLM automatic evaluator
  41. //D // var doc = document.formEnvio; // ----------------------------------------------------------
  42. //D // var doc = javascript:window.jsAnalyseAnswer();
  43. //D try {
  44. //D alert('submit_iMA_Answer(): evaluationResult=' + evaluationResult);
  45. //D exercise_answer[0] = doc.getAnswer(); // answer: it must be first (usually the iLM first get the answer to compute the evaluation grade)
  46. //D exercise_value[0] = doc.getEvaluation(); // value from the iLM automatic evaluator
  47. //D } catch (Exception) { alert("Error!"); }
  48. //D docForm.iLM_POST_Archive_0.value = exercise_answer[0]; // Content coming from the iLM
  49. //D docForm.iLM_POST_Value_0.value = exercise_value[0]; // The activity evaluation coming from the iLM
  50. //D // This is used to help the developer to debug his iLM
  51. //D // It presents the file content that will be registered.
  52. //D alert('The file activity value is: ' + exercise_value[0] + '\nThe activity content is:\n' + exercise_answer[0]);
  53. //D //uncomment_this docForm.submit(); // envia de fato o formulario
  54. //D //uncomment_this return true;
  55. }
  56. function getEvaluationCallback (evaluation) {
  57. evaluationResult = evaluation;
  58. strAnswer = window.frames.iLM[index].getAnswer();
  59. alert('getEvaluationCallback(...)' + evaluation + ', strAnswer=' + strAnswer);
  60. comment = document.formEnvio.submission_comment.value;
  61. //leo
  62. if ((strAnswer==null || strAnswer=='' || strAnswer==-1) && (comment==null || comment=='')) { // undefined
  63. alert('Activity sent without content.'); // 'Activity sent without content.'
  64. return false; // error...
  65. }
  66. else {
  67. //leo alert('getEvaluationCallback: enviando evaluationResult=' + evaluation + ', strAnswer=' + strAnswer);
  68. document.formEnvio.iLM_PARAM_ArchiveContent.value = strAnswer;
  69. document.formEnvio.iLM_PARAM_ActivityEvaluation.value = evaluationResult;
  70. document.formEnvio.submit();
  71. return true; // success
  72. }
  73. }
  74. function openSolution (url_file, el_button) {
  75. $(el_button).parent().find('iframe').attr('src', '../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=' + url_file + '&iLM_PARAM_SendAnswer=false&lang=pt');
  76. }
  77. //]]>
  78. </script>
  79. <!--
  80. JavaScript code: final -------------------------------------------------------------------------------
  81. -->
  82. <body>
  83. <nav class="navbar navbar-expand-md navbar-dark fixed-top" style="background-color: #03396c;">
  84. <b><a class="navbar-brand" href="../">iVProgH</a></b>
  85. <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
  86. <span class="navbar-toggler-icon"></span>
  87. </button>
  88. <div class="collapse navbar-collapse" id="navbarsExampleDefault">
  89. <ul class="navbar-nav mr-auto">
  90. <li class="nav-item">
  91. <a class="nav-link" href="../"
  92. title="Navegue para a página inicial do site do iVProgH.">Home</a>
  93. </li>
  94. <li class="nav-item">
  95. <a class="nav-link" href="../sobre_ivprog.html"
  96. title="Conheça resumidamente o que é e para que serve o iVProgH.">Conheça</a>
  97. </li>
  98. <li class="nav-item active">
  99. <a class="nav-link" href="../ex_pt/index.html"
  100. title="Veja alguns exemplos e teste o iVProgH online.">Exemplos</a>
  101. </li>
  102. <li class="nav-item">
  103. <a class="nav-link" href="../download.html"
  104. title="Faça uma cópia do iVProgH para sua máquina.">Download</a>
  105. </li>
  106. <li class="nav-item">
  107. <a class="nav-link" href="../manual_pt/index.html"
  108. title="Acesse um manual online do iVProgH e conheça todos os recursos.">Ajuda</a>
  109. </li>
  110. <li class="nav-item">
  111. <a class="nav-link" href="../bugs/report.html"
  112. title="Envie uma mensagem para a equipe do iVProgH.">Contato</a>
  113. </li>
  114. <li class="nav-item">
  115. <a class="nav-link" href="//www.usp.br/line/"
  116. title="Conheça o Laboratório de Informática na Educação do Instituto de Matemática e Estatística da USP.">LInE</a>
  117. </li>
  118. <li class="nav-item">
  119. <a class="nav-link" href="../docs/"
  120. title="Tenha acesso a toda a documentação do iVProgH.">Desenvolvedores</a>
  121. </li>
  122. <li class="nav-item">
  123. <a class="nav-link" href="../publicacoes.html"
  124. title="Leia as publicações da equipe a respeito do iVProgH.">Publicações</a>
  125. </li>
  126. </ul>
  127. <div class="form-inline my-2 my-lg-0">
  128. <img src="../img/img_flag_brazil.png" />
  129. <img src="../img/img_flag_usa.png" ;>
  130. </div>
  131. </div>
  132. </nav>
  133. <main role="main">
  134. <div class="jumbotron ivprogh-desc">
  135. <div class="container">
  136. <h1>Exemplos</h1>
  137. </div>
  138. </div>
  139. <div class="container example-large-div autoeval-descript">
  140. <div data-toggle="collapse" class="pointer" href="#area-autoeval-descript" aria-expanded="false" aria-controls="area-autoeval-descript"><span class="octicon octicon-info"></span>
  141. Entenda o funcionamento do avaliador automático</div>
  142. <div id="area-autoeval-descript" class="collapse">
  143. <p>O iVProg permite a disponibilização de exercícios com avaliação automática diretamente em páginas Web.
  144. Se o professor dispuser de uma instalação do gerenciador Moodle com o pacote <a href="www.matematica.br/ia">iTarefa</a>, então a atividade realizada pelo aluno será registrada, assim como a nota atribuida à solução do aluno.</p>
  145. <p>A avaliação automática no iVProg é feita a partir de um modelo (gabarito), que deve ter sido preparado pelo professor,
  146. prevendo entradas de dados e suas respectivas saídas. Quando o aluno "clicar" no botão para avaliar sua solução,
  147. o iVProg usa a primeira lista como entradas para o problema do aluno, comparando cada saída gerada com aquelas da
  148. lista de saídas.</p>
  149. <p>Para compreender melhor o processo, vamos usar um exemplo de algoritmo que deve somar separadamente todos os números
  150. positivos e negativos digitados pelo usuário.</p>
  151. <p><span class="octicon octicon-pin"></span><b>Problema:</b></p>
  152. <p>Fazer um algoritmo que solicite que o usuário digite valores inteiros, finalizando sua execução quando for digitado
  153. o valor zero. Ao final, seu programa deve imprimir a soma de todos os inteiros positivos que foram digitados e a seguir, imprimir a soma de todos os inteiros negativos.</p>
  154. <p><span class="octicon octicon-light-bulb"></span> <b> Como posso preparar um gabarito para exercício com avaliação automática no iVProg</b></p>
  155. <p>O professor pode preparar um número qualquer de listas de entradas e de saídas, para o problema acima, usaremos apenas 3 listas,
  156. ilustradas na tabela abaixo. A primeira coluna tem o numero do par "entradas/saidas", a segunda apresenta a lista de entradas
  157. (separadas por espaço em branco), no terceira coluna estão as saídas esperadas (para aquelas entradas) e na última coluna uma
  158. explicação curta sobre o par.
  159. <table class="table about-auto-eval">
  160. <thead class="thead-light">
  161. <tr>
  162. <th scope="col">#</th>
  163. <th scope="col">Entradas</th>
  164. <th scope="col">Saídas</th>
  165. <th scope="col">Comentários</th>
  166. </tr>
  167. </thead>
  168. <tbody>
  169. <tr>
  170. <th scope="row">1</th>
  171. <td>0</td>
  172. <td>0 0</td>
  173. <td>Esse é um teste capcioso, pois se a primeira entrada for zero, nada será somado (daí deve-se imprimir 0 e 0)</td>
  174. </tr>
  175. <tr>
  176. <th scope="row">2</th>
  177. <td>1 -1 1 0</td>
  178. <td> 2 -1 </td>
  179. <td>Apresenta 2 valores positivos e 1 negativo, com somas respectivamente 2 e -1</td>
  180. </tr>
  181. <tr>
  182. <th scope="row">3</th>
  183. <td>-1 -1 3 1 0</td>
  184. <td>4 -2</td>
  185. <td>Apresenta 2 valores positivos e 2 negativo, com somas respectivamente 4 e -2</td>
  186. </tr>
  187. </tbody>
  188. </table>
  189. <p>O iVProg dispõe de uma interface especial para que o professor digite cada lista de entrada e sua respectiva lista de saídas.</p>
  190. <p><span class="octicon octicon-light-bulb"></span> <b> Como o iVProg avalia automaticamente uma solução do aluno?</b></p>
  191. <p>Supondo que o aluno tenha construído um algoritmo, quando ele "clicar" no botão para avaliar
  192. sua solução, o iVProg:</p>
  193. <ol>
  194. <li>Pega a primeira entrada da primeira lista e submete ao primeiro de leitura presente no código do aluno (se não existir, erro), depois a segunda entrada e assim por diante até a última.</li>
  195. <li>A primeira saída (comando de impressão) gerada pelo código do aluno é comparada com a primeira saída esperada, se coincidir
  196. é registrado um acerto, senão um erro.</li>
  197. <li>Repete-se os passos 1 e 2 para cada uma das demais listas de entradas/saídas e ao final é gerada uma média de acertos e erros.
  198. <p>Por exemplo, se o algoritmo do aluno errar em 2 das 6 saídas, sua nota será 1/3.</p></li>
  199. </ol>
  200. </div>
  201. </div>
  202. <div class="container example-large-div autoeval-descript">
  203. <div aria-expanded="false" aria-controls="area-autoeval-descript">
  204. Experimente os exercícios listados abaixo, de exemplo 1 até exemplo 8.
  205. O exemplo 9 ilustra como construir um gabarito para um exercício com avaliação automática no <i>iVProgH</i>.<br/>
  206. Para abrir o exemplo, "clique" sobre seu título. Você pode ocultá-lo novamente "clicando" sobre o mesmo título.
  207. </div>
  208. </div>
  209. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  210. <div class="container example-large-div">
  211. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-1" aria-expanded="false" aria-controls="area-exemplo-1"><span class="octicon octicon-rocket"></span>
  212. Exemplo 1: Entrada e Saída</div>
  213. <div class="example-content collapse" id="area-exemplo-1">
  214. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_1_ler_e_imprimir_inteiro_solucao.ivph', this)">Ver solução</button>
  215. <p class="text-reduced">
  216. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  217. </p>
  218. <p class="text-reduced">
  219. <b>Faça um programa que solicite do usuário um valor inteiro, depois imprima o valor por ele digitado.</b>
  220. </p>
  221. <div class="container text-center">
  222. <form name='formEnvio' id='formEnvio' method='post' action='#' \
  223. enctype='multipart/form-data'>
  224. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  225. <iframe name="iLM[1]" id="iLM[1]" class="embed-responsive-item"
  226. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_1_ler_e_imprimir_inteiro.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  227. allowfullscreen></iframe><br/>
  228. </div>
  229. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  230. title='Clique aqui para visualizar seu código.'
  231. onclick='javascript:window.submit_iMA_Answer(1);' /><!-- chama funcao iMA-->
  232. </form>
  233. </div>
  234. </div>
  235. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  236. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  237. <div class="container example-large-div">
  238. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-2" aria-expanded="false" aria-controls="area-exemplo-2"><span class="octicon octicon-rocket"></span>
  239. Exemplo 2: Imprimir o quadrado de um número (inteiro)</div>
  240. <div class="example-content collapse" id="area-exemplo-2">
  241. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_2_imprimir_quadrado_solucao.ivph', this)">Ver solução</button>
  242. <p class="text-reduced">
  243. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  244. </p>
  245. <p class="text-reduced">
  246. <b>Construa um algoritmo que solicite que o usuário digite um número (inteiro) e imprime o quadrado desse valor.</b>
  247. </p>
  248. <div class="container text-center">
  249. <form name='formEnvio' id='formEnvio' method='post' action='#' \
  250. enctype='multipart/form-data'>
  251. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  252. <iframe name="iLM[2]" id="iLM[2]" class="embed-responsive-item"
  253. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_2_imprimir_quadrado.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  254. allowfullscreen></iframe><br/>
  255. </div>
  256. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  257. title='Clique aqui para visualizar seu código.'
  258. onclick='javascript:window.submit_iMA_Answer(2);' /><!-- chama funcao iMA-->
  259. </form>
  260. </div>
  261. </div>
  262. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  263. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  264. <div class="container example-large-div">
  265. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-3" aria-expanded="false" aria-controls="area-exemplo-3"><span class="octicon octicon-rocket"></span>
  266. Exemplo 3: Soma de dois valores</div>
  267. <div class="example-content collapse" id="area-exemplo-3">
  268. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_3_soma_dois_valores_solucao.ivph', this)">Ver solução</button>
  269. <p class="text-reduced">
  270. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  271. </p>
  272. <p class="text-reduced">
  273. <b>Construa um algoritmo que recebe dois números inteiros e imprime a soma desses valores.</b>
  274. </p>
  275. <div class="container text-center">
  276. <form name='formEnvio' id='formEnvio' method='post' action='#' \
  277. enctype='multipart/form-data'>
  278. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  279. <iframe name="iLM[3]" id="iLM[3]" class="embed-responsive-item"
  280. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_3_soma_dois_valores.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  281. allowfullscreen></iframe><br/>
  282. </div>
  283. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  284. title='Clique aqui para visualizar seu código.'
  285. onclick='javascript:window.submit_iMA_Answer(3);' /><!-- chama funcao iMA-->
  286. </form>
  287. </div>
  288. </div>
  289. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  290. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  291. <div class="container example-large-div">
  292. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-4" aria-expanded="false" aria-controls="area-exemplo-4"><span class="octicon octicon-rocket"></span>
  293. Exemplo 4: Média aritmética</div>
  294. <div class="example-content collapse" id="area-exemplo-4">
  295. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_4_media_aritmetica_solucao.ivph', this)">Ver solução</button>
  296. <p class="text-reduced">
  297. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  298. </p>
  299. <p class="text-reduced">
  300. <b>Construa um algoritmo que recebe dois números inteiros da entrada, calcula a média aritmética desses números e a imprima.</b>
  301. </p>
  302. <div class="container text-center">
  303. <form name='formEnvio' id='formEnvio' method='post' action='#' \
  304. enctype='multipart/form-data'>
  305. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  306. <iframe name="iLM[4]" id="iLM[4]" class="embed-responsive-item"
  307. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_4_media_aritmetica.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  308. allowfullscreen></iframe><br/>
  309. </div>
  310. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  311. title='Clique aqui para visualizar seu código.'
  312. onclick='javascript:window.submit_iMA_Answer(4);' /><!-- chama funcao iMA-->
  313. </form>
  314. </div>
  315. </div>
  316. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  317. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  318. <div class="container example-large-div">
  319. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-5" aria-expanded="false" aria-controls="area-exemplo-5"><span class="octicon octicon-rocket"></span>
  320. Exemplo 5: Maior valor</div>
  321. <div class="example-content collapse" id="area-exemplo-5">
  322. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_5_maior_valor_solucao.ivph', this)">Ver solução</button>
  323. <p class="text-reduced">
  324. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  325. </p>
  326. <p class="text-reduced">
  327. <b>Construa um algoritmo que recebe dois números inteiros da entrada e imprime o maior dentre os dois números.</b>
  328. </p>
  329. <div class="container text-center">
  330. <form name='formEnvio' id='formEnvio' method='post' action='#' \
  331. enctype='multipart/form-data'>
  332. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  333. <iframe name="iLM[5]" id="iLM[5]" class="embed-responsive-item"
  334. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_5_maior_valor.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  335. allowfullscreen></iframe><br/>
  336. </div>
  337. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  338. title='Clique aqui para visualizar seu código.'
  339. onclick='javascript:window.submit_iMA_Answer(5);' /><!-- chama funcao iMA-->
  340. </form>
  341. </div>
  342. </div>
  343. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  344. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  345. <div class="container example-large-div">
  346. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-6" aria-expanded="false" aria-controls="area-exemplo-6"><span class="octicon octicon-rocket"></span>
  347. Exemplo 6: Sequência</div>
  348. <div class="example-content collapse" id="area-exemplo-6">
  349. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_6_imprimir_de_1_a_10_solucao.ivph', this)">Ver solução</button>
  350. <p class="text-reduced">
  351. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  352. </p>
  353. <p class="text-reduced">
  354. <b>Construa um algoritmo que imprima a sequência de números inteiros de 1 a 10.</b>
  355. </p>
  356. <div class="container text-center">
  357. <form name='formEnvio' id='formEnvio' method='post' action='#' \
  358. enctype='multipart/form-data'>
  359. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  360. <iframe name="iLM[6]" id="iLM[6]" class="embed-responsive-item"
  361. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_6_imprimir_de_1_a_10.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  362. allowfullscreen></iframe><br/>
  363. </div>
  364. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  365. title='Clique aqui para visualizar seu código.'
  366. onclick='javascript:window.submit_iMA_Answer(6);' /><!-- chama funcao iMA-->
  367. </form>
  368. </div>
  369. </div>
  370. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  371. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  372. <div class="container example-large-div">
  373. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-7" aria-expanded="false" aria-controls="area-exemplo-7"><span class="octicon octicon-rocket"></span>
  374. Exemplo 7: Imprimir texto</div>
  375. <div class="example-content collapse" id="area-exemplo-7">
  376. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_7_imprimir_ivprogh_10_vezes_solucao.ivph', this)">Ver solução</button>
  377. <p class="text-reduced">
  378. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  379. </p>
  380. <p class="text-reduced">
  381. <b>Construa um algoritmo que imprima a palavra iVProgH 10 vezes.</b>
  382. </p>
  383. <div class="container text-center">
  384. <form name='formEnvio' id='formEnvio' method='post' action='#' \
  385. enctype='multipart/form-data'>
  386. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  387. <iframe name="iLM[7]" id="iLM[7]" class="embed-responsive-item"
  388. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_7_imprimir_ivprogh_10_vezes.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  389. allowfullscreen></iframe><br/>
  390. </div>
  391. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  392. title='Clique aqui para visualizar seu código.'
  393. onclick='javascript:window.submit_iMA_Answer(7);' /><!-- chama funcao iMA-->
  394. </form>
  395. </div>
  396. </div>
  397. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  398. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  399. <div class="container example-large-div">
  400. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-8" aria-expanded="false" aria-controls="area-exemplo-8"><span class="octicon octicon-rocket"></span>
  401. Exemplo 8: Somar n valores</div>
  402. <div class="example-content collapse" id="area-exemplo-8">
  403. <button type="button" class="btn btn-primary show-solution" onclick="openSolution('../ex_pt/exerc/exemplo_8_somar_valores_ate_digitar_0_solucao.ivph', this)">Ver solução</button>
  404. <p class="text-reduced">
  405. Exemplo de exercício com <i>avaliação automática</i> no <i>iVProg</i>.
  406. </p>
  407. <p class="text-reduced">
  408. <b>Fazer um algoritmo que lê uma sequência de números inteiros, somando-os até que um valor 0 seja digitado, nesse momento deve imprimir o valor da soma e parar.</b>
  409. </p>
  410. <div class="container text-center">
  411. <form name='formEnvio' id='formEnvio' method='post' action='#'\ \
  412. enctype='multipart/form-data'>
  413. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  414. <iframe name="iLM[8]" id="iLM[8]" class="embed-responsive-item"
  415. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_Assignment=../ex_pt/exerc/exemplo_8_somar_valores_ate_digitar_0.ivph&iLM_PARAM_SendAnswer=false&lang=pt"
  416. allowfullscreen></iframe><br/>
  417. </div>
  418. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  419. title='Clique aqui para visualizar seu código.'
  420. onclick='javascript:window.submit_iMA_Answer(8);' /><!-- chama funcao iMA-->
  421. </form>
  422. </div>
  423. </div>
  424. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  425. <!-- Para cada exemplo, copiar toda a DIV abaixo e não alterar as classes dos elementos :) -->
  426. <div class="container example-large-div">
  427. <div class="text-count-example" data-toggle="collapse" href="#area-exemplo-9" aria-expanded="false" aria-controls="area-exemplo-9"><span class="octicon octicon-rocket"></span> Gabarito: Construindo uma atividade</div>
  428. <div class="example-content collapse" id="area-exemplo-9">
  429. <p class="text-reduced">
  430. <b>Nesse exemplo, construa uma atividade, inserindo os casos de teste que serão utilizados para avaliar o algoritmo e configure os recursos que serão disponibilizados para o aluno no iVProgH.</b>
  431. </p>
  432. <div class="container text-center">
  433. <form name='formEnvio' id='formEnvio' method='post' action='#'\ \
  434. enctype='multipart/form-data'>
  435. <div class="embed-responsive embed-responsive-16by9"> <!-- 4by3 -->
  436. <iframe name="iLM[9]" id="iLM[9]" class="embed-responsive-item"
  437. src="../ivprogh/index.html?iLM_PARAM_AssignmentURL=true&iLM_PARAM_SendAnswer=true&lang=pt"
  438. allowfullscreen></iframe><br/>
  439. </div>
  440. <input type='button' name='Submit' value='Enviar resposta' class="btn btn-warning"
  441. title='Clique aqui para visualizar seu código.'
  442. onclick='javascript:window.submit_iMA_Answer(9);' /><!-- chama funcao iMA-->
  443. </form>
  444. </div>
  445. </div>
  446. </div> <!-- Este é o final da DIV que deve ser copiada para cada exemplo -->
  447. </main>
  448. <footer class="container text-center">
  449. <a href="http://www.ime.usp.br/line">iVProgH</a> |
  450. <a href="http://www.ime.usp.br/line">LInE</a> |
  451. <a href="http://www.matematica.br">iM&aacute;tica</a>
  452. </footer>
  453. <script src="../js/jquery.min.js"></script>
  454. <script src="../js/bootstrap.bundle.min.js"></script>
  455. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/octicons/3.5.0/octicons.min.css">
  456. <script type="text/javascript">
  457. $('.example-content').on('shown.bs.collapse', function () {
  458. this.parentNode.scrollIntoView();
  459. });
  460. </script>
  461. </body>
  462. </html>