1 UNIDADE 1 CONCEITOS BÁSICOS EM ALGORITMOS 1.1 NOÇÕES DE LÓGICA a) Conceitos: - Lógica é a ciência que estuda as leis do raciocínio; coerência; raciocínio. - Lógica como técnica nos ensina a usar corretamente as leis do pensamento. - Lógica é a arte de pensar corretamente e, visto que a forma mais complexa do pensamento é o raciocínio, a lógica estuda a correção do raciocínio. - Lógica tem em vista a ordem da razão. Uma vez que a razão pode funcionar desordenadamente, a lógica ensina a colocar ordem no pensamento. b) Objeto da Lógica: É o pensamento que traduz as relações dos conteúdos mentais como tais suscetíveis de serem pensados identicamente por muitos. O homem é, por natureza, apto para pensar retamente (lógica natural), mas precisa de lógica científica, principalmente quando se trata de por a prova seu pensamento em casos difíceis ou contraversos. Ex: Conclusão: Os animais são dotados de instinto. Todo cachorro é um animal. Portanto, todo cachorro tem instinto. Relação/comparação: Maria tem 15 anos. João é mais velho que Maria. Portanto, João tem mais do que 15 anos. Seqüência: O paletó está dentro do guarda-roupas. O guarda-roupas está fechado. Preciso abrir o guarda-roupas para pegar o paletó. Exclusão de possibilidades: Assaltaram o banco e prenderam 3 suspeitos: Carlos, Antônio e Pedro. Pedro acabara de sair da lanchonete. Carlos é o vendedor de pipocas da rua. Quem assaltou o banco? c) Lógica aplicada à computação Aplicação das leis do raciocínio em computadores. 1.2 PADRÕES DE COMPORTAMENTO a) Conceitos: - Padrão: Modelo oficial de pesos e medidas; nível, o que dá unidade. - Comportamento: Maneira de se comportar, procedimento, conjunto de atitudes e reações.
2 - Ação: é um acontecimento que a partir de um estado inicial, após um período de tempo finito, produz um estado final previsível e bem definido. - Estado: é a situação atual de um dado objeto. - Algoritmo: é a descrição de um conjunto de ações que, obedecidas, resultam em uma sucessão finita de passos, atingindo um objetivo. - Seqüencialização: é uma convenção com o objetivo de reger o fluxo de execução, determinando qual ação vem a seguir. Ex: Trocar uma lâmpada - Pegue uma escada; - Posicione-a embaixo da lâmpada; - Busque uma lâmpada nova; - Suba na escada; - Retire a lâmpada velha; - Coloque a lâmpada nova; - Desça da escada. Involuntariamente já seguimos uma determinada seqüência de ações que fazem com que seja seguida naturalmente, estabelecendo um padrão de comportamento. Exercícios: 1) Definir um padrão de comportamento para: - Dirigir um carro; - Fazer uma macarronada. 2) Do exemplo trocar a lâmpada o que acontece se a lâmpada nova estiver queimada. Refaça a seqüência. b) Conclusões: Existem muitas formas de se resolver um problema, afinal, cada pessoa pensa e age de maneira diferente. Isso significa que para este mesmo problema, poderíamos ter diversas soluções diferentes e corretas (se todas atingissem o mesmo resultado) e portanto, somente o bom senso é capaz de indicar qual delas á a mais adequada. A solução adequada é aquela que prevê a possibilidade de que certa situação não aconteça (não acenda a lâmpada). As ações somente cessarão quando o objetivo for alcançado, ou seja, será estabelecido um fluxo repetitivo até que a condição (lâmpada OK) seja satisfeita. Observamos que havendo uma repetição de um mesmo conjunto de ações podemos alterar o fluxo seqüencial de execução de modo a fazer com que este retornasse a executar o conjunto de ações tantas vezes quanto forem necessárias. Todos os princípios da lógica são aplicáveis em programação de computadores. Observando-se um padrão de comportamento, pode-se prever resultados.
3 1.3 CONCEITOS GERAIS a) Dado: Elemento básico para processamento eletrônico de dados. É a menor unidade da informação; b) Informação: Conjunto de dados sobre um determinado elemento; c) Sistema: É um conjunto estruturado de elementos que se mantém em interação para atingir um determinado objetivo; d) Sistema de Processamento de Dados: É o conjunto de procedimentos e equipamentos necessários para tratar dados iniciais que conhecemos e obter resultados finais que desejamos; e) Sistema Eletrônico de Processamento de Dados: É o conjunto de máquinas eletrônicas (hardware) e procedimentos que programam o funcionamento dessas máquinas (software) utilizado para realizar as tarefas necessárias para o processamento de dados iniciais sobre um problema com o objetivo de obter resultados desejados. f) Linguagem de Programação: Uma linguagem de programação é uma notação formal para descrição de algoritmos que serão executados por um computador. Como todas as notações formais, uma linguagem de programação tem dois componentes: Sintaxe e Semântica, onde: - Sintaxe: Consiste em um conjunto de regras formais que especificam a composição de programa a partir de letras, dígitos e outros símbolos; - Semântica: Suas regras especificam o significado de qualquer programa sintaticamente válido, escrito na linguagem. g) Interpretador: As ações indicadas pelos comandos da linguagem são diretamente executadas, ou seja, executam as instruções do programa fonte linha a linha. Etapas: - Obter o próximo comando do programa; - Determinar que ações devem ser executadas; - Executar essas ações. h) Compiladores: Rotinas que geram um programa executável. Os programa escritos em uma linguagem (alto-nível) são traduzidos para versões em linguagem de máquina antes de serem executados. Etapas: - Reconhecimento de elementos básicos; - Análise sintática, interpretação/correção; - Análise semântica; - Alocação de memória; - Geração de um programa objeto. 1.4 FLUXOGRAMAS a) Conceito: Conjunto de símbolos com significação própria que representam atividades de processamento de dados. Um fluxograma procura dar uma idéia geral do processamento, mostrando quais os dados iniciais disponíveis, quais os resultados que se pretende obter com o processamento e qual o caminho a ser seguido.
4 Símbolos: Processamento Intercalação Entrada/saída Entrada manual Classificação Documento Linha de Comunicação Operação Manual Direção do fluxo Cartão Perfurado Operação Conector de página Decisão Conector Seleção Disco magnético Início/Fim Exibição Visual Fita Magnética Subrotina Arquivo Relatório Impresso
Fonte: Material retirado da Apostila de Aulas do professor Adair Santa Catarina. 5