• Nenhum resultado encontrado

Tópicos preliminares. O que é Lógica?

N/A
N/A
Protected

Academic year: 2021

Share "Tópicos preliminares. O que é Lógica?"

Copied!
12
0
0

Texto

(1)

Tópicos preliminares

Prof. Hudson Costa hudsoncosta@terra.com.br www.hudsoncosta.wordpress.com

O que é Lógica?

A Lógica trata da correção do pensamento. Como filosofia, ela

procura saber por que pensamos assim e não de outro jeito. Com arte ou

técnica, ela nos ensina a usar

(2)

O que é um algoritmo?

Algoritmo é uma seqüência de passos que visam atingir um objetivo bem definido.

Podemos definir algoritmo da seguinte maneira também:

“Algoritmo é a descrição de um conjunto de ações que, obedecidas, resultam numa sucessão finita de passos, atingindo o objetivo”.

O que é um padrão de

comportamento?

Imagine a seguinte seqüência de

números: 1, 6, 11, 16, 21, 26,... Para determinar o sétimo elemento da série, precisamos descobri qual a sua regra de formação, isto é, seu padrão de

(3)

Quais os obstáculos de um

programador?

Certamente, o maior problema que

envolve a construção de algoritmos é a complexidade: portanto, quando

tentamos construir um, o objetivo principal é vencer a complexidade do problema a ser solucionado.

O que é complexidade?

Para nós, complexidade será sempre encarada como sinônimo de variedade, que por sua vez representa a

(4)

O que? versus Como?

Uma das maiores responsáveis, talvez a maior, pelo aumento desmedido da complexidade é a forma errônea de autoquestionar-se a respeito de um dado problema, pois isso pode levar a respostas irrelevantes à solução do mesmo, gerando algoritmos mais complexos do que o necessário.

O que versus Como?

(5)

Legibilidade

Mede a capacidade de compreensão do algoritmo por qualquer observador (que não o construiu), a clareza com que sua lógica, está exposta. Quanto mais

legível for o algoritmo, menor será a sua complexidade, portanto, devemos cuidar para não diminuir a legibilidade, já que estaremos aumentando

desnecessariamente a complexidade.

Método para construção de

algoritmos

1. Ler atentamente o enunciado.

2. Retirar do enunciado a relação de entradas de dados.

3. Retirar do enunciado a relação de saídas de dados.

4. Determinar o que deve ser feito para transformar as entradas determinadas nas saídas especificadas.

(6)

Tipos primitivos

 Inteiro: toda e qualquer informação numérica

que pertença ao conjunto dos números inteiros relativos (negativa, nula ou positiva).

 Real: Toda e qualquer informação numérica

que pertença ao conjunto dos números reais.

 Caractere: toda e qualquer informação

composta por um conjunto de caracteres alfanuméricos e/ou especiais (# $ % &).

 Lógico: toda e qualquer informação que pode

apenas assumir duas situações.

Constantes e Variáveis

Constantes: entendemos que uma informação é constante quando não sofre nenhuma variação no decorrer do tempo.

Variável: uma informação é classificada como variável quando tem a

(7)

Formação de identificadores e

declaração de variáveis

1. Devem começar por um caracter alfabético.

2. Podem ser seguidos por mais caracteres alfabéticos e/ou numéricos.

3. Não é permitido o uso de caracteres especiais. No ambiente computacional, as informações variáveis

são guardadas em dispositivos eletrônicos analogamente chamado de “memória”. Exemplos:

X : inteiro;

NOME, ENDERECO: caractere; RESPOSTA: lógico;

SALARIO: real;

Expressões e operadores aritméticos

Denominamos expressão aritmética aquela cujos

operadores são aritméticos e cujos operandos são constantes e/ou variáveis do tipo numérico (inteiro e/ou real).

Chamamos de operadores aritméticos o conjunto de símbolos que representa as operações básicas da matemática:

(8)

Funções Matemáticas

sen(x): seno de x

cos(x): cosseno de x tg(x): tangente de x

arctg(x): arco cuja tangente é x arccos(x): arco cujo cosseno é x arcosen(x): arco cujo seno é x abs(x): valor absoluto (módulo) de x

int(x): a parte inteira de um número fracionário frac(x): a parte fracionária de x

ard(x): transforma, por arredondamento, um número fracionário em inteiro

sinal(x): fornece valor -1, +1 ou zero conforme o valor x seja negativo, positivo ou nulo.

rnd(x): valor randômico a x.

Operadores relacionais

= (igual a) <> (diferente de) > (maior que) >= (maior ou igual a) < (menor que) <= (menor ou igual a)

Operadores lógicos

Símbolo Função

e conjunção

ou disjunção (não-exclusiva) xou disjunção (exclusiva)

(9)

Tabelas verdade

(10)

Comando de atribuição

Um comando de atribuição permite-nos fornecer um valor a uma certa variável, onde o tipo dessa informação deve ser compatível com o tipo da variável, isto é, somente podemos atribuir um valor lógico a uma variável capaz de comportá-lo, ou seja, uma variável declarada do tipo lógico.

Exemplo: A, B: lógico; X: inteiro; A  verdadeiro; X  8 + 13 DIV 5; B  5 = 3;

Comandos de entrada e saída

Um algoritmo deve permitir ao usuário fornecer qualquer tipo de informação a algumas variáveis, mesmo sem saber ao certo que informação será fornecida. Então, assim como havia um comando para atribuir um valor à determinada variável, temos também um comando que permite que o usuário forneça um valor, isto é, que realize uma entrada de dados. O comando de entrada de dados possui a seguinte sintaxe:

leia ( variável1, variável2,..., variávelN);

(11)

Comandos de entrada e saída

Exemplos de entrada: leia (X);

leia(A, XPTO, NOTA);

Exemplos de saída: escreva(Y);

escreva(A, XPTO, NOTA); escreva(“Bom dia”, NOME);

escreva(“Você pesa”, X*2, “quilos”);

Blocos

Um bloco pode ser definido como um conjunto de ações com uma função definida: neste caso um algoritmo pode ser definido como um bloco. Ele serve também para definir os limites nos quais as variáveis declaradas em seu interior são conhecidas. Exemplo:

inicio {início do bloco}

| {declaração de variáveis} | | {seqüência de ações} | | |

(12)

Exercícios

1. Crie uma seqüência lógica para tomar um banho.

2. Um homem precisa atravessar um rio com um barco que possui capacidade de carregar apenas ele mesmo e mais uma de suas três cargas, que são: um lobo, um bode e um maço de alfafa. O que o homem deve fazer para conseguir atravessar o rio sem perder suas cargas?

3. Construa um algoritmo explicitando todos os passos que devem ser seguidos para encontrar um dado livro numa biblioteca. 4. Três jesuítas e três canibais precisam atravessar um rio; para tal

Referências

Documentos relacionados

 Moldes- Depois que um organismo foi envolvido por lama, esta transforma-se em uma rocha, e o resíduo do organismo é retirado da rocha, deixando apenas o formato do mesmo.. 

POLIMERIZAÇÃO Reações químicas usadas para produzir polímeros Essas reações são capazes de unir sequencialmente moléculas que são denominadas de monômeros à uma cadeia

Um diário escolar serve para que o professor ou professores possam fornecer ao aluno um guia para manter os estudos em dia durante as ferias, normalmente um caderno simples com

Em primeiro lugar, apercebemo-nos de que «um alguém» admite mais espaço para a abundância interna a cada consciência individual.. É-nos impossível ser exactamente como outrem;

Está sempre ligada a um verbo da oração principal, sem auxílio de preposição, indicando o alvo sobre o qual recai a ação desse verbo. .. Ex: Quero

Mais uma vez, o aluno usará a atenção para realizar esta atividade e por fim, poderão colorir de modo que trabalhe diretamente com a coordenação motora fina... Nesta atividade

Em nosso espaço de coworking, localizado no Brooklin, você encontrá uma variedade de pensadores inovadores, focados em seus trabalhos e em metas para alcançar o sucesso.. Com

Todos os dados coletados serão excluídos de nossos servidores quando você assim requisitar ou quando estes não forem mais necessários ou relevantes para oferecermos