46
Carlos J E de Campos LÓGICA Programação Estruturada Algoritmos, Lógicas de Conceitos Lógicos Pseudocódigo, Fluxograma, Macrofluxo e DHF Exemplos e Pensamentos Desenvolvimento COBOL Mainframe Guia de Referência Terceira edição São Paulo 2013

LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Embed Size (px)

Citation preview

Page 1: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Carlos J E de Campos

LÓGICA Programação Estruturada

Algoritmos, Lógicas de Conceitos Lógicos

Pseudocódigo, Fluxograma, Macrofluxo e DHF

Exemplos e Pensamentos

D e s e n v o l v i m e n t o C O B O L M a i n f r a m e

G u i a d e R e f e r ê n c i a

T e r c e i r a e d i ç ã o

S ã o P a u l o

2 0 1 3

Page 2: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Carlos J E de campos, 2013

Capa: Alexandra Hardt Carlini

Diagramação: Carlos J E de Campos

Revisão: Neusa Pallione

É proibida a reprodução total ou parcial desta obra, de qualquer forma ou por qualquer meio sem a autorização prévia e por escrito do autor. A violação dos Direitos Autorais (Lei n.º 9610/98) é crime estabelecido pelo artigo 184 do Código Penal.

2013

Todos os direitos desta obra pertencem a

Carlos J E de Campos

www.carloscamposinfo.com

Page 3: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 3

Agradecimentos

Agradeço a Deus por ter-me colocado na trilha do conhecimento.

Agradeço à minha filhota, Vanessa Soares de Campos, por ser a minha fonte de esperança e por mostrar compreensão e paciência em muitos momentos da nossa vida.

Agradeço, também, à Ana Maria Alves Justino, pelo apoio e incentivo para a criação desta obra.

Agradeço aos meus pais Alice de Assunção Esteves Costa e José Manuel Lopes Moreira de Campos, por terem-me dado a vida, educação, formação moral e muito apoio.

Agradeço ao amigo Roberto Azem, que sempre esteve por perto, nos momentos de estudo e naqueles em que precisava de ouvidos e conselhos.

Agradeço ao companheiro Benedito Aparecido Alves, pelo apoio que tem me dado nesta segunda fase dos meus livros, acompanhando-me no dia a dia do trabalho, ouvindo-me e apoiando-me com o seu conhecimento e sabedoria. Benê, como é conhecido, tem sido um grande conselheiro.

Reflexão

“Para adquirir conhecimento é preciso estudar, para adquirir sabedoria é preciso observar.”

Autor: William Arthur Ward

Page 4: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

N ã o e s t a m o s a q u i p a r a p a g a r n e m s o b r e v i v e r , m a s s i m , p a r a v e n c e r ,

a d q u i r i n d o s a b e r .

&

U s e m o s o c o n h e c i m e n t o c o m é t i c a e m o r a l .

Page 5: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 5

Introdução O aprendizado da Lógica é essencial para formação de um bom programador, sendo a base para o aprendizado de todas as linguagens de programação, porque a lógica de programação é a técnica utilizada na elaboração de algoritmos, com o objetivo de automatizar tarefas. A partir dos algoritmos, dos conceitos das lógicas e dos tipos de lógicas de programação apresentados aqui, a construção de programas passará a ser uma tarefa mais fácil. Os programas desenvolvidos serão mais eficientes, passando a consumir o menor tempo na sua execução. Outro beneficio é a redução do tempo necessário para a sua alteração e teste. A aplicação do conhecimento da lógica de programação estruturada, na criação de algoritmos, é importante, porque o computador precisa deles para executar as sequências de instruções (passos lógicos), para realizar a tarefa para o qual foi criado; independentemente da linguagem de programação.

O objetivo deste livro é oferecer uma base teórica e prática, suficientemente boa, para que o leitor domine a criação de algoritmos e a técnica da lógica de programação estruturada, preparando-o para o aprendizado de uma linguagem de programação. Por isso, é apresentado o passo a passo da criação de algoritmos até à elaboração dos principais tipos de lógica que vão ser necessários para a criação de soluções mais eficientes.

Os conceitos do método estruturado e as lógicas são apresentados de forma a facilitar a compreensão, sendo acompanhados por figuras, a fim de ilustrar e aumentar a clareza das informações.

Com a finalidade de reforçar e consolidar o aprendizado, foram elaborados exemplos com cenários perfeitos para ajudar a compreender a criação e aplicação das lógicas, além de questionários para possibilitar a retenção das informações recebidas, que são fornecidos no site www.carloscamposinfo.com. Possuem, também, os pensamentos do autor como forma de mostrar a aplicabilidade dos conceitos de forma isenta.

É recomendado para quem deseja possuir sólidos conhecimentos na arte de criar programas com eficiência, a partir do desenvolvimento de uma forma de raciocínio que, com certeza, será muito útil e benéfico para uma brilhante carreira, qualquer que seja a área: mainframe ou internet (WEB), com qualquer linguagem de programação: COBOL, JAVA, PHP, entre tantas outras.

Reflexão

“E conhecereis a verdade e a verdade vos libertará.”

João 8:32

Page 6: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

O raciocínio necessário para o desenvolvimento dos algoritmos vai sendo desenvolvido, conforme o leitor avançar na leitura de capítulo a capítulo, e ao quanto se dedicar a praticar os exercícios.

A leitura e estudo desta obra são recomendados para quem deseja possuir sólidos conhecimentos na arte de criar programas com eficiência, a partir do desenvolvimento de uma forma de raciocínio que, com certeza, será muito útil e benéfico para uma brilhante carreira, qualquer que seja a área: mainframe ou internet (WEB), com qualquer linguagem de programação: COBOL, JAVA, PHP, entre tantas outras.

Existem várias obras sobre este assunto, mas esta, em especial, foi desenvolvida para se integrar com a linguagem de programação COBOL. É um excelente aprendizado para quem deseja crescer na área de desenvolvimento de sistemas.

Esta obra está aderente ao programa de formação de Especialista em Desenvolvimento de Programação COBOL Mainframe, CMCPDS - Certified Mainframe COBOL Program Development Specialist, fornecido pelo instituto ICPDUG - INTERNATIONAL COBOL PROGRAM DEVELOPER USERS GROUP.

Para mais informações, visite o site www.carloscamposinfo.com, ou entre em contato através do e-mail do autor: [email protected].

Reflexão

“Muitos homens iniciaram uma nova era na sua vida a partir da leitura de um livro”.

Autor: Henry Thoreau

Page 7: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 7

Resenha

Paulo César de Lira Banar

Ao ser convidado para ajudar na revisão desta obra, surpreendi-me positivamente ao constatar como o autor se preocupou em desenvolver um curso que conseguisse transmitir, de forma gradativa, os conceitos necessários para o entendimento e aplicação prática, tanto da “lógica” de programação como na utilização da linguagem COBOL, necessária para a construção de programas utilizados no desenvolvimento de sistemas de TI, em ambiente mainframe. Para os estudantes ou profissionais que estão iniciando no aprendizado da utilização da linguagem COBOL, cabe ressaltar que, apesar de estarmos evoluindo constantemente em novas tecnologias, envolvendo principalmente os softwares relacionados a Web, para o desenvolvimento de sistemas que necessitam controlar grandes quantidades de informações, sigilosas ou não, como no caso dos grandes computadores comerciais (Alta plataforma) utilizados, principalmente, por bancos e grandes corporações, a linguagem COBOL é amplamente utilizada, uma vez que ainda não surgiu uma linguagem que ofereça, dentre outras vantagens, o controle de segurança de acesso e/ou atualização de informações que o COBOL oferece, quando utilizado em conjunto com softwares desenvolvidos, especificamente para este fim. Desta forma, o curso apresentado, a seguir, oferecerá uma excelente oportunidade para as pessoas que estão procurando se desenvolver, através do aprendizado de uma profissão ainda carente de bons profissionais.

Paulo César de Lira Banar possui mais de 24 anos de experiência em sistemas da informação e estudou na Faculdade Oswaldo Cruz, de São Paulo. Atuando principalmente, em empresas do ramo bancário como funcionário e, posteriormente, como consultor, atuou, também, em empresas do ramo aéreo e de seguros, participando no desenvolvimento de sistemas para o ambiente mainframe e híbrido (mainframe/web), tais como: Banco Itaú, Transbrasil, AGF Seguros, Banco BCN, Banco Bradesco, Unibanco e Banco ABN.

Page 8: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

José Aparecido Vital

O autor, ao editar esta obra, surpreendeu-me por ter conseguido colocar os conhecimentos de lógica numa sequência que ajuda, em muito, o entendimento do conteúdo apresentado. Isto porque é muito comum a oferta de livros e cursos onde os alunos têm grandes dificuldades para elaborar lógicas que serão necessárias na construção de programas de computador. Para superar esta deficiência, a obra foi elaborada para apresentar a construção do raciocínio, passo a passo, e aumentando a complexidade, um após o outro, preparando totalmente o leitor para trabalhar com a construção de lógicas de programação. Neste sentido, o livro apresenta, na sua parte final, a construção de tipos de lógicas de programação que, sem dúvida alguma, representam a base para a criação da maior parte das lógicas que serão necessárias no mundo de trabalho das grandes empresas. Outro grande feito desta obra é a criação dos tipos de lógicas, descritas na linguagem chamada de pseudocódigo e na representação padronizada de símbolos chamada de diagrama de blocos ou fluxograma, o que desenvolve o raciocínio de cada um. Estas lógicas serão utilizadas, mais adiante, no livro e curso de COBOL para a construção de programas, fechando o ciclo de aprendizado na criação de programas. Assim, entendo que o livro e o curso apresentados, fornecem uma excelente oportunidade para todo aquele que está procurando aprender e se desenvolver como programador de computador, uma profissão ainda carente de bons profissionais e, cada vez mais, necessita de mão de obra especializada.

José Aparecido Vital possui 25 anos de experiência em Sistemas da Informação. Estudou na Faculdade ESAN – Escola Superior de Administração de Negócios de São Paulo, onde, posteriormente, concluiu a Pós em Recursos Humanos, totalmente voltado para Gerenciamento e Liderança. Atuando em empresas do ramo bancário, seguros, previdência privada, consórcio, cartões de crédito, comércio, químico e farmacêutico, onde participou no desenvolvimento de sistemas para o ambiente mainframe, RISC, e híbrido (mainframe/web), tais como: Bradesco, Itaú, Unibanco, Porto Real, Baneb, Cacique, BCN, Safra, Sudameris e Real, Marítima, Brasilprev, Martins, Pernanbucanas, Grupo Matarazzo, Alba Química, Asea Brow Boveri e Produtos ROCHE. Estudante e praticante de Programação Neurolinguística, participa e coordena grupos de estudos. Realizou os treinamentos de Desenvolvimento e Liderança, Águia Real (fire walking),Negociação e Vendas, Introdução à PNL e Coaching, Practitioner e Máster Practitioner, todos pelo INEXH – Instituto Nacional de Excelência Humana. Também realizou treinamentos Destiny Quest Ciclos Azul e Vermelho pela Matrix University.

Page 9: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 9

Luis Otavio Roveratti

Esta obra surpreendeu-me pelo fato de constatar a preocupação do autor no desenvolvimento de um livro e curso que consigam transmitir, de forma sequencial e gradativa, os conceitos necessários para construir algoritmos, e pela aplicação prática na criação da “lógica de programação”, com foco na utilização da linguagem de programação COBOL para o ambiente mainframe. É surpreendente a forma como o autor apresenta as lógicas e a importância que dá ao descrever os algoritmos na linguagem pseudocódigo, e na forma de fluxogramas, dois métodos que desenvolvem o raciocínio lógico. O livro apresenta uma excelente oportunidade para que o leitor possa tornar-se especialista, na arte de criar programas de computadores, uma área muito carente de profissionais especializados.

Luis Otavio Roveratti possui mais de 24 anos de experiência em sistemas da informação. Atuando, principalmente, em empresas do ramo bancário e como instrutor, há mais de dez anos, nos cursos de Lógica de programação e COBOL. Atuou, também, em empresas do ramo metalúrgico, participando, tanto no desenvolvimento de sistemas para o ambiente mainframe (alta plataforma) como híbrido (mainframe / web (baixa plataforma)).

Benedito Aparecido Alves

Pude comparar esta obra com outros da mesma área, e observei a maneira como está organizado o ensino da lógica. Gostei muito da forma como colocou, passo a passo, o desenvolvimento do raciocínio para elaborar os algoritmos e de como estão elaboradas as dezenas de exercícios. Uma inovação que o autor usa é a identificação de vários conceitos, utilizados na criação das lógicas dos programas, de forma, isolada que ele chamou de "tipos de lógicas". O conteúdo está organizado, de forma a direcionar o leitor, desde os princípios básicos até os conceitos essenciais para desenvolver a maioria dos programas. Tive o privilégio de assistir ao treinamento de lógica de programação, e vi que o conteúdo e a metodologia levam o aluno a possuir a completa capacitação no desenvolvimento das lógicas de programação. Entendi que a preocupação do autor é o de fornecer um material didático e um treinamento com uma metodologia que leva a uma boa formação das bases para ser um bom programador.

Benedito Aparecido Alves tem mais de 25 anos de experiência, no ambiente de produção Mainframe, atuando no setor financeiro, tais com: Bradesco, Unibanco, Caixa Federal, Boston e IBM. Atualmente, trabalha na Sonda IT como Suporte a Produção (Mainframe).

Page 10: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Ademir Nelson Marinho

Grande parte dos iniciantes em programação se preocupa em aprender a desenvolver uma linguagem de programação, no entanto, na fase inicial de aprendizado, o mais importante é conhecer a lógica da programação, a qual norteia todo o desenvolvimento do raciocínio lógico por parte do programador. Não existem “fórmulas” em informática, o que existe é o aperfeiçoamento organizado de nossa forma de pensar e raciocinar sobre um problema, podendo extrair do mesmo uma solução eficiente e eficaz, sob um determinado ângulo de visão.

O livro de LÓGICA, escrito pelo Dr. Carlos Joaquim E. de Campos, é um livro didático, visando capacitar o aluno a desenvolver o raciocínio lógico, apresenta a parte teórica sempre associada à parte prática. O programador iniciante que coloca o carro na frente dos bois, não vai atingir seu objetivo e consequentemente vem a desanimar de ser um programador, e os programadores experientes ouvem a célebre frase, “programação é pra louco”, e eu digo dizendo que programação não é pra quem quer, é preciso gostar e muito, quando se gosta de algo a dedicação chega ao extremo.

Ao programador iniciante que fizer uso desta obra, recomendo que leia com atenção o prefácio do livro onde o Dr. Carlos faz uma abordagem simples, clara e direta sobre lógica, a mente do leitor se abre como um leque e o caro leitor pode então vislumbrar um horizonte e chegar à conclusão de que lógica é a simplicidade colocada em ordem.

Ademir Nelson Marinho iniciou a carreira profissional em TI em 1974 em uma indústria multinacional têxtil Alemã, onde, em seguida, foi para a Alemanha fazer curso de Assembler, em 1982 fez o curso de COBOL na IBM, em 1985 passou no concurso para o Banco de Desenvolvimento do Paraná (BADEP), para programador Natural/ADABAS. Em 1988 terminou a faculdade de Análise de Sistema pela faculdade ESEEI em Curitiba/PR e, em 1996 fez o curso de Solucion Povider Microsoftware NT 4.0, onde acumulou o cargo de gerente de Administração de Rede até a presente data. Em 2005 fez especialização em Engenharia de software. De 1996 até 2006 foi professor na área de TI nas disciplinas: Linguagem técnica de programação (Algoritmo), Técnica de projeto, Lógica de programação, Engenharia de Sistema e Administração de Banco de Dados.

Page 11: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 1 1

Formação de especialista COBOL A formação de um desenvolvedor especialista em COBOL Mainframe envolve diversas áreas do conhecimento, necessárias para a atuação que o profissional precisa ter no desempenho da sua atuação. São seis módulos específicos de conhecimento que se completam: Lógica, COBOL, DB2, CICS, JCL e TSO.

A formação completa segue uma sequência, de acordo com um planejamento, para a integração de todos os módulos e, com isso, potencializar a sinergia vinda de cada área de conhecimento. Por exemplo, primeiro se desenvolve o racíocino e se aprende a construir algoritmos e lógicas de programação; depois, se aprende a estrutura de linguagem de programação com os seus comandos e constrói-se programa com base nas lógicas de programação aprendidas. A seguir, aprende-se o banco de dados onde estarão armazenados os dados e, finalmente, aprende-se a estrutura do ambiente online do Mainframe, a forma de programação pseudoconversacional e, o JCL, linguagem de administra a execução de programas batch.

No módulo de LÓGICA, são abordados como se constrói algoritmos e lógicas de programação.

No módulo de COBOL, são vistos toda a teoria e estrutura da linguagem de programação e todos os comandos principais e básicos para desenvolver a grande maioria dos programas.

No módulo de DB2, são abordados a teoria e estrutura básica de um banco de dados e, todos os comandos principais e básicos para desenvolver programas que utilizam o banco de dados DB2 em programas COBOL.

No módulo de CICS, são vistos toda a teoria e estrutura do ambiente, a forma de programação pseudoconversacional e, todos os comandos principais e básicos para desenvolver a grande maioria dos programas online.

No módulo de JCL, são vistos toda a teoria e estrutura da linguagem de programação e todos os comandos principais e básicos para desenvolver a grande maioria das soluções necessárias para a execução dos programas batch.

Page 12: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Metodologia dos cursos

O assunto novo é apresentado ao aluno, através da apresentação de SLIDES animados e coloridos e tiradas as dúvidas sobre o tópico. Para praticar o conhecimento novo, o aluno é solicitado a realizar o exercício, no caso: criar algoritmo ou programa. Após o tempo para criar a primeira solução, é apresentado; via SLIDES animados e coloridos, a solução do exercício, tirando todas as dúvidas possíveis. Para consolidar e poder tirar novas dúvidas do tópico do conhecimento, são solicitados, em média de dois a quatro exercícios na aula. A solução dos exercícios propostos é apresentada, via SLIDES animados e coloridos. E para tentar consagrar o conhecimento, é solicitado, em média de três a seis exercícios extras para o aluno fazer fora as horas das aulas. E, para tentar tirar possíveis dúvidas remanescentes, são reservados os primeiros minutos de cada aula, para tirar dúvidas.

Objetivo do método

Este método tem como objetivo alcançar os mais diversos indivíduos (visual, auditivo ou cinestésico) para que tomem consciência dos conceitos. Todo o método está baseado na indução do raciocínio, para que se crie a lógica necessária. Com isto, a energia necessária gasta com o esforço para criar a lógica é gasta durante o treinamento. Depois de formado, o individuo passa a raciocinar automaticamente com muito menor esforço. Por exemplo, quando houver uma solicitação que seja necessária à criação de duas quebras, uma dentro da outra, o raciocínio vem automaticamente e, à medida que vai elaborando a lógica, o seu formato já vem no padrão aprendido.

Benefícios do método

Os benefícios do método aplicado podem se resumir no seguinte:

Ampliação das possibilidades de aprendizagem

Aumento do desempenho no raciocínio lógico

Acomodação crescente do conhecimento

Consolidação das estruturas lógicas

Facilidade de criar a solução lógica

Apresentar Conceito

Tirar dúvidas

Praticar exercícios

Apresentar Solução

Consolidar Exercícios

Rever conceitos

Page 13: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 1 3

Certificação para desenvolvedor Mainframe

O instituto ICPDUG (INTERNATIONAL COBOL PROGRAM DEVELOPER USERS GROUP), para valorizar a área de desenvolvimento de sistema, fornece o exame de certificação para desenvolvedor COBOL Mainframe, com o objetivo de identificar o especialista em desenvolvimento de sistemas COBOL Mainframe.

Objetivo da certificação

A certificação vem agregar valor para a empresa, na medida em que vai avaliar o conhecimento para a necessidade específica que o profissional precisa ter, possibilitando a criação de um quadro de profissionais altamente qualificados e nivelados com o objetivo de planejar, definir e criar sistemas e programas com eficiência e qualidade.

E para o profissional, vem para valorizar a sua capacitação, a sua formação, diferenciando-o dos demais profissionais, fornecendo-lhe as credencias de um profissional especialista, aderente com as necessidades de conhecimento específico.

Como é a certificação

O certificado de Especialista em COBOL Mainframe, CMCPDS - Certified Mainframe COBOL Program Development Specialist (Especialista em Desenvolvimento de Programação COBOL Mainframe). O especialista máster recebe o título, após ter obtido todas as certificações para as seguintes especialidades:

LÕGICA - Programação estruturada COBOL - Linguagem de programação DB2 - Sistema Gerenciador de Banco de Dados Relacional CICS - Sistema Gerenciador de ambiente ONLINE JCL - Linguagem de controle Batch

Para mais informações, acesse o site www.icpdug.org.br ou utilize o e-mail [email protected].

Reflexão

“Em algum lugar, algo incrível está esperando para ser descoberto.”

Autor: Carl Seagan

Page 14: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Página deixada em branco

Page 15: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 1 5

Sumário

Agradecimentos ................................................................................... 3

Introdução .......................................................................................... 5

Resenha ............................................................................................. 7

Formação de especialista COBOL ............................................................. 11

Metodologia dos cursos ..................................................................... 12

Objetivo do método ......................................................................... 12

Benefícios do método ....................................................................... 12

Certificação para desenvolvedor Mainframe ............................................... 13

Objetivo da certificação .................................................................... 13

Como é a certificação ....................................................................... 13

Sumário ........................................................................................... 15

Computador ...................................................................................... 27

Funcionamento de um computador ....................................................... 28

Como é feita a memória do computador ................................................ 29

Fluxo dos dados em um computador ..................................................... 29

Programa ...................................................................................... 30

Sistema Operacional ......................................................................... 30

Lógica ............................................................................................. 31

Raciocínio lógico ............................................................................. 32

O que é lógica ............................................................................. 32

Sequência lógica .......................................................................... 32

Instruções .................................................................................. 32

Proposições ................................................................................... 33

Exemplos de proposições ................................................................ 33

Princípios das proposições .............................................................. 33

Formas de criar a proposição ........................................................... 35

Page 16: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Não é uma proposição ................................................................... 36

Negação da proposição .................................................................. 36

Combinação de proposições ............................................................ 37

Proposições condicionais (então) ...................................................... 40

Proposições bicondicionais .............................................................. 41

Operadores .................................................................................... 42

Operadores aritméticos ................................................................. 42

Operadores lógicos ....................................................................... 43

Operadores relacionais .................................................................. 44

Questionário .................................................................................. 45

Estruturas de dados ............................................................................. 47

Dado ............................................................................................ 48

Dado interno ............................................................................... 48

Dado externo .............................................................................. 48

Dado elementar ........................................................................... 49

Estático ..................................................................................... 49

Dinâmico ................................................................................... 50

Item de grupo ................................................................................. 53

Item ......................................................................................... 53

Identificar o nível do dado .............................................................. 53

Identificar nível hierárquico através de um número ............................... 55

Tipos de dados ................................................................................ 56

Tipos de variáveis ........................................................................ 56

Estrutura de dados heterogênea .......................................................... 57

Registro ..................................................................................... 57

Estrutura de um registro ................................................................ 58

Estrutura de dados homogênea (tabela) ................................................. 58

Dimensão na estrutura homogênea .................................................... 58

Posição do elemento ..................................................................... 58

Organização da estrutura homogênea ................................................ 59

Vetor ........................................................................................ 59

Vetor unidimensional .................................................................... 60

Page 17: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 1 7

Matriz (vetor bidimensional) ........................................................... 61

Array multidimensional .................................................................. 62

Formas de acesso ......................................................................... 63

Formas de pesquisa ...................................................................... 63

Questionário .................................................................................. 65

Algoritmos ........................................................................................ 67

O que é algoritmo ............................................................................ 68

Verbo de ação como instrução ............................................................ 69

A importância dos algoritmos .............................................................. 69

Características dos algoritmos ............................................................. 70

Regras para construção do algoritmo .................................................... 70

Nome e hierarquia do algoritmo .......................................................... 70

Fases do algoritmo ........................................................................... 71

Orientações para construir algoritmo .................................................... 72

Formas de representação dos algoritmos ................................................ 73

Pseudocódigo .............................................................................. 73

Pseudolinguagem - Português estruturado ........................................... 73

Fluxograma ............................................................................. 74

Como construir algoritmos ................................................................. 76

Identificar o cenário do algoritmo ..................................................... 76

Identificar os dados de entrada e saída .............................................. 76

Identificar os procedimentos de transformação .................................... 76

Algoritmo: calcular a soma de dois números ............................................ 77

Representação básica com o pseudocódigo .......................................... 77

Representar algoritmo para manusear dados ........................................ 77

Como executar o algoritmo ............................................................. 79

Como exibir constantes e valores ...................................................... 79

Como converter pseudocódigo para fluxograma ..................... 81

Algoritmo dentro das fases ..................................................... 81

Algoritmo: calcular o dobro de um número ................................ 82

Pseudocódigo: calcular o dobro de um número ...................... 82

Fluxograma: calcular o dobro de um número .......................... 82

Page 18: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Algoritmo: calcular a média de dois números ............................ 83

Pseudocódigo: calcular a média de um número ...................... 83

Fluxograma: calcular a média de um número ......................... 83

Identificar as fases do algoritmo ............................................... 84

Questionário .................................................................................. 85

Realização de testes ............................................................................ 87

Teste do algoritmo........................................................................... 88

Teste de mesa ............................................................................. 88

Ciclo de teste ............................................................................. 88

Como executar o teste de mesa .............................................. 89

Teste do programa ..................................................................... 90

Teste de programa ON-LINE .................................................... 90

Teste de programa BATCH ...................................................... 90

Estruturas do algoritmo ........................................................................ 93

Estruturas básicas dos algoritmos ......................................................... 93

Estrutura de SEQUÊNCIA .................................................................... 94

Estrutura de DECISÃO ....................................................................... 95

Representação da Estrutura de DECISÃO ............................................. 96

Estrutura de DECISÃO dentro de estrutura ........................................... 96

Algoritmo: números iguais .............................................................. 97

Algoritmo: obter maior e menor ou igual ............................................ 98

Estrutura de REPETIÇÃO .................................................................... 99

Como controlar a repetição ............................................................ 99

Representação da estrutura de REPETIÇÃO .......................................... 99

Pseudocódigo da estrutura de REPETIÇÃO .......................................... 100

Executar três vezes consecutivamente .............................................. 100

Tipos de estruturas de REPETIÇÃO ................................................... 100

Estrutura de REPETIÇÃO “ATÉ QUE” ................................................. 101

Estrutura de REPETIÇÃO “ENQUANTO” .............................................. 103

Estrutura de REPETIÇÃO dentro REPETIÇÃO ........................... 105

Exercícios ..................................................................................... 109

Exercícios ..................................................................................... 111

Page 19: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 1 9

Questionário ............................................................................. 113

Armazenamento de dados .................................................................... 115

Arquivo de dados ............................................................................ 115

Necessidade de armazenamento de dados .......................................... 115

O que é arquivo .......................................................................... 116

Tamanho do registro .................................................................... 116

Organização de arquivos ............................................................... 117

Estruturas de armazenamento de dados ................................................ 117

Estrutura de armazenamento sequencial ........................................... 118

Estrutura de armazenamento sequencial por linha................................ 119

Estrutura de armazenamento relativo ............................................... 120

Estrutura de armazenamento indexado ............................................. 121

Tipos de acesso .............................................................................. 124

Tipo de acesso sequencial ............................................................. 124

Tipo de acesso randômico.............................................................. 124

Tipo de acesso dinâmico ............................................................... 124

Métodos de acesso .......................................................................... 125

Método de acesso VSAM ................................................................ 125

Tipos acesso no VSAM ................................................................... 126

Tipos de organização de arquivos VSAM ............................................. 127

Tipos de acesso por tipo de arquivo ..................................................... 129

Tipo de arquivo sequencial ............................................................ 129

Tipo de arquivo relativo ................................................................ 129

Tipo de arquivo indexado .............................................................. 130

Questionário ................................................................................. 131

Manusear arquivos ............................................................................. 133

Abertura de arquivo ........................................................................ 134

Fechamento de arquivo .................................................................... 134

Leitura de arquivo .......................................................................... 134

Gravação de arquivo ....................................................................... 134

Ponteiro do arquivo......................................................................... 135

Movimentação de registro ................................................................. 135

Page 20: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Como codificar ações no arquivo ......................................................... 135

Como utilizar o nome de arquivo no algoritmo ........................................ 135

Como utilizar o nome de campo no algoritmo ......................................... 136

Como ler registros de um arquivo no algoritmo ....................................... 136

Exemplo: contar-até-cinco ............................................................. 136

Exemplo: ler-reg-arquivo ............................................................... 137

Exemplo: contar registro do arquivo .................................................... 137

Fluxograma ............................................................................... 138

Pseudocódigo ............................................................................. 138

Exemplo: contar e exibir funcionário ................................................... 139

Fluxograma ............................................................................... 139

Pseudocódigo ............................................................................. 139

Questionário ................................................................................. 140

Metodologia de programação ................................................................ 141

Necessidade de metodologia de programação ......................................... 142

Sofisticação dos softwares e programas ............................................. 142

Custos grandes na manutenção de programas ...................................... 142

Eficiência e optimização do programa ............................................... 143

História da metodologia da programação ........................................... 143

Programação modular ...................................................................... 144

Conceitos da modularização ........................................................... 144

Objetivos de modular programas ..................................................... 144

Benefícios de modular programas .................................................... 144

Programação estruturada.................................................................. 145

Vantagens da programação estruturada ............................................. 145

Desvantagens da programação estruturada ......................................... 145

Benefícios da programação estruturada ............................................. 146

Fases básicas de um programa ........................................................... 146

Módulo INICIALIZAR ...................................................................... 146

Módulo PROCESSAR ...................................................................... 146

Módulo FINALIZAR ....................................................................... 147

Base do método estruturado .......................................................... 147

Page 21: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 2 1

Como criar módulos em um programa .................................................. 147

Raciocínio TOP-DOWN ...................................................................... 149

Conceito TOP-DOWN .................................................................... 149

Objetivos do modelo TOP-DOWN ..................................................... 149

Modelos de estruturação .................................................................. 149

Macro fluxo do programa ............................................................... 150

DE-PARA de dados ....................................................................... 151

Identificar dados de entrada e de saída ............................................. 151

Como construir DE-PARA ............................................................... 151

DHF - Diagrama hierárquico de funções ............................................. 152

Exemplo com módulos: contar registros do arquivo .................................. 153

DHF e Macro fluxo ....................................................................... 153

Fluxograma do programa ............................................................... 153

Detalhamento do fluxograma do programa CONTAR-REG ........................ 154

Pseudocódigo ............................................................................. 154

Questionário ................................................................................. 155

Conceitos usados em lógicas de programação ............................................ 157

Conceito – FIM-DE-ARQUIVO ............................................................... 158

Conceito – FLAG ............................................................................. 158

Conceito – HEADER-E-TRAILLER ........................................................... 158

Conceito – CABEÇALHO-E-RODAPÉ ....................................................... 158

Conceito – CÓDIGO-DE-RETORNO ......................................................... 158

Controlar FIM-DE-ARQUIVO ................................................................ 159

O que é FIM-DE-ARQUIVO ............................................................... 159

Objetivo do controle de FIM-DE-ARQUIVO........................................... 159

Passos para controlar FIM-DE-ARQUIVO .............................................. 160

Exemplo LPCON02: contar registros de arquivo .................................... 161

Questionário ................................................................................. 164

Controlar com FLAG ........................................................................ 165

O que é FLAG ............................................................................. 165

Objetivo do controle de FLAG ......................................................... 165

Como controlar o FLAG ................................................................. 165

Page 22: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Pontos de controle do FLAG ........................................................... 166

Lógica sem FLAG ......................................................................... 167

Lógica com FLAG ......................................................................... 168

Exemplo LPCON4A: Listar erros do cadastro ........................................ 169

Questionário ................................................................................. 175

Controlar HEADER-E-TRAILLER ............................................................ 177

Conceito de tipo de registro ........................................................... 177

Conceito de HEADER .................................................................... 177

Conceito de TRAILLER .................................................................. 177

Conceito de DETALHE ................................................................... 177

Como construir HEADER e TRAILLER ................................................. 178

Exemplo LPCON6A: movimento de clientes ......................................... 180

Exemplo LPCON6B: listar de clientes de SP ......................................... 184

Questionário ................................................................................. 188

Controlar CABEÇALHO-E-RODAPÉ ........................................................ 189

O que é relatório ........................................................................ 189

Tratamento do relatório no Mainframe .............................................. 189

Formulário contínuo ..................................................................... 189

Características do formulário ......................................................... 190

Cabeçalho ................................................................................. 190

Linha de detalhe ......................................................................... 190

Rodapé..................................................................................... 190

Estrutura da lógica de impressão ..................................................... 191

Como controlar cabeçalho e rodapé ................................................. 192

Exemplo LPCON08: relação dos funcionários ....................................... 193

Questionário ................................................................................. 197

Controlar CÓDIGO-DE-RETORNO .......................................................... 199

Surgimento dos códigos de retorno ................................................... 199

Término de instrução normal ou anormal ........................................... 199

Tipos de códigos de retorno ........................................................... 199

Onde aplicar o código de retorno ..................................................... 200

Código de retorno nos comandos de arquivos ...................................... 200

Page 23: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 2 3

Exemplo LPCON10: relação dos clientes ............................................ 202

Questionário ................................................................................. 205

Lógicas de programação ...................................................................... 207

Tipos de lógica de programação ......................................................... 207

Objetivos dos tipos de lógica de programação ........................................ 208

Tipo de lógica – LER-E-FAZER .......................................................... 208

Tipo de lógica – LER-E-TOTALIZAR .................................................... 208

Tipo de lógica – LER-E-SUMARIZAR.................................................... 208

Tipo de lógica – LER-E-SELECIONAR .................................................. 208

Tipo de lógica – LER-E-CONSISTIR ..................................................... 208

Tipo de lógica – LER-E-QUEBRAR-UM-NIVEL ......................................... 209

Tipo de lógica – LER-E-QUEBRAR-DOIS-NIVEIS ...................................... 209

Tipo de lógica – BALANCE-LINE-UM-PARA-UM ....................................... 210

Tipo de lógica – BALANCE-LINE-UM-PARA-MUITOS ................................. 210

Tipo de lógica – BALANCE-LINE-MUITOS-PARA-MUITOS ............................ 210

Tipo de lógica – QUEBRA-DE-PÁGINA-DE-RELATÓRIO .............................. 211

Tipo de lógica – PAGINAÇÃO-DE-TELA ................................................ 211

LER-E-FAZER ................................................................................. 213

Características da lógica ............................................................... 213

Exemplo da lógica ....................................................................... 214

Questionário .............................................................................. 217

LER-E-TOTALIZAR ........................................................................... 219

Características da lógica ............................................................... 219

Exemplo da lógica ....................................................................... 220

Questionário .............................................................................. 223

LER-E-SUMARIZAR ........................................................................... 225

Características da lógica ............................................................... 225

Diferenças entre as lógicas SUMARIZAR e TOTALIZAR ............................. 225

Sumarização por quebra de valor ..................................................... 226

Sumarização por valor fixo ............................................................. 226

Como controlar a sumarização por valor fixo ...................................... 227

Exemplo da lógica de sumarização por valor fixo ................................. 227

Page 24: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Questionário .............................................................................. 231

LER-E-SELECIONAR .......................................................................... 233

Características da lógica ............................................................... 233

Como implantar a seleção ............................................................. 234

Exemplo da lógica ....................................................................... 235

Questionário ................................................................................. 238

LER-E-CONSISTIR ............................................................................ 239

Diferenças entre as lógicas CONSISTIR e SELECIONAR ............................ 239

Características da lógica ............................................................... 239

Como implantar a consistência........................................................ 240

Exemplo da lógica ....................................................................... 241

Questionário .............................................................................. 245

LER-E-QUEBRAR-UM-NIVEL ................................................................ 247

Características da lógica ............................................................... 247

Passos para controlar a quebra ....................................................... 248

Como funciona a quebra ............................................................... 250

Exemplo da lógica ....................................................................... 251

Questionário .............................................................................. 255

LER-E-QUEBRAR-DOIS-NIVEIS .............................................................. 257

Características da lógica ............................................................... 257

Passos para controlar a quebra ....................................................... 258

Como funciona a quebra em dois níveis ............................................. 260

Exemplo da lógica ....................................................................... 261

Questionário .............................................................................. 265

BALANCE-LINE UM-PARA-UM .............................................................. 267

Características da lógica ............................................................... 267

O que é BALANCED LINE ................................................................ 267

Passos para controlar o BALANCED LINE ............................................. 269

Como funciona o BALANCE-LINE-UM-PARA-UM ..................................... 271

Exemplo da lógica ....................................................................... 275

Questionário .............................................................................. 279

BALANCE-LINE UM-PARA-MUITOS ......................................................... 281

Page 25: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 2 5

Características da lógica ............................................................... 281

Exemplo da lógica ....................................................................... 282

Segunda opção da lógica ............................................................... 286

Questionário .............................................................................. 287

BALANCE-LINE MUITOS-PARA-MUITOS ................................................... 289

Características da lógica ............................................................... 289

Exemplo da lógica ....................................................................... 290

Questionário .............................................................................. 295

QUEBRA PÁGINA-RELATÓRIO .......................................................... 297

Características da lógica ............................................................... 297

Passos para controlar a quebra de página .......................................... 298

Exemplo da lógica ....................................................................... 300

Questionário .............................................................................. 305

QUEBRA PAGINAÇÃO-DE-TELA ............................................................ 307

Características da lógica ............................................................... 307

Obter item pela posição da tabela ................................................... 308

Obter item pela chave .................................................................. 310

Obter item pela página ................................................................. 313

Exemplo da lógica ....................................................................... 315

Anexos ............................................................................................ 321

Abreviaturas ................................................................................. 321

Respostas ........................................................................................ 322

Respostas dos questionários............................................................... 322

Resposta: Algoritmo 01: imprimir nro maior que 20 .................................. 323

Resposta: Algoritmo 02: imprimir números de 1 a 9 .................................. 324

Resposta: Algoritmo 03: imprimir números de 1 a 9 com total ..................... 325

Resposta: Algoritmo 04: imp os dobros de 1 a 10 ..................................... 326

Resposta: Algoritmo 05: imp tab de 1 a 9 com total ................................. 327

Resposta: Algoritmo 05: imp tab de 1 a 9 com total ................................. 328

Resposta: Algoritmo 06: imp tabela de multiplicar ................................... 329

Resposta: Algoritmo-Vetor 01: imprimir vetor de meses do ano ................... 330

Resposta: Algoritmo-Vetor 02: imprimir elementos intercalados .................. 331

Page 26: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Resposta: Algoritmo-Vetor 03: imprimir dois vetores sequenciais ................. 332

Resposta: Algoritmo-Vetor 04: ordenar vetor crescente ............................. 333

Resposta: Algoritmo-Vetor 05: obter maior número da matriz ..................... 334

Resposta: Algoritmo-Vetor 06: obter maior e o menor número da matriz ....... 335

Bibliografia ...................................................................................... 336

Outras obras do autor ......................................................................... 337

Page 27: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 2 7

Computador

Este capítulo tem como objetivo apresentar, de forma básica, o conceito sobre o computador e não esgota o assunto. Os programas existem, porque existem os computadores, que os executam, e isso lhes dá vida.

Os programas são executados no computador, uma máquina que é composta de componentes eletrônicos, entre outros. Mesmo com a tecnologia evoluindo constantemente das válvulas aos circuitos integrados, os computadores mantêm as mesmas características, desde os primeiros que foram criados na década de 1940 com a arquitetura proposta por John Von Neumann que descreve o computador como uma máquina com quatro seções principais que são interconectadas por fios o "barramento do computador", são elas:

A Unidade lógica e aritmética (ULA),

A Unidade de controle,

A memória, e

Os dispositivos de entrada e saída (E/S ou I/O).

1

Page 28: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Vejamos o que representa cada uma das partes que compõem o modelo de computador apresentado:

Unidade Lógica e Aritmética (ULA): parte responsável pelas operações matemáticas e avaliações lógicas.

Unidade de Controle (UC): área que exerce o controle sobre as demais partes do computador, gerenciando e distribuindo as tarefas às outras unidades. Esta unidade é responsável pela movimentação dos dados, entre as partes do computador e entre o computador e os dispositivos a ele ligados.

Memória: área onde é guardado (armazenado) o algoritmo a ser executado e os dados a serem utilizados pelo mesmo. Todos os dados fornecidos ao computador e o resultado de suas operações ficam guardados na memória. A memória pode ser comparada a um armário cheio de gavetas, onde cada dado a ser guardado vai para as gavetas e cada uma delas recebe um nome único, por exemplo: a gaveta das meias, a das fotos, e assim por adiante. Na informática, essas gavetas possuem o nome de variáveis (campos). É a partir do manuseio das variáveis pelos programas de computador que são gerados os resultados desejados.

Dispositivo de entrada: é o meio pelo qual os dados são inseridos no algoritmo para que o programa os processe. Um exemplo é o teclado por onde se informa ao computador o que desejamos. É necessário fornecer um nome, responder a uma questão ou pressionar a tecla <Entra> para representar uma ação.

Dispositivo de saída: é o meio pelo qual o computador apresenta os dados, resultante do processamento do algoritmo. Pode ser uma impressora, um monitor (vídeo, tela, ecrã) ou um dispositivo de armazenamento de dados (CD, DVD, HD, disco rígido), entre outros.

Funcionamento de um computador

Todos os computadores, independentemente do tamanho, são conceitualmente semelhantes ao esquema da figura apresentada, onde são executadas 4 (quatro) operações básicas. Elas são as seguintes:

Operações de entrada e saída: estas operações servem para introduzir dados na memória do computador ou para exibi-las, através de qualquer dispositivo de saída, onde se pode tomar contato com elas. Ler dados do teclado é uma operação de entrada e escrever dados na tela (monitor, ecrã), é de saída.

Operações aritméticas: são utilizadas na realização de operações matemáticas (adição, subtração, multiplicação, exponenciação e divisão).

Operações lógicas e relacionais: são utilizadas para efetuar comparações, como verdadeiro e falso.

Movimentação de dados entre os vários componentes: transferência dos dados entre as partes do computador. Por exemplo, instruções que são passadas pela unidade de controle para a unidade lógica aritmética; para a realização das operações aritméticas e, depois, o resultado transferido para a memória para ser guardada (armazenada).

Page 29: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 2 9

Como é feita a memória do computador

A memória é um dispositivo eletrônico, utilizado em um computador ou em qualquer equipamento eletrônico, é uma sequência de células numeradas onde cada uma delas pode possuir informação. A informação pode ser uma instrução ou um dado. A instrução, conhecida como comando, é uma ação que diz ao computador o que fazer. O dado é qualquer coisa que representa o mundo que desejamos representar, poder ser uma bola, carro, um número, um nome que é utilizado pelas instruções. Qualquer célula pode conter instrução ou dado em qualquer momento, mas sempre uma de cada vez. O tamanho de cada célula e a quantidade que cabe numa memória dependem de cada uma das máquinas.

Fluxo dos dados em um computador

Os computadores possuem um método para tratamento dos dados entre os seus componentes, onde recebem, processam e devolvem o resultado da execução do algoritmo pelo programa.

Para ilustrar, vamos supor que desejamos resolver o seguinte problema:

Calcular a soma (adição) de dois números informados.

A partir da colocação dos problemas, podemos começar a montar um raciocínio, como por exemplo:

a) Receber os números. b) Calcular a soma dos números informados. c) Apresentar o resultado.

Vejamos como é o fluxo dos dados entre as partes do computador, considerando as operações básicas do computador apresentado.

a) Receber os números e movimentá-los para a memória. b) 1 - Mover os números e a operação a ser realizada (soma) da memória para a ULA; 2 - Realizar a operação de soma dos dois números; 3 – Devolver para a memória. c) Mover o resultado da memória para o dispositivo de saída.

Pela observação do fluxo de dados do computador, podemos entender que a construção do algoritmo é feita através da divisão do problema, em pequenos passos. Esses passos, que compõem o algoritmo são denominados (chamados) de comandos (instruções) e passam para as linguagens de programação.

O algoritmo pode ser elaborado da seguinte forma:

Page 30: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Ler X, Y Resultado = X + Y Exibir resultado.

Programa

Os programas de computadores nada mais são do que algoritmos escritos em uma linguagem de computador (COBOL, Java, PHP, Pascal, C, Fortran, Visual Basic, entre outras) e que são interpretados e executados por uma máquina (Hardware, computador). O computador interpreta, de forma rigorosa, cada linha do algoritmo que existe no programa. Pode-se dizer que os programas são grandes listas de instruções para o computador executar. O Programa tem que ser "carregado" na memória principal do computador para ser executado.

O bom desempenho de um computador está na capacidade de executar bilhões de instruções por segundo que estão escritos em programas e no modo como esses programas foram escritos. Desenvolva programas péssimos e veja o resultado decepcionante que é o computador. O segredo cada vez mais importante está em escrever programas cada vez mais eficientes, independente do seu tamanho, e isso só bons programadores é que fazem.

Sistema Operacional

Para que o computador funcione, é necessário que, no mínimo, um programa esteja sempre em execução, desde o momento em que ele é ligado. Este programa que está o tempo todo em execução é chamado de programa operacional, que compõe o chamado sistema operacional (ou sistema operativo). O sistema operacional controla todo o computador, fazendo-o parecer que “trabalha”. Ele determina quais programas vão executar, quando e que recursos (como memória e E/S) ele poderá utilizar. Um sistema operacional muito conhecido e utilizado pelos computadores pessoais é o Windows.

Reflexão

“Para adquirir conhecimento é preciso estudar; para adquirir sabedoria é preciso observar.”

Autor: William Arthur Ward

Page 31: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 3 1

Lógica

Neste capítulo, será vista a diferença entre lógica e raciocínio lógico e qual a sua importância na elaboração de algoritmos; Como materializar os pensamentos de forma organizada através de frases e a utilização de operadores como forma de associar frases para obter respostas. O raciocínio lógico e a lógica como arte de organizá-lo é o início do grande desafio de elaborar algoritmos.

O desenvolvimento das sociedades humanas é uma consequência do desenvolvimento do raciocínio lógico. E isto nada tem a ver com a matemática. É certo que a matemática é guardiã da lógica, porque, está muito vinculada com o desenvolvimento de uma área do conhecimento que engloba fazer contas, conceituando de maneira simplória.

Há muitos séculos, o homem começou a ver que o rio Nilo vazava periodicamente. Observou, também, que a lua repetia-se em suas diversas formas alternando com o sol e, assim, começou a deduzir e a relacionar os fatos. Vejamos: se o Nilo termina de vazar, num determinado momento, e somente depois de determinadas luas é que ele volta a vazar, então é neste período que devemos plantar o trigo. Está aí uma das mais antigas formas de aplicar um raciocínio para criar uma lógica com um fim específico. E, assim, a civilização humana cresceu e floresceu.

Pensando um pouco: será que a civilização humana floresce assim? E se tantas civilizações cresceram e floresceram, por que não existem mais? Por que as civilizações não sobreviveram? Por que o comportamento do ser humano muda, conforme a quantidade de posses? Por que o comportamento humano muda, de

acordo com o poder que ele possui na sociedade? Por que você estuda? Para que você quer dinheiro e mais dinheiro?

Antes de aceitar as coisas deste mundo, questione!

Reflexão

“Não julgueis segundo a aparência, e sim segundo a reta justiça.”

Autor: João 7:24

2

Page 32: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Raciocínio lógico

Raciocinar é pensar logicamente. O raciocínio está ligado ao processo de encadeamento dos pensamentos para obter uma determinada conclusão. O raciocínio pode estar correto ou incorreto e depende dos argumentos envolvidos nele.

O que é lógica

Raciocínio é o ato de pensar e lógica é a forma de como é organizado (encadeado) o raciocínio. A lógica estuda as formas ou estruturas do pensamento. Como existem várias definições para o que é lógica vamos ver uma que diz:

“A lógica é uma ciência do raciocínio”, disse Irving Copi.

Sequência lógica

Uma resposta ou uma conclusão pode ser obtida a partir de um ou mais pensamentos, e quantos mais pensamentos forem necessários para obter a resposta, mais complexo se torna o raciocínio.

Quando se precisa pensar em várias possibilidades, notamos que precisamos encadear os nossos pensamentos, isto é, dar-lhes uma sequência lógica para obter-se a resposta. As respostas sempre são o resultado de uma ou de várias questões formuladas numa determinada sequência.

Sequência lógica são passos executados para se atingir um objetivo.

Instruções

Normalmente, nossos pensamentos estão associados a ações. “Vou esperar que chegue o domingo para ir ao cinema”. Veja que a frase está mencionando as seguintes instruções:

Vou esperar até o domingo. No domingo vou ao cinema.

Na linguagem comum, entende-se por instruções um conjunto de regras ou normas que definem os procedimentos necessários para realizar ou atingir um objetivo específico. Executar uma instrução específica (passo, etapa) da lógica não garante a realização do objetivo da execução. Para isso, é necessário executar um conjunto de instruções e, estas instruções, devem estar em ordem sequencial lógica. Veja o exemplo de uma instrução:

Lógica é a técnica de encadear pensamentos para atingir

determinado objetivo.

Sequência lógica são passos executados até que se atinja um

objetivo ou a solução de um problema.

Instrução é um conjunto de regras ou normas definidas

para atingir um objetivo.

O raciocínio pode estar correto ou incorreto.

Page 33: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 3 3

Abrir a lata de sardinha.

Abrir a lata de sardinha representa uma instrução, isto é, um procedimento a ser executado para atingir o objetivo específico. O que vai ser feito com a sardinha, após a lata aberta, ainda é desconhecido.

Instruções são ações que determinam procedimentos necessários para realizar ou atingir um objetivo. As instruções podem estar vinculadas a regras ou normas.

Proposições

Para comunicar uma ideia a terceiros, é preciso elaborar um conjunto de símbolos ou palavras para expressarem um pensamento com sentido completo. Esse conjunto pode ser uma frase, que chamaremos de proposição, por exemplo: quatro é maior que dois, mas também pode ser uma expressão matemática. Exemplo:

4 > 2 Lê-se: quatro é maior que dois.

Uma proposição pode ser expressa em mais de uma forma. Por exemplo:

Carlos é maior que a Ana.

Mas também podemos falar:

Ana é menor que o Carlos.

As duas frases, acima, expressam o mesmo pensamento, a conclusão é a mesma. Neste caso, a conclusão é que Carlos é mais alto que a Ana.

Exemplos de proposições

O número cinco é maior que o número dois. Proposição verdadeira.

O número dois é menor que o número cinco. Proposição verdadeira.

O número quatro é maior que o número oito. Proposição falsa.

O número seis é diferente do número sete. Proposição verdadeira.

Princípios das proposições

Independente da forma como é elaborada, a proposição segue os seguintes princípios:

O princípio da identidade,

O princípio da não contradição,

O principio do terceiro excluído.

Page 34: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Princípio da identidade

O princípio da identidade diz que uma proposição verdadeira é verdadeira e uma proposição falsa é falsa.

Por exemplo: sete é maior de seis. Esta é uma proposição verdadeira, pelo nosso conhecimento matemático.

Princípio da não contradição

O princípio da não contradição diz que uma proposição não pode ser verdadeira e falsa ao mesmo tempo, independentemente da sua forma de construção.

Por exemplo: sete é maior de seis. Esta é uma proposição verdadeira, então não pode ser falsa.

Princípio do terceiro excluído

O princípio do terceiro excluído diz que uma proposição só pode ser verdadeira (V) ou falsa (F). Não pode existir outro valor.

Por exemplo: sete é maior de seis. Esta proposição só pode ser analisada sob o ponto de ser verdadeira ou, então, ela é uma proposição verdadeira.

Pensando um pouco: quando criar uma frase ou uma expressão, pense sempre nestes princípios e o entendimento das lógicas e os seus resultados sempre serão bem mais fáceis de serem identificados.

Reflexão

“Não te furtes de fazer o bem a quem de direito, estando na tua mão o poder de fazê-lo.”

Autor: Salomão. Sl 3: 27

Page 35: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 3 5

Formas de criar a proposição

Uma proposição é uma sentença declarativa elaborada na forma afirmativa ou negativa, na qual podemos atribuir um dos valores: verdadeiro (V) ou falso (F). Uma proposição pode ser criada na forma positiva e na forma negativa e, ainda assim, possuírem o mesmo resultado.

Cuidado para não confundir a forma de criar uma proposição com a negação da proposição.

Forma afirmativa

Na forma afirmativa, a frase está elaborada como o sentido direto.

Por exemplo: quatro é maior que dois. Outro exemplo, Brasília é a capital do Brasil. Mais um; Lisboa é a capital de Portugal. Estas sentenças declarativas estão expressas na forma afirmativa e possuem o valor verdadeiro.

Podem-se construir também sentenças na forma afirmativa, mas que tenham o valor falso. Por exemplo: dois é maior que cinco.

Forma negativa

Na forma negativa, a frase está elaborada como o sentido indireto. Normalmente, se usa a palavra “Não”. Esta é uma forma que torna difícil encontrar o verdadeiro valor da sentença.

Por exemplo: Brasil não é um país do continente Europeu. É uma sentença declarativa, expressa de forma negativa com o valor verdadeiro.

Podem-se construir também sentenças na forma negativa, mas que tenham o valor falso. Por exemplo: dois não é menor que quatro.

Cuidado ao criar proposição na forma negativa

Em muitos casos, uma única proposição não dá o resultado pretendido.

Por exemplo: dois não é maior que quatro. Esta proposição possui o valor verdadeiro, mas seu resultado possui duas possibilidades: a de ser menor e a de ser igual. Neste caso, para poder se obter o único resultado verdadeiro, seria elaborar a seguinte proposição: dois não é maior que quatro e dois não é igual a quatro. Agora sim. Depois que juntadas as duas proposições, é que podemos garantir que dois é realmente menor que quatro. A junção de proposições será abordada mais adiante.

A questão aqui é o seu resultado. O resultado das expressões na forma positiva e na forma negativa são os mesmos? Se não forem os mesmos, então o algoritmo está errado.

Pensando um pouco: quando criar uma frase ou uma expressão, faça sempre pela forma afirmativa que é sempre mais fácil de ser elaborada e de ser entendida.

Page 36: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Não é uma proposição

Uma expressão só pode ser considerada uma proposição, quando se pode atribuir um dos valores: verdadeiro ou falso. Se não for o caso, não pode ser considerada como proposição.

Por exemplo: 5 – X = 3. A expressão não pode ser declarada uma proposição porque não se pode lhe atribuir um valor verdadeiro ou falso. Neste caso, é chamada de sentença aberta. Quando se atribuir um valor para “X” aí, ela passa a ser uma proposição verdadeira ou falsa.

Pensando um pouco: na elaboração de algoritmos ou de lógicas de programação, use somente proposições que vão assumir um dos valores: verdadeiro ou falso, de acordo com os dados atribuídos. Se for diferente disto, algo vai dar errado.

Negação da proposição

As proposições podem ser elaboradas na forma positiva ou na forma negativa, e podem ser negadas. Negar uma proposição quer dizer que se quer obter o seu sentido oposto.

Cuidado para não confundir a forma de criar uma proposição na forma negativa com a negação da proposição.

Por exemplo: temos a seguinte proposição. Carlos é maior que André. Vamos, então, negar. Fica assim: Carlos não é maior que André.

Negar uma proposição

Negar uma proposição significa desejar obter um resultado deferente daquele que se tem.

Por exemplo. Temos a seguinte proposição:

Haverá aula no horário previsto.

Negando a proposição:

Não haverá aula no horário previsto.

Page 37: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 3 7

Cuidados para negar uma proposição

Foi fácil negar uma proposição. Mas é que os exemplos eram simples. Vejamos algo um pouco mais complexo.

O número cinco é maior que o número dois.

Depois de convertida para a negação fica:

O número cinco não é menor que o número dois.

Será que está correta a negação? Neste caso, claro que está. Mas, e o resultado? É o que se deseja?

Quando elaboramos uma proposição na forma negativa podemos ter duas intenções:

Desejar obter resultados diferentes, e isto significa negar algo.

Desejar obter o mesmo resultado, mas através de uma expressão diferente.

Observar que na expressão “cinco não é menor que dois”, a conclusão é que cinco pode ser maior ou igual a dois. Neste caso, a frase nos deixa duas possibilidades. É isso mesmo ou desejamos obter a certeza de que cinco é maior?

Supondo que desejamos obter a certeza que cinco é maior, temos, então, que fazer outra pergunta. Cinco não é igual a dois. Agora sim, podemos concluir, com certeza, que cinco é maior que dois.

Combinação de proposições

As proposições podem ser combinadas para atingir um determinado resultado. A combinação deve seguir uma forma organizada, seguindo determinadas regras, para que o resultado possa ser alcançado. Na combinação, utilizam-se conectores, que são símbolos, analisados, mais adiante, como operadores lógicos.

Quando as proposições forem combinadas, a sua execução deve ser da esquerda para a direita e obedecer à precedência definida pela utilização dos parênteses.

Para facilitar, as proposições podem ser representadas, neste caso, pelas letras “a, b, c, p, q” ou qualquer outra letra.

Tipos de combinações de proposições

As combinações podem ser dos tipos:

Conjunções (e),

Disjunções (ou).

Page 38: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Conjunções (e)

A operação de conjunção (conhecido como operador lógico “e”) é representada tecnicamente pelo símbolo “Λ” e está relacionada à união de duas proposições.

A execução das conjunções dá-se da esquerda para a direita, a partir do resultado de cada combinação executada.

O resultado das conjunções fica verdadeiro se, e somente se, todas as proposições envolvidas forem verdadeiras, senão a resposta será falsa.

Fica assim: se “A” e “B” forem verdadeiros, então o resultado será verdadeiro.

Exemplo de conjunções a = “ser do sexo feminino”. b = “ter mais que 16 anos”. Questão: “ser do sexo feminino” e “ter mais que 16 anos”. Fica assim: a Λ b Algoritmo: Se “a” e “b” forem verdadeiros, então “pode passear com a Mônica”.

Conjunções

Símbolo Representação Lê-se

Λ a Λ b a “e” b

Tabela da Verdade das Conjunções

a Operador b Resultado

V e V V

V e F F

F e V F

F e F F

Legenda: (V) Verdadeiro; (F) Falso

Reflexão

“Não julgueis se não quiserdes ser julgado.”

Autor: Abraham Lincoln

Page 39: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 3 9

Disjunções (ou)

A operação de disjunção (operador “ou”) é representada tecnicamente pelo símbolo “V” e está relacionada à união de proposições.

A execução das disjunções dá-se da esquerda para a direita, a partir do resultado de cada proposição executada.

O resultado das disjunções é verdadeiro quando, pelo menos, uma proposição envolvida for verdadeira; senão, será falso.

Fica assim: se “A” for verdadeira ou “B”, então o resultado será verdadeiro.

Exemplo de disjunções a = “ser do sexo feminino”. b = “ser do sexo masculino”. Questão: “ser do sexo feminino” ou “ser do sexo masculino”. Fica assim: a V b Algoritmo: Se “a” for verdadeira ou “b” for verdadeira, então “pode passear com a turma da Mônica”.

Disjunções

Símbolo Representação Lê-se

V a V b a “ou” b

Tabela da Verdade das Disjunções

a Operador b Resultado

V ou V V

V ou F V

F ou V V

F ou F F

Reflexão

“Não julgueis se não quiserdes ser julgado.”

Autor: Abraham Lincoln

Page 40: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Proposições condicionais (então)

A operação lógica condicional (operador “se... então...”) é representada tecnicamente pelo símbolo “” e está relacionada à tomada de decisão.

A execução das conjunções dá-se da esquerda para a direita, a partir do resultado de cada proposição executada.

A operação lógica condicional é uma expressão que condiciona a execução de uma ação ao resultado de uma condição.

Fica assim: se “A” for verdadeira, então implica que “B” será verdadeira.

Exemplo de condicionais a = “ser estudiosa ”. b = “passar de ano escolar”. Questão: Se for “estudiosa” então “ vai passar de ano escolar”. Fica assim: a => b Algoritmo: Se for “a” então fica “b”

Tabela da Verdade das Condicionais

a Operador b Resultado

V Se, Então V V

V Se, Então F F

F Se, Então V V

F Se, Então F V

Condicionais

Representação Lê-se a b “Se” a “então” b

Reflexão

“Não falarei mal de nenhum homem mas falarei tudo de bom que souber de cada pessoa.”

Autor: Benjamim Franklin

Page 41: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 4 1

Proposições bicondicionais

A operação lógica condicional (operador “se e somente se”) é representada tecnicamente pelo símbolo “” e está relacionada à união de proposições. A execução das conjunções dá-se da esquerda para a direita, a partir do resultado de cada proposição executada.

O resultado da operação somente será verdadeiro se as proposições forem verdadeiras ou se ambas forem falsas.

Fica assim: somente se “A” e “B” forem verdadeiras ou falsas é que a resposta será verdadeira.

Exemplo de bicondicionais a = “passar de ano escolar”. b = “ser estudiosa”. Questão: “passar de ano” se e somente se for “estudiosa”. Fica assim: a <==> b Algoritmo: Somente vai passar de ano, se e somente se, for estudiosa “b”.

Bicondicionais

Representação Lê-se

a <==> b a “se e somente se”

Tabela da Verdade das Bicondicionais

a b Resultado

V V V

V F F

F V F

F F V

Reflexão

“Há pessoas que transformam o SOL numa simples mancha amarela, mas há aquelas que fazem de uma simples mancha amarela o próprio sol.”

Autor: Pablo Picasso

Page 42: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Operadores

Os operadores são meios pelos quais incrementamos, decrementamos, comparamos e avaliamos dados dentro dos programas. Existem três tipos de operadores:

Operadores Aritméticos

Operadores Relacionais

Operadores Lógicos

Operadores aritméticos

Os operadores aritméticos servem para realizar cálculos e operações matemáticas entre números. Existem os seguintes operadores numéricos:

Adição

Subtração

Multiplicação

Divisão

Exponenciação

Raiz quadrada

Resto da divisão

Quociente da divisão

Exemplo de operadores aritméticos Somar 2 com 4 2 + 4 Multiplicar 5 por 3 5 X 3

Vejamos como é composta uma divisão e quais são seus nomes.

Operadores Aritméticos

Símbolo Descrição

+ Adição

- Subtração

* Multiplicação

/ Divisão

* * Exponenciação

S Q R Raiz quadrada

M O D Resto da divisão

D I V Quociente da divisão

3

7 2

1

Divisor

Quociente

Dividendo

Resto

Page 43: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 4 3

Operadores lógicos

Os operadores lógicos servem para combinar expressões com o objetivo de obter um único resultado, verdadeiro ou falso.

Os operadores lógicos são conectores baseados na teoria conhecida como Álgebra Booleana, do matemático inglês George Boole.

Esta teoria baseia-se na lógica binária onde somente existem duas possibilidades:

Verdadeiro

Falso

Na arquitetura de computadores os termos verdadeiro é representado por 1 (um) e falso é representado por 0 (zero).

Os operadores lógicos são:

AND

OR

NOT

Exemplo de operadores lógicos A > B E B > C A maior que B E B maior que C N1 > 2 OU N1 < 9 N1 maior que 2 OU N1 menor que 9

Os conectores ligam duas ou mais expressões cujo resultado final da interpretação é obter o resultado verdadeiro ou falso. Para identificar se o resultado é verdadeiro ou falso, utiliza-se a tabela da verdade das conjunções.

Operadores lógicos

Símbolo Condição

A N D E

O R OU

N O T NÃO (negação)

Reflexão

“Se quer tirar mel, não espante a colmeia.”

Autor: desconhecido

Page 44: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

Operadores relacionais

Os operadores relacionais servem para realizar comparações entre caracteres, variáveis e expressões. Estes operadores sempre retornam valores lógicos (verdadeiros ou falsos / true ou false).

É a partir da utilização de operadores relacionais que se tomam decisões para realizar objetivos. Existem os seguintes operadores relacionais:

Igual

Maior

Maior ou Igual

Menor

Menor ou Igual

Diferente

Exemplo de operadores relacionais X = 2 X igual a 2 X > Y X maior que Y Y >= (A * 3) Y maior ou igual ao resultado da expressão (A * 3) (Y + 1) < (A * 3) Resultado da expressão (Y + 1) menor que o resultado da expressão (A * 3)

Os operadores lógicos permitem que mais de uma condição seja avaliada (testada) em uma única expressão, ou seja, pode-se realizar mais de uma comparação (teste) ao mesmo tempo.

Operadores Relacionais

Símbolo Descrição

= Igual

> Maior

> = Maior ou Igual (Não é menor)

< Menor

< = Menor ou Igual (Não é maior)

< > Diferente

Reflexão

“Nunca ande pelo caminho traçado, pois ele conduz somente até onde os outros foram.”

Autor: G.Bel

Page 45: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

L Ó G I C A

w w w . c a r l o s c a m p o s i n f o . c o m P á g i n a 4 5

Questionário

Lógica

1. Podemos falar que lógica:

A. É a ciência do raciocínio.

B. É a capacidade de pensar.

C. É a capacidade de elaborar equações matemáticas.

D. Nenhuma das opções.

2. A frase é regida por dois princípios. Quais são?

A. Do certo ou errado.

B. Somente pode ser verdadeiro ou errado.

C. Somente pode ser verdadeiro.

D. Não-contradição e do terceiro excluído.

3. Podemos falar que raciocínio lógico:

A. É uma sequência de instruções matemáticas.

B. É o meio pelo qual o ser humano interage com o computador.

C. É uma sequência de pensamentos com o objetivo de obter uma conclusão que pode estar certa ou errada.

D. Nenhuma das opções.

4. O que é o princípio da “não-contradição”?

A. Não pode ser verdadeiro e falso ao mesmo tempo.

B. Somente pode estar no positivo ou na negação.

C. Quando for verdadeiro tem que estar no positivo, e quando for falso tem que estar na negação.

D. Nenhuma das opções.

5. O que quer dizer o princípio do “terceiro excluído”?

A. Somente pode ser verdadeiro ou falso.

B. Não pode ser verdadeiro e falso ao mesmo tempo.

C. Pode estar no positivo ou na negação.

D. Nenhuma das opções.

Page 46: LÓGICA - perse.com.br · ... acompanhando-me no dia a dia do ... para o aprendizado de todas as linguagens ... os conceitos necessários para o entendimento e aplicação prática,

6. Das expressões apresentadas, quais podem ser consideradas corretas?

A. Se A > B e B > C Então C maior.

B. Se A > B e B > C Então A maior.

C. Se A > B e B > C Então B maior.

D. Nenhuma das opções.

7. A partir da conjunção: "p e q", aponte qual opção é verdadeira.

A. Se p for verdadeiro e q for falso, então resultado falso.

B. Se p for falso e q for verdadeiro, então resultado verdadeiro.

C. Se p for verdadeiro e q for verdadeiro, então resultado falso.

D. Nenhuma das opções.

8. A partir da proposição apresentada, indique a opção que apresenta a versão na negativa. “A aula será no horário previsto.”.

A. Não há previsão de aula.

B. A aula será no horário previsto.

C. A aula não será no horário previsto.

D. Nenhuma das opções.

9. Aponte que opção abaixo pode ser considerada como combinação de proposição, utilizando a disjunção.

A. p V q.

B. a Λ b Λ c.

C. p Λ q.

D. Todas as opções.

10. Aponte que opção abaixo pode ser considerada como combinação de proposição, utilizando a condicional de forma errada.

A. Se A > B, então A é maior, senão B é menor.

B. Se A > B, então A é maior.

C. Se (A > B) e (B > C), então A é maior.

D. Nenhuma das opções.

11. Aponte que opção abaixo é uma combinação de proposição, utilizando a conjunção.

A. p V q.

B. a Λ b Λ c.

C. a V b V c.

D. Nenhuma das opções.