escreva: ("informe idade") leia ("idade") se idade <= 18 anos escreva:("pode tirar a carteira") senão ("não pode tirar a
carteira")
fim se
fim
Expressões em pseudo-código
Introdução
Aqui serão descritas as funções e comandos usados no pseudocódigo.
Comandos iniciais
Esses comandos sempre estarão no pseudocódigo para fins de organização e não possuem nenhuma execução
atribuída, ficam na seguinte ordem estrutural:
algoritmo "nome do algoritmo" {onde o que há em "" é uma variável literal}
var
{Seção de declaração de variáveis}
inicio
{Seção de início de comandos}
fimalgoritmo {Indicação fim do algoritmo}
Comando algoritmo
Só serve para indicar o nome do algoritmo, onde o nome deve vir entre aspas por ser uma variável literal, é
obrigatório. Ex.:
algoritmo "teste"
Comando var
Indica onde as variáveis serão declaradas, é opcional, pois alguns algoritmos apenas imprimem instruções. Ex.:
var
n1, n2 : inteiro
n3, n4 : real
nome, cep : literal
Expressões em pseudo-código 28
Comando inicio
Indica onde começarão as instruções, é obrigatório. Ex.:
inicio
Escreva("Isto é um algoritmo")
Comando fimalgoritmo
Serve apenas para indicar que o algoritmo está terminado, é obrigatório.
Orientação a objectos
A Orientação a Objeto é um paradigma de Análise orientada ao objeto, Projeto orientado ao objeto e Linguagem de
programação de sistemas de software baseado na composição e interação entre diversas unidades de software
chamadas objetos.
Em alguns contextos, prefere-se usar Modelagem de dados orientada ao objeto, em vez de Projeto orientado ao
objeto.
A análise e projeto orientados a objetos têm como meta identificar o melhor conjunto de objetos para descrever um
sistema de software. O funcionamento deste sistema se dá através do relacionamento e troca de mensagens entre
estes objetos.
Hoje existem duas vertentes no projeto de sistemas orientados a objetos. O projeto formal, normalmente utilizando
técnicas como a notação UML e processos de desenvolvimento como o RUP; e a programação extrema, que utiliza
pouca documentação, programação em pares e testes unitários.
Na programação orientada a objetos, implementa-se um conjunto de classes que definem os objetos presentes no
sistema de software. Cada classe determina o comportamento (definidos nos métodos) e estados possíveis (atributos)
de seus objetos, assim como o relacionamento com outros objetos.
Smalltalk, Perl, Python, Ruby, PHP, C++, Java e C# são as linguagens de programação mais importantes com
suporte a orientação a objetos.
Conceitos
• Classe representa um conjunto de objetos com características afins. Uma classe define o comportamento dos
objetos, através de métodos, e quais estados ele é capaz de manter, através de atributos.
Exemplo de classe:
HUMANO é uma classe e tem como atributos: 2 BRAÇOS, 2 PERNAS, 1 CABEÇA, etc...
• Objeto é uma instância de uma classe. Um objeto é capaz de armazenar estados através de seus atributos e reagir
a mensagens enviadas a ele, assim como se relacionar e enviar mensagens a outros objetos.
Exemplo de objetos da classe Humanos:
JOÃO é um objecto da classe HUMANOS, apresentando todos os atributos dessa classe mas com a sua
individualidade.
Objecto é portanto uma discriminação da classe, sendo a classe uma generalização de um conjunto de objectos
idênticos ou com a mesma base.
• Mensagem é uma chamada a um objeto para invocar um de seus métodos, ativando um comportamento descrito
por sua classe.
Orientação a objectos 29
• Herança é o mecanismo pelo qual uma classe (subclasse) pode estender outra classe (superclasse), aproveitando
seus comportamentos (métodos) e estados possíveis (atributos). Há herança múltipla quando uma subclasse possui
mais de uma superclasse. Essa relação é normalmente chamada de relação "é um". Um exemplo de herança:
Mamífero é superclasse de Humano. Ou seja, um Humano é um mamífero.
• Associação é o mecanismo pelo qual um objeto utiliza os recursos de outro. Pode tratar-se de uma associação
simples "usa um" ou de um acoplamento "parte de". Por exemplo: Um humano usa um telefone. A tecla "1" é
parte de um telefone.
• Encapsulamento consiste na separação de aspectos internos e externos de um objeto. Este mecanismo é utilizado
amplamente para impedir o acesso direto ao estado de um objeto (seus atributos), disponibilizando externamente
apenas os métodos que alteram estes estados. Exemplo:
Você não precisa conhecer os detalhes dos circuitos de um telefone para utilizá-lo. A carcaça do telefone encapsula
esses detalhes, provendo a você uma interface mais amigável (os botões, o monofone e os sinais de tom).
• Abstração é a habilidade de concentrar nos aspectos essenciais de um contexto qualquer, ignorando
características menos importantes ou acidentais. Em modelagem orientada a objetos, uma classe é uma abstração
de entidades existentes no domínio do sistema de software.
• Polimorfismo permite que uma referência de um tipo de uma superclasse tenha seu comportamento alterado de
acordo com a instância da classe filha a ela associada. O polimorfismo permite a criação de superclasses abstratas,
ou seja, com métodos definidos (declarados) e não implementados, onde a implementação ocorre somente nas
subclasses não abstratas.
Índice - Estruturas de manipulação de dados | Exercícios
Prefácio Programar, o que é a programação? Como programar: pensar como uma máquina Aprendizagem: o "padrão
eficaz" Linguagens de programação Estruturas de manipulação de dados Orientação a objectos Exercícios
Bibliografia e ligações externas
Exercícios 30
Exercícios
Exercício 1
Verdadeiro ou falso
<quiz display=simple> {Não preciso de um outro programa aquando da finalização do meu código em C++.
Basta-me rodá-lo directamente na máquina. |type="()"} - Verdadeiro. + Falso.
{O Assembly é uma linguagem muito acessível ao usuário final. |type="()"} - Verdadeiro. + Falso.
{Os scripts são linguagens dinâmicas e usadas em intervenções pequenas, para não se ter que usar o compilador.
|type="()"} + Verdadeiro. - Falso.
{Sempre preciso escrever um algoritmo antes de iniciar a escrita de um programa em uma linguagem. |type="()"} -
Verdadeiro. + Falso. </quiz>
Crie algoritmos
1. Crie um algoritmo próximo ao de máquina para a seguinte frase:
"Se estiveres no estado A tens que decifrar o código B e somar 2 ao resultado de B.
Se não estiveres no estado A passa para o estado C e pára."
2. Decifre para o português o seguinte algoritmo:
IF Livro 1
GOTO Page 251
SOMA 2 NA Page = VAR
SAÍDA VAR
ELSE Livro 2
GOTO Page 23
SUBTRAI 2 NA Page = VAR
SAÍDA VAR
Comentários
Postar um comentário