Difference between revisions of "Programação com Objectos/Aula Prática 09/Exercício de C++"

From Wiki**3

< Programação com Objectos‎ | Aula Prática 09
(Entradas e Saídas em C++, operadores de escrita e leitura)
(Composite (padrão de desenho))
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Exercício de C++ da semana 09 -- entregar exclusivamente em papel na aula prática da semana 10.'''
+
'''Exercício de C++ da semana 09 -- entregar exclusivamente, em papel A4 manuscrito, na aula prática da semana 10.'''
  
 
== Composite (padrão de desenho) ==
 
== Composite (padrão de desenho) ==
  
Uma página ('''Page''') é constituída por parágrafos ('''Paragraph'''), cada um dos quais contém uma ou mais linhas de texto (''Span'') e/ou imagens (Image). Os conceitos podem estar aninhados: as páginas podem conter outras páginas e os parágrafos podem conter páginas ou outros parágrafos. Todos os elementos implementam o método render, que produz representações XML, como se indica abaixo. Uma página começa com '''<page>''' e termina com '''</page>''', sendo listadas entre as marcas as representações  correspondentes aos elementos internos. Analogamente, os parágrafos são delimitados por '''&lt;p>''' e '''&lt;/p>'''; as linhas são delimitadas por '''<span>''' e '''</span>''' (o texto é representado por '''TEXT'''); e as imagens são marcadas por '''<img src="IMG"/>'''. Escreva uma função main que ilustre o funcionamento para o seguinte caso:
+
Uma página ('''Page''') é constituída por parágrafos ('''Paragraph'''), cada um dos quais contém uma ou mais linhas de texto ('''Span''') e/ou imagens ('''Image'''). Os conceitos podem estar aninhados: as páginas podem conter outras páginas e os parágrafos podem conter páginas ou outros parágrafos. Todos os elementos implementam o método '''render''', que produz representações XML, como se indica abaixo. Uma página começa com '''&lt;page>''' e termina com '''&lt;/page>''', sendo listadas entre as marcas as representações  correspondentes aos elementos internos. Analogamente, os parágrafos são delimitados por '''&lt;p>''' e '''&lt;/p>'''; as linhas são delimitadas por '''&lt;span>''' e '''&lt;/span>''' (o texto é representado por '''TEXT'''); e as imagens são marcadas por '''&lt;img src="IMG"/>'''. Escreva uma função '''main''' (e todas as classes auxiliares) que ilustre o funcionamento para o seguinte caso:
<xml>
+
<source lang="xml">
 
<page>
 
<page>
 
   <p>
 
   <p>
Line 14: Line 14:
 
   </p>
 
   </p>
 
</page>
 
</page>
</xml>
+
</source>
 
[[category:Ensino]]
 
[[category:Ensino]]
 
[[category:PO]]
 
[[category:PO]]
 
[[category:Aulas Práticas de PO]]
 
[[category:Aulas Práticas de PO]]

Latest revision as of 15:30, 20 November 2019

Exercício de C++ da semana 09 -- entregar exclusivamente, em papel A4 manuscrito, na aula prática da semana 10.

Composite (padrão de desenho)

Uma página (Page) é constituída por parágrafos (Paragraph), cada um dos quais contém uma ou mais linhas de texto (Span) e/ou imagens (Image). Os conceitos podem estar aninhados: as páginas podem conter outras páginas e os parágrafos podem conter páginas ou outros parágrafos. Todos os elementos implementam o método render, que produz representações XML, como se indica abaixo. Uma página começa com <page> e termina com </page>, sendo listadas entre as marcas as representações correspondentes aos elementos internos. Analogamente, os parágrafos são delimitados por <p> e </p>; as linhas são delimitadas por <span> e </span> (o texto é representado por TEXT); e as imagens são marcadas por <img src="IMG"/>. Escreva uma função main (e todas as classes auxiliares) que ilustre o funcionamento para o seguinte caso:

<page>
  <p>
    <span>TEXT</span>
    <span>TEXT</span>
  </p>
  <p>
    <img src="IMG"/>
  </p>
</page>