1 of 15

Tópicos Introdutórios

Algoritmos e Programação I

2 of 15

Fundamentos de Lógica de Programação

  • O que é Lógica
    • Seqüência Lógica
    • Lógica no dia-a-dia
  • Lógica de Programação
  • Algoritmo
  • Estruturas de Controle de Fluxo

3 of 15

O QUE É LÓGICA

  • Coerência, racionalidade
  • “Arte de bem pensar”
  • “Correção do pensamento”

  • Ciência que “estuda a correção do raciocínio, a ordem das ações, a ordem no pensamento”
  • “Objetiva a criação de uma representação formal”.

(FORBELLONE, 2000)

4 of 15

O QUE É LÓGICA

  • “Ciência que estuda as leis do raciocínio. Seu objetivo é ordenar o pensamento humano através de mecanismos dedutivos e universalmente aceitos (abstração)”

SEQUÊNCIA LÓGICA

  • Sequência coerente, viável, possível.
  • “Rege o fluxo (andamento) de execução, determinando qual a ação vem a seguir”.

(SOUZA, 1994)

5 of 15

O QUE É LÓGICA

LÓGICA NO DIA A DIA

A gaveta está fechada

A caneta está na gaveta

Precisamos primeiro abrir a gaveta para depois pegar a caneta

João é mais velho que Maria

Maria é mais velha que Pedro

Portanto, João é mais velho que Pedro.

Todo invertebrado é animal

As minhocas são invertebrados

Toda minhoca é animal

6 of 15

LÓGICA DE PROGRAMAÇÃO

  • “É o uso correto das leis do pensamento, da ordem da razão, e de processos de raciocínio e simbolização formais na programação de computadores, objetivando racionalidade e o desenvolvimento de técnicas que cooperam para a produção de soluções logicamente válidas e coerentes, que resolvam com qualidade os problemas que se deseja programar”.
  • “Construção de algoritmos coerentes e válidos”.

(FORBELLONE, 2000)

7 of 15

ALGORITMO

  • “É uma seqüência de passos que visam atingir um objetivo bem definido”
  • “É a descrição de um conjunto de ações que seguidas, resultam numa sucessão finita de passos, atingindo o objetivo”.
  • “Fixa um padrão de comportamento, a ser seguido, uma norma de execução a ser trilhada, com vistas a alcançar, como resultado final, a solução de um problema”.

8 of 15

O Computador

Memória Principal

(RAM, ROM, Cache, Registradores)

Dispositivos de

Entrada

Dispositivos de Saída

CPU

Memória Secundária

(HD, SSD, CD/DVD)

9 of 15

O Computador

  • Hardware: Componentes físicos de um sistema de computação.
  • Software: Instruções para o hardware executar uma tarefa. São os programas do computador.
    • Sistema Operacional: Conjunto de programas e rotinas que gerenciam recursos de hardware de modo a possibilitar sua utilização e permitir a comunicação entre os dispositivos.

10 of 15

Linguagens de Programação

  • Proporcionam ao programador a possibilidade de fornecer instruções ao computador através de comandos ou sentenças, escritas em uma linguagem próxima à linguagem humana, permitindo desta forma a criação de novos softwares;
  • Por outro lado, a linguagem que o computador entende é a linguagem de máquina, instruções de baixo nível em uma representação binária.

11 of 15

Linguagens de Programação

  • Cada linguagem de programação obedece a regras especificas. As regras de sintaxe de uma linguagem de programação definem como são expressas as instruções a serem executadas
  • BAIXO NÍVEL - Linguagem de Máquina e de Montagem. Mais compatíveis com o hardware do computador
  • ALTO NÍVEL - Linguagens Compiladas e Interpretadas. Guardam elementos similares à nossa linguagem natural

12 of 15

Linguagens de Programação

  • Linguagem de máquina
    • Formada por códigos binários interpretados diretamente pelo hardware do computador;
    • Exemplo:

13 of 15

Linguagens de Programação

  • Linguagem de montagem (Assembly):
  • Formada por códigos mnemônicos que precisam ser convertidos em Linguagem de Máquina para que sejam interpretados pelo hardware do computador; é difícil e específica, mas poderosa e eficiente.
  • Exemplo:

14 of 15

Linguagens de Programação

  • Linguagem de Alto Nível:
  • Usa sintaxe próxima da linguagem do usuário; Precisa ser convertida em Linguagem de Máquina, para que seja interpretada pelo hardware do computador;
  • Ex: Fortran, Basic, C, C++, Java, Python, JavaScript

TOTAL = SALARIO + COMISSOES

Nomes de Variáveis

15 of 15

  • Linguagem de Alto Nível:

Conversão em Linguagem de Máquina.

Linguagens de Programação