Apontamentos, resumos, trabalhos, exames e problemas de Computação

Ordenar por
Matéria
Nível

Guia de Estruturas de Repetição e Dados em Pascal

Classificado em Computação

Escrito em em português com um tamanho de 3,57 KB

Comando repeat-until

repeat Comando until Expressão Lógica (EL);

O comando Repeat Until (Repita Até Que) realiza a execução dos comandos que estão no laço repetitivo no mínimo uma vez, para então analisar a condição. Após o resultado da mesma, executa ou não os comandos do laço repetitivo novamente. Ou seja, primeiramente executa os comandos que estão no laço repetitivo ao menos uma vez e, ao final do processo, analisa a condição. Isto implica dizer que os comandos do laço são executados no mínimo uma vez e, caso a condição seja falsa, continua a executá-los; logo, quando verdadeira, estes comandos deixam de ser repetidos. A estrutura Repeat Until, por tratar a condição de entrada no loop a posteriori, sempre terá seus... Continue a ler "Guia de Estruturas de Repetição e Dados em Pascal" »

Fundamentos da Programação Orientada a Objetos (OOP)

Classificado em Computação

Escrito em em português com um tamanho de 5,68 KB

O Paradigma da Programação Orientada a Objetos (OOP)

O Paradigma OOP inverte a ordem tradicional de programação. O foco principal está nos dados e, em seguida, nos algoritmos que operam sobre esses dados. A implementação da funcionalidade é, em geral, escondida dos usuários.

O que é OOP?

OOP é um conjunto de objetos que trocam mensagens para, ao final do processamento, resolver o problema do usuário. Cada objeto possui uma funcionalidade que é exposta aos usuários (interface), enquanto sua implementação é, em geral, escondida (encapsulamento).

Classes e Objetos

  • Uma Classe é um modelo, uma especificação, um molde, a partir do qual se criam objetos.
  • A Superclasse Base: Na plataforma Java, existe uma superclasse chamada Object, da
... Continue a ler "Fundamentos da Programação Orientada a Objetos (OOP)" »

Questões Resolvidas: Compiladores e Linguagens de Programação

Classificado em Computação

Escrito em em português com um tamanho de 3,98 KB

Questões de Concurso: Compiladores e Linguagens

Exercício 1: Software Tradutor e Velocidade de Execução

[ENADE 2008] Qual tipo de software tradutor deve ser utilizado para programas em geral, quando a velocidade de execução é uma exigência de alta prioridade?
A) Compiladores.

Exercício 2: Classificação de Linguagens de Programação

As linguagens de programação podem ser classificadas grosseiramente em dois grupos: linguagens de alto nível e linguagens de baixo nível. O critério para definir em que categoria uma determinada linguagem se encaixa está associado ao grau de abstração que ela confere a seus utilizadores, ou seja, se apresentar características linguísticas que se assemelham mais à nossa linguagem, é dita de alto... Continue a ler "Questões Resolvidas: Compiladores e Linguagens de Programação" »

Gerenciamento de Memória e Sistemas de Arquivos

Classificado em Computação

Escrito em em português com um tamanho de 6,59 KB

Gerenciamento de Memória

Dentre outras tarefas, o gerenciador de memória monitora quais partes da memória estão em uso e quais estão disponíveis; aloca e libera memória para os processos; e gerencia a permuta de processos entre memória principal e secundária (quando a memória principal não é capaz de abrigar todos os processos).

Espaço de Endereçamento

Um espaço de endereçamento é uma faixa de endereços discretos, cada um dos quais pode corresponder a um registrador físico ou virtual, um nodo de rede, dispositivo periférico, setor de disco ou outra entidade lógica ou física.

Memória Virtual

É uma técnica que usa a memória secundária como uma cache para armazenamento secundário. Houve duas motivações principais: permitir... Continue a ler "Gerenciamento de Memória e Sistemas de Arquivos" »

Padrões de Projeto — Resumo e Quando Usar

Classificado em Computação

Escrito em em português com um tamanho de 4,14 KB

Resumo dos principais padrões de projeto (design patterns), com motivação, uso e exemplos práticos para facilitar a tomada de decisão na arquitetura de software.

Abstract Factory

Proporciona uma interface para criação de famílias de objetos relacionados ou dependentes sem especificar suas classes concretas.

Quando utilizar

  • O sistema deve ser configurado com uma de múltiplas famílias de produtos.
  • Estes produtos relacionados são projetados para ser utilizados juntos, e você quer garantir essa restrição.

Exemplo

Montar uma interface gráfica para vários sistemas operacionais; família de componentes gráficos:

  • Windows
  • Linux

Builder

Separa a construção de um objeto complexo da sua representação, permitindo diferentes tipos de representação... Continue a ler "Padrões de Projeto — Resumo e Quando Usar" »

Guia de Estudo: Camada de Enlace e Protocolos Ethernet

Classificado em Computação

Escrito em em português com um tamanho de 4,29 KB

Questões sobre Camada de Enlace e Protocolos de Rede

Quais são os três fatores que devem ser considerados na implementação de um protocolo de Camada 2 em uma rede? (Escolha três.)

  • O escopo geográfico da rede;
  • A implementação da camada física;
  • O número de servidores a serem interligados.

Consulte a imagem. Supondo que a rede seja convergente (ou seja, as tabelas de roteamento e tabelas ARP estão completas), qual endereço MAC ocupará o campo de endereço de destino dos quadros Ethernet destinados ao servidor web?

  • 00-0c-85-cf-65-c0

Quais opções são propriedades do acesso ao meio baseado em contenção em mídias compartilhadas? (Escolha três.)

  • Não-determinístico;
  • Menos sobrecarga;
  • Existência de colisões.

O que é correto afirmar sobre

... Continue a ler "Guia de Estudo: Camada de Enlace e Protocolos Ethernet" »

Estados, Criação e Término de Processos

Classificado em Computação

Escrito em em português com um tamanho de 3,78 KB

Estados dos Processos

1. Em execução: Realmente usando a CPU naquele momento.

2. Pronto: Executável, temporariamente parada para dar lugar a outro processo.

3. Bloqueado: Incapaz de executar enquanto não ocorre um evento externo.

Casos de Transição de Estado

Caso 1: O sistema operacional descobre que um processo não pode prosseguir.

Casos 2 e 3: Causados pelo escalonador, sem que o sistema saiba:

  • Caso 2: O escalonador decide que o processo já teve tempo suficiente de CPU e aloca o tempo de CPU para outro processo.
  • Caso 3: Ocorre quando todos os processos já obtiveram o tempo de CPU de maneira justa, e é hora de voltar para o 1º processo.

Caso 4: Evento externo (como chegada de uma entrada). Se nenhum processo estiver executando neste momento,... Continue a ler "Estados, Criação e Término de Processos" »

Algoritmos de Busca e Ordenação em Estruturas de Dados

Classificado em Computação

Escrito em em português com um tamanho de 3,61 KB

Algoritmos de Busca

Busca Sequencial

  • Percorre cada item do vetor até encontrar a informação solicitada.
  • Apresenta baixo desempenho quando se tem uma grande quantidade de registros.
  • Melhor desempenho quando os dados estão ordenados.

Busca Binária

  • Divide o vetor ao meio e compara o elemento central com o procurado.
  • Se o elemento procurado for menor, repete o processo no lado esquerdo; se for maior, repete no lado direito.
  • Os elementos devem estar ordenados.
  • Desempenho melhor que a busca sequencial.

Busca por Interpolação

  • É uma variação da busca binária.
  • Escolhe a próxima posição pesquisada com base em uma estimativa sobre a posição do elemento procurado em relação ao restante do vetor.
  • Pode ser mais eficiente do que a pesquisa binária,
... Continue a ler "Algoritmos de Busca e Ordenação em Estruturas de Dados" »

Sistemas de Arquivos e Gerenciamento de Disco

Classificado em Computação

Escrito em em português com um tamanho de 3,89 KB

Questões sobre Sistemas Operacionais

1. Explique qual é a finalidade dos sistemas de arquivos?

Resposta: É um conjunto de estruturas lógicas e de rotinas que permitem ao sistema operacional controlar o acesso ao disco rígido.

2. Explique o que são "clusters" ou unidades de alocação?

Resposta: É o nome dado a um sistema que seleciona dois ou mais computadores para que estes trabalhem de maneira conjunta no intuito de processar uma tarefa. Estas máquinas dividem entre si as atividades de processamento e executam este trabalho de maneira simultânea.

3. Comente sobre as vantagens e desvantagens em se definir grandes unidades de alocação em um disco rígido?

Resposta: Pode-se obter resultados tão bons quanto ou até superiores aos de um... Continue a ler "Sistemas de Arquivos e Gerenciamento de Disco" »

Padrões de Projeto: Guia para Desenvolvedores

Classificado em Computação

Escrito em em português com um tamanho de 5,64 KB

Padrões de Projeto: O Que São e Por Que Usar?

Padrões de projeto existem para evitar reinventar algo que já foi inventado, para melhorar a qualidade do software, a sua documentação e facilitar a comunicação geral. Eles não definem soluções exatas, não resolvem todos os problemas de design e não são exclusivos de Orientação a Objetos (OO).

Características dos Padrões de Projeto

  • Encapsulamento: Deve encapsular um problema ou uma solução bem definida e específica, deve ser independente do restante do software e sua aplicação deve ser clara.
  • Generalidade: Deve permitir a construção de outras implementações.
  • Equilíbrio: Deve haver uma razão para utilizar o padrão (restrição, análise abstrata, observação, exemplos e
... Continue a ler "Padrões de Projeto: Guia para Desenvolvedores" »