Anotações, resumos, trabalhos, provas e exercícios de Computação de Universidade

Alfabetização e o Prazer da Leitura

Computação2,49 KB

O que é ser alfabetizado?

Não sei bem a cifra oficial, e não acredito muito em cifras oficiais. Para mim, alfabetizado não é quem assina o nome, talvez embaixo de um documento, mas quem assina um documento que conseguiu ler e entender. A imensa maioria dos ditos meramente alfabetizados não está nessa lista, portanto são analfabetos – um dado melancólico para qualquer país civilizado.

Nem sempre um povo leitor interessa a um governo (falo de algum país ficcional), pois quem lê é informado e vai votar com relativa lucidez.

O Hábito da Leitura

Sempre fui de muito ler, não por virtude, mas porque em nossa casa livro era um objeto cotidiano, como o pão e o leite. Digo isso com um pouco de ironia, mas sem nenhuma depreciação ao excelente...

Continue lendo "Alfabetização e o Prazer da Leitura" »

Conceitos Essenciais de Segurança de Redes: PKI, Firewall e Proxy

Computação2,72 KB

PKI: Ao navegar em sites HTTPS, utilizamos a infraestrutura PKI para verificar a autenticidade do certificado enviado pelo servidor.

A criptografia se torna mais segura devido à robustez do algoritmo e do tamanho da chave (bits).

Firewall: É um programa/aplicação que tem como objetivo filtrar pacotes, através de regras que podem permitir ou restringir o acesso a um IP, uma rede ou porta específica.

Através dele podemos criar regras que podem:

  • Aceitar pacotes (ACCEPT)
  • Bloquear ou rejeitar pacotes (DROP ou REJECT)
  • Encaminhar pacotes (permitir o fluxo através do Firewall - FORWARD)
  • Redirecionar pacotes (REDIRECT)

Além das regras citadas, podemos implementar o NAT (Network Address Translation), ou seja, permitir que diversos hosts em uma rede...

Continue lendo "Conceitos Essenciais de Segurança de Redes: PKI, Firewall e Proxy" »

Estrutura e Lógica de uma Calculadora Programável

Computação2,89 KB

Componentes da Interface

  • Visor: Campo onde os números são digitados e resultados exibidos.
  • Botões de Entrada: Permitem a digitação de números.
  • Botões de Operação: Incluem Soma (+), Subtração (-), Multiplicação (*), Divisão (/), Porcentagem (%), e Potência (X ^ Y).
  • Botão de Igual (=): Executa o cálculo.

Definição das Ações dos Botões (Exemplo: Botão +)

Para cada botão de operação, define-se uma ação acionada por duplo clique (digitação ou comandos):

Botão Adicionar (+)

  • Nome: soma
  • Caption: +
  • Ação (Duplo Clique):
    1. Numero1: = visor.value;
    2. A Operação: = 1;

Lógica das Operações Matemáticas

A lógica principal reside no botão de igual (=), que processa a operação armazenada:

Botão Igual (=)

  • Number2: = visor.value;
  • Se operacao
...
Continue lendo "Estrutura e Lógica de uma Calculadora Programável" »

Algoritmos Essenciais: Lógica de Programação e Desafios

Computação4,79 KB

Algoritmos Essenciais: Lógica de Programação e Desafios

Algoritmo 1: Classificação de Números (Positivo, Negativo, Zero)

Desenvolva um algoritmo que receba N números e classifique cada um como positivo, negativo ou zero.

Pseudo-código (ex24):


algoritmo "ex24"
var
    programa, numero: inteiro
    opc: caractere
inicio
    programa <- 1
    enquanto programa = 1 faca
        limpatela
        escreva("Digite um número: ")
        leia(numero)
        se numero > 0 entao
            escreval("Positivo")
        senao
            se numero = 0 entao
                escreval("O número é igual a 0")
            fimse
            se numero < 0 entao
                escreval("Negativo")
            fimse
        fimse
        escreva(
...
Continue lendo "Algoritmos Essenciais: Lógica de Programação e Desafios" »

Exercícios de Lógica de Programação e Algoritmos

Computação12,42 KB

Exercícios Práticos de Algoritmos para Iniciantes

Exercício 1: Soma de Dois Números

Faça um algoritmo que receba dois números e exiba o resultado da sua soma.

algoritmo "soma_dois_numeros"
var
   x, y: inteiro
inicio
   escreva ("Digite o primeiro número: ")
   leia(x)
   escreva("Digite o segundo número: ")
   leia(y)
   escreva("A soma dos números é: ", x + y)
fimalgoritmo

Exercício 2: Operações Matemáticas Básicas

Faça um algoritmo que receba dois números e, ao final, mostre a soma, subtração, multiplicação e a divisão dos números lidos.

algoritmo "quatro_operacoes"
var
   x, y: real
inicio
   escreva("Digite o primeiro número: ")
   leia(x)
   escreva("Digite o segundo número: ")
   leia(y)
   escreval("A soma é: ",
...
Continue lendo "Exercícios de Lógica de Programação e Algoritmos" »

Guia de Funções e Estrutura de Sistemas Operacionais

Computação3,51 KB

Funções Básicas

  • Comunicação do usuário com o hardware.
  • Prover aos usuários uma utilização otimizada e compartilhada dos recursos do sistema (32 e 64 bits).
  • Controle dos recursos de hardware.
  • Gerência da memória principal.
  • Gerência das interrupções.
  • Gerência do acesso à memória secundária.
  • Gerência do acesso aos dispositivos de entrada e saída.

Estrutura em Módulos

  • Interpretador de comandos.
  • Escalonamento e alocação de recursos.
  • Sistemas de arquivos.
  • Sistema de I/O (Entrada e Saída).
  • Gerenciador de memória.
  • Núcleo (Kernel).
  • Hardware.

Conceitos GNU e Kernel

O Kernel é o núcleo do Sistema Operacional. O projeto GNU permite as liberdades de copiar, alterar e distribuir o software.

Distribuições Linux

  • Distribuições Comerciais: Red Hat,
...
Continue lendo "Guia de Funções e Estrutura de Sistemas Operacionais" »

Guia de Engenharia: Métricas e Ciclo de Vida de Software

Computação11,09 KB

Quais são as etapas do desenvolvimento de software?

  • Levantamento de requisitos
  • Análise

Quais são as Etapas para Desenvolvimento de Software?

  • Levantamento de Requisitos
  • Análise
  • Projeto
  • Implementação
  • Testes
  • Implantação

Quais são os Níveis de Abstração nas Etapas para Desenvolvimento de Software?

  • Conceitual
  • Lógico
  • Físico

Quais são os eixos da visão tridimensional de um Sistema de Informação?

Dados, Processos e Eventos

Defina medida, medição, métrica e indicador.

Medida: indicação quantitativa de algum atributo de um produto ou processo. Ex: Quantidade de erros descobertos em uma revisão.

Medição: ato de medir, isto é, de determinar uma medida.

Métrica: procura correlacionar medidas individuais com o objetivo de se ter uma ideia da eficácia...

Continue lendo "Guia de Engenharia: Métricas e Ciclo de Vida de Software" »

Transações em BD: ACID, Bloqueios e Concorrência

Computação4,61 KB

1. Propriedades das Transações (ACID)

As propriedades ACID garantem a confiabilidade das transações em um banco de dados. São elas:

  • Atomicidade: A transação é indivisível, ou seja, ou todas as suas operações são executadas com sucesso, ou nenhuma é executada (tudo ou nada).
  • Consistência: A transação deve levar o banco de dados de um estado válido para outro estado válido. A consistência pode ser violada temporariamente durante a transação, mas deve ser restaurada ao seu final.
  • Isolamento: As transações devem ser executadas de forma isolada, como se fossem a única transação em execução no sistema. Uma transação não deve sofrer interferência de outras transações concorrentes.
  • Durabilidade: Uma vez que a transação
...
Continue lendo "Transações em BD: ACID, Bloqueios e Concorrência" »

Dados, Informação e Computadores

Computação2,76 KB

1. O que são Dados?

Elementos conhecidos e isolados têm pouco valor. Um dado é a expressão lógica de um fato isolado.

2. Qual a importância dos dados?

A informação é gerada a partir da correta definição e organização das relações entre os dados.

3. O que é informação?

Conjunto organizado e estruturado de dados. Agrupados, têm grande valor. A informação é a expressão lógica do fato global.

4. Qual a importância da informação profissionalmente?

A própria informação fornece o maior potencial de retorno às organizações. Informação dá origem a mais informação, e conhecimento, a mais conhecimento. A informação torna-se cada vez mais a base para a competição.

5. Qual a importância da informação para as empresas?

...
Continue lendo "Dados, Informação e Computadores" »

Entendendo as Camadas de Rede: OSI, TCP/IP e Seus Protocolos

Computação7,31 KB

Os modelos de camadas de rede, como o Modelo OSI e o Modelo TCP/IP, são estruturas conceituais que descrevem como as funções de comunicação de rede são divididas em grupos lógicos. Cada camada é responsável por um conjunto específico de tarefas, interagindo com as camadas adjacentes para garantir a transmissão eficiente e confiável dos dados.

Modelo OSI (Open Systems Interconnection)

O Modelo OSI é um modelo de referência de sete camadas que descreve como diferentes sistemas de rede podem se comunicar. Embora o TCP/IP seja mais utilizado na prática, o OSI ainda é fundamental para entender os conceitos de rede.

Camada 7 - Aplicação

A camada de aplicação faz a interface entre a pilha de protocolos e o aplicativo que pediu ou receberá...

Continue lendo "Entendendo as Camadas de Rede: OSI, TCP/IP e Seus Protocolos" »