<?xml version="1.0" encoding="UTF-8"?>
<linguagem>
    <topico>
		<nome>Dojo #34: Expressão Aritmética</nome>
		<titulo>Expressão Aritmética</titulo>
 		<descritor>apoie, apoie.org, Tabela de Decisões, programa, simplificar, método, LDC, Autômato Finito, componente, Solução, Analisar Sintaxe, Aplicar Regras, sintaxe, BNF, Diagrama Sintático, Diagrama de Sintaxe, Expressão Regular, Dojo, Dojo Rio, Coding Dojo, Kata</descritor>
		<lead>Exemplo de uso de Autômato Finito para o Kata Expressão Aritmética realizado em 23 de setembro de 2009 na Reunião #34 do &lt;a href=&quot;http://dojorio.wordpress.com/&quot; target=&quot;_blank&quot;&gt;Dojo Rio&lt;/a&gt;</lead>
		<origem>DojoExpressaoAritmetica.xml</origem>
    </topico>
	<topico> 
       	<titulo>Problema</titulo>
		<desc>&lt;h3&gt;Calcular Expressão Aritmética&lt;/h3&gt;
&lt;p&gt;Calcular fazendo operações de soma, subtração, multiplicação e divisão de números inteiros, incluindo negativos e podendo usar parênteses. Para calcular o valor da expressão o parênteses tem maior prioridade que qualquer operação.&lt;/p&gt;&lt;br&gt;
As operações obedecem as seguintes prioridades:
&lt;ol&gt;
  &lt;li&gt;- (negativo)&lt;/li&gt;
  &lt;li&gt;* (multiplicação) / (divisão)&lt;/li&gt;
  &lt;li&gt;+ (soma) - (subtração)&lt;/li&gt;
&lt;/ol&gt;</desc>
    </topico>
	<topico> 
       	<titulo>Solução</titulo>
		<desc>
		&lt;span style=&quot;color: rgb(204, 102, 0); font-weight: bold;&quot;&gt;Calcular
		Expressão&lt;/span&gt; (ExpressaoAritmetica) =&amp;gt; valor &lt;br&gt;
		&lt;div style=&quot;margin-left: 40px;&quot;&gt;
		&lt;ol&gt;
		  &lt;li&gt;[] =&amp;gt; Lista de Tokens&lt;/li&gt;
		  &lt;li&gt;&lt;span
		 style=&quot;font-weight: bold; color: rgb(102, 102, 204);&quot;&gt;Analisar
		Sintaxe&lt;/span&gt;&amp;nbsp;(ExpressaoAritmetica, Autômato de Expressão Aritmética, EstadoInicial, EstadosFinais, TipoToken):&amp;nbsp;&lt;span
		 style=&quot;color: red; font-weight: bold;&quot;&gt;Aplicar Regras &lt;/span&gt;(Lista
		de Tokens, Lista de Regras) =&gt; valor&lt;br&gt;
		  &lt;/li&gt;
		&lt;/ol&gt;
		&lt;/div&gt;
		</desc>
    </topico>
	<topico> 
       	<titulo>&lt;span style=&quot;font-weight: bold; color: rgb(102, 102, 204);&quot;&gt;Analisar
		Sintaxe&lt;/span&gt;</titulo>
		<desc>
			&lt;p&gt;Analisar Sintaxe (ExpressaoAritmetica, Autômato de Expressão Aritmética, EstadoInicial, EstadosFinais, TipoToken) =&amp;gt; Lista de Tokens&lt;/p&gt;
			&lt;div style=&quot;margin-left: 40px;&quot;&gt;
				  &lt;ol&gt;
					&lt;li&gt;EstadoInicial =&gt; estado&lt;/li&gt;
					&lt;li&gt;existe entrada e não deu erro: repete&lt;/li&gt;
					&lt;ol&gt;
					  &lt;li&gt;PegarTipoToken
			(ExpressaoAritmetica, TipoToken, Lista de Tokens)
			=&amp;gt; entrada, Lista de Tokens, ExpressaoAritmetica&amp;nbsp;&lt;/li&gt;
					  &lt;li&gt;Autômato de Expressão Aritmética (entrada, estado) =&gt; estado&lt;/li&gt;
					&lt;/ol&gt;
					&lt;li&gt;return estado pertence a EstadosFinais&lt;/li&gt;
				  &lt;/ol&gt;
				&lt;/div&gt;
		</desc>
    </topico>
	<topico> 
       	<titulo>&lt;span style=&quot;color: red; font-weight: bold;&quot;&gt;Aplicar Regras &lt;/span&gt;</titulo>
		<desc>Aplicar Regras (Lista de Tokens, Lista de Regras) =&amp;gt; valor
&lt;div style=&quot;margin-left: 40px;&quot;&gt;
&lt;ol&gt;
  &lt;li&gt;0 => regra&lt;/li&gt;
  &lt;li&gt;repetir enquanto regra &amp;lt; número de regras na Lista
de Regras&lt;/li&gt;
  &lt;ol&gt;
    &lt;li&gt;Aplicar Lista de Regras (regra) desde
o início da Lista de Tokens&lt;/li&gt;
    &lt;li&gt;conseguiu aplicar regra? 0 => regra: regra + 1 => regra&lt;/li&gt;
  &lt;/ol&gt;
  &lt;li&gt;return valor&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</desc>
    </topico>
	<topico> 
       	<titulo>Dados para &lt;span style=&quot;font-weight: bold; color: rgb(102, 102, 204);&quot;&gt;Analisar
		Sintaxe&lt;/span&gt;</titulo>
		<desc>
			&lt;table style=&quot;text-align: left;&quot; border=&quot;0&quot;
			 cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
			  &lt;tbody&gt;
				&lt;tr&gt;
				  &lt;td&gt;&lt;img style=&quot;width: 265px; height: 204px;&quot;
			 alt=&quot;DojoExpressaoAritmeticaAF.png&quot;
			 title=&quot;DojoExpressaoAritmeticaAF.png&quot;
			 src=&quot;DojoExpressaoAritmeticaAF.png&quot;&gt;&lt;/td&gt;
				  &lt;td style=&quot;vertical-align: top;&quot;&gt;0 =&gt; &lt;span style=&quot;font-weight: bold;&quot;&gt; EstadoInicial&lt;/span&gt;&lt;span
			 style=&quot;font-family: monospace;&quot;&gt;&lt;span
			 style=&quot;font-weight: bold; color: rgb(255, 102, 102);&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br&gt;
				   [1] =&gt; &lt;span style=&quot;font-weight: bold;&quot;&gt;EstadosFinais&lt;/span&gt;&lt;br&gt;
				  &lt;br&gt;
				  &lt;span style=&quot;font-weight: bold;&quot;&gt;Autômato de
			Expressão Aritmética&lt;/span&gt; (entrada, estado) =&amp;gt; estado&lt;br&gt;
				  &lt;table style=&quot;text-align: left;&quot; border=&quot;0&quot;
			 cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
					&lt;tbody&gt;
					  &lt;tr&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;0,&amp;nbsp;0&amp;nbsp;:&lt;/td&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;0&lt;/td&gt;
					  &lt;/tr&gt;
					  &lt;tr&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;0, 1 :&lt;/td&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;1&lt;/td&gt;
					  &lt;/tr&gt;
					  &lt;tr&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;0, 2 :&lt;/td&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;
						&lt;p style=&quot;margin: 0pt;&quot;&gt;2, Analisar Sintaxe
			(ExpressaoAritmetica, Autômato de Expressão Aritmética,
			EstadoInicial, EstadosFinais, TipoToken)&lt;/p&gt;
						&lt;/td&gt;
					  &lt;/tr&gt;
					  &lt;tr&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;1, 4 :&lt;/td&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;0&lt;/td&gt;
					  &lt;/tr&gt;
					  &lt;tr&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;2, 3 :&lt;/td&gt;
						&lt;td style=&quot;vertical-align: top;&quot;&gt;1, return&lt;/td&gt;
					  &lt;/tr&gt;
					&lt;/tbody&gt;
				  &lt;/table&gt;
				  &lt;/td&gt;
				  &lt;td style=&quot;vertical-align: top;&quot;&gt; &lt;span
			 style=&quot;font-weight: bold;&quot;&gt;&lt;/span&gt;&lt;span
			 style=&quot;font-weight: bold;&quot;&gt;TipoToken (token) =&amp;gt; tipo,
			prioridade&lt;/span&gt;&lt;br&gt;
				  &lt;ol&gt;
					&lt;li&gt;- e estado = 0: 0, 2&lt;/li&gt;
					&lt;li&gt;inteiro: 1, 0&lt;/li&gt;
					&lt;li&gt;(: 2, 1&lt;/li&gt;
					&lt;li&gt;): 3, 1&lt;/li&gt;
					&lt;li&gt;*: 4, 3&lt;/li&gt;
					&lt;li&gt;/: 4, 3&lt;/li&gt;
					&lt;li&gt;+: 4, 4&lt;/li&gt;
					&lt;li&gt;-: 4, 4&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;span style=&quot;font-weight: bold;&quot;&gt;Lista de Tokens&lt;/span&gt;:
			token, Tipo de Token, prioridade&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;/span&gt;&lt;/td&gt;
				&lt;/tr&gt;
			  &lt;/tbody&gt;
			&lt;/table&gt;
		</desc>
    </topico>
	<topico> 
       	<titulo>Dados para &lt;span style=&quot;color: red; font-weight: bold;&quot;&gt;Aplicar Regras &lt;/span&gt;</titulo>
		<desc>
			&lt;span style=&quot;font-weight: bold;&quot;&gt;
			Lista de Regras&lt;/span&gt;&lt;br&gt;
			&lt;ol start=&quot;0&quot;&gt;
			  &lt;li&gt;-unário inteiro:&amp;nbsp;Lista de Tokens [-1 *
			inteiro]&amp;nbsp; =&amp;gt;&amp;nbsp;Lista de Tokens [-unário,
			inteiro]&amp;nbsp; &lt;/li&gt;
			  &lt;li&gt;(inteiro):&amp;nbsp;Lista de Tokens
			[inteiro]&amp;nbsp; =&amp;gt;&amp;nbsp;Lista de Tokens ['(', inteiro,
			')']&lt;/li&gt;
			  &lt;li&gt;inteiro&amp;nbsp;operador
			prioridade = 3 inteiro:&amp;nbsp;Lista de Tokens [operação entre os
			inteiros]&amp;nbsp;
			=&amp;gt;&amp;nbsp;Lista de Tokens [inteiro,&amp;nbsp;operador
			prioridade = 3, inteiro]&amp;nbsp;&lt;/li&gt;
			  &lt;li&gt;inteiro&amp;nbsp;operador
			prioridade = 4 inteiro:&amp;nbsp;Lista de Tokens [operação entre os
			inteiros]&amp;nbsp;
			=&amp;gt;&amp;nbsp;Lista de Tokens [inteiro,&amp;nbsp;operador
			prioridade = 4, inteiro]&amp;nbsp;&lt;/li&gt;

			&lt;/ol&gt;
			&lt;br&gt;
			&lt;span style=&quot;font-weight: bold;&quot;&gt;Lista de Tokens&lt;/span&gt;:
			token, Tipo de Token, prioridade
		</desc>
    </topico>
	<topico>
<titulo>Exemplo</titulo>
<desc>&lt;span style=&quot;color: rgb(204, 102, 0); font-weight: bold;&quot;&gt;Calcular Expressão&lt;/span&gt;&lt;span style=&quot;color: rgb(204, 102, 0); font-weight: bold;&quot;&gt;&lt;/span&gt; (&quot;34 + ((3 + 7) * -6) / 4&quot;) =&gt; 19&lt;br&gt;
&lt;ol&gt;
  &lt;li&gt;&lt;span style=&quot;font-weight: bold; color: rgb(102, 102, 204);&quot;&gt;Analisar Sintaxe&lt;/span&gt; gera Lista de Tokens&lt;/li&gt;
  &lt;li&gt;se não houver erro, calcular Expressão Aritmética (&lt;span style=&quot;color: red; font-weight: bold;&quot;&gt;Avaliar Regras&lt;/span&gt;)&lt;/li&gt;
&lt;/ol&gt;</desc>
</topico>
	<topico> 
       	<titulo>Solução do Exemplo</titulo>
		<desc>&lt;p&gt;Dada a expressão aritmética &quot;34 + ((3 + 7) * -6) / 4&quot;,&lt;br&gt; &lt;span style=&quot;font-weight: bold; color: rgb(102, 102, 204);&quot;&gt;Analisar
			Sintaxe&lt;/span&gt; gera a Lista de Token abaixo e&lt;br&gt; &lt;span
			 style=&quot;color: red; font-weight: bold;&quot;&gt;Aplicar Regras &lt;/span&gt; gera valor final.&lt;/p&gt;&lt;br&gt;
			&lt;table style=&quot;text-align: left;&quot; border=&quot;1&quot;
			 cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
			  &lt;tbody&gt;
				&lt;tr style=&quot;font-weight: bold;&quot; align=&quot;center&quot;&gt;
				  &lt;td colspan=&quot;8&quot;&gt;Lista de Tokens:&amp;nbsp;&lt;span style=&quot;font-weight: normal;&quot;&gt;token, Tipo de Token, prioridade&lt;/span&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
				  &lt;td style=&quot;text-align: center;&quot;
			 rowspan=&quot;2&quot;&gt;Gerada pelo &lt;br&gt;
			componente&lt;br&gt;
				  &lt;span style=&quot;font-weight: bold; color: rgb(102, 102, 204);&quot;&gt;Analisar
			Sintaxe&lt;/span&gt;&lt;/td&gt;
				  &lt;td style=&quot;text-align: center;&quot; colspan=&quot;7&quot;
			 &gt; Transformações da Lista de Tokens pelo componente &lt;span
			 style=&quot;color: red; font-weight: bold;&quot;&gt;Aplicar Regras&lt;/span&gt;
				  &lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
				  &lt;td style=&quot;text-align: center;&quot;&gt;regra 0&lt;/td&gt;
				  &lt;td style=&quot;text-align: center;&quot;&gt;regra 3&lt;/td&gt;
				  &lt;td style=&quot;text-align: center;&quot;&gt;regra 1&lt;/td&gt;
				  &lt;td style=&quot;text-align: center;&quot;&gt;regra 2&lt;/td&gt;
				  &lt;td style=&quot;text-align: center;&quot;&gt;regra 1&lt;/td&gt;
				  &lt;td style=&quot;text-align: center;&quot;&gt;regra 2&lt;/td&gt;
				  &lt;td style=&quot;text-align: center;&quot;&gt;regra 3&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
				  &lt;td&gt;
				  &lt;ol&gt;
					&lt;li&gt;34, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li&gt;(, 2, 1&lt;/li&gt;
					&lt;li&gt;(, 2, 1&lt;/li&gt;
					&lt;li&gt;3, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li&gt;7, 1, 0&lt;/li&gt;
					&lt;li&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;*,&amp;nbsp; 4, 3&lt;/li&gt;
					&lt;li&gt;-, 0, 2&lt;/li&gt;
					&lt;li&gt;6, 1, 0&lt;/li&gt;
					&lt;li&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;/, 4, 3&lt;/li&gt;
					&lt;li&gt;4, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				  &lt;td&gt;
				  &lt;ol&gt;
					&lt;li&gt;34, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li&gt;(, 2, 1&lt;/li&gt;
					&lt;li&gt;(, 2, 1&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;3, 1, 0&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;7, 1, 0&lt;/li&gt;
					&lt;li&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;*, 4, 3&lt;/li&gt;
					&lt;li style=&quot;font-weight: bold;&quot;&gt;-6, 1, 0&lt;/li&gt;
					&lt;li&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;/, 4, 3&lt;/li&gt;
					&lt;li&gt;4, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				  &lt;td&gt;
				  &lt;ol&gt;
					&lt;li&gt;34, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li&gt;(, 2, 1&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;(, 2, 1&lt;/li&gt;
					&lt;li style=&quot;font-weight: bold; color: red;&quot;&gt;10, 1, 0&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;*, 4, 3&lt;/li&gt;
					&lt;li&gt;-6, 1, 0&lt;/li&gt;
					&lt;li&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;/, 4, 3&lt;/li&gt;
					&lt;li&gt;4, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				  &lt;td&gt;
				  &lt;ol&gt;
					&lt;li&gt;34, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li&gt;(, 2, 1&lt;/li&gt;
					&lt;li style=&quot;font-weight: bold; color: red;&quot;&gt;10, 1, 0&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;*, 4, 3&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;-6, 1, 0&lt;/li&gt;
					&lt;li&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;/, 4, 3&lt;/li&gt;
					&lt;li&gt;4, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				  &lt;td&gt;
				  &lt;ol&gt;
					&lt;li&gt;34, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;(, 2, 1&lt;/li&gt;
					&lt;li style=&quot;font-weight: bold; color: red;&quot;&gt;-60, 1,
			0&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;), 3, 1&lt;/li&gt;
					&lt;li&gt;/, 4, 3&lt;/li&gt;
					&lt;li&gt;4, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				  &lt;td&gt;
				  &lt;ol&gt;
					&lt;li&gt;34, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li style=&quot;font-weight: bold; color: red;&quot;&gt;-60, 1,
			0&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;/, 4, 3&lt;/li&gt;
					&lt;li style=&quot;color: red;&quot;&gt;4, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				  &lt;td style=&quot;color: red;&quot;&gt;
				  &lt;ol&gt;
					&lt;li&gt;34, 1, 0&lt;/li&gt;
					&lt;li&gt;+,&amp;nbsp; 4, 4 &lt;/li&gt;
					&lt;li style=&quot;font-weight: bold;&quot;&gt;-15, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				  &lt;td&gt;
				  &lt;ol&gt;
					&lt;li style=&quot;font-weight: bold;&quot;&gt;19, 1, 0&lt;/li&gt;
				  &lt;/ol&gt;
				  &lt;/td&gt;
				&lt;/tr&gt;
			  &lt;/tbody&gt;
			&lt;/table&gt;
		</desc>
    </topico>
	<topico> 
       	<titulo>Sintaxe - Autômato Finito</titulo>
		<desc>&lt;table style=&quot;text-align: left;&quot; border=&quot;1&quot;
 cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td colspan=&quot;1&quot; rowspan=&quot;6&quot;&gt;&lt;img
 style=&quot;width: 265px; height: 204px;&quot;
 alt=&quot;DojoExpressaoAritmeticaAF.png&quot;
 title=&quot;DojoExpressaoAritmeticaAF.png&quot;
 src=&quot;DojoExpressaoAritmeticaAF.png&quot;&gt;&lt;/td&gt;
      &lt;td style=&quot;font-weight: bold;&quot;&gt;Símbolo&lt;/td&gt;
      &lt;td style=&quot;font-weight: bold;&quot;&gt;Significado&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;círculo&lt;/td&gt;
      &lt;td&gt;estado&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;círculo duplo&lt;/td&gt;
      &lt;td&gt;estado final&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;seta só com destino&lt;/td&gt;
      &lt;td&gt;estado inicial&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;seta entre estados&lt;/td&gt;
      &lt;td&gt;transição&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;texto na seta&lt;/td&gt;
      &lt;td&gt;entrada: TipoEntrada [/ ação]&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</desc>
    </topico>
	<topico> 
       	<titulo>Sintaxe - BNF</titulo>
		<desc>expressao: OpUnario* (inteiro | '(' expressao ')') [OpBinario expressao]</desc>
    </topico>
	<topico> 
       	<titulo>Sintaxe - Expressão Regular</titulo>
		<desc>(OpUnario* (inteiro | '('expressao')')OpBinario)*OpUnario*(inteiro | '('expressao')')		</desc>
    </topico>
	<topico> 
       	<titulo>Sintaxe - Diagrama Sintático</titulo>
		<desc>&lt;img alt=&quot;DojoExpressaoAritmetica.png&quot; title=&quot;DojoExpressaoAritmetica.png&quot;
 src=&quot;DojoExpressaoAritmetica.png&quot; /&gt;&lt;br/&gt;
 &lt;a href=&quot;DiagramaSintatico.htm&quot;&gt;Diagrama
Sintático - Exemplos e convenções&lt;/a&gt;
		</desc>
    </topico>
</linguagem>