Buscar

Slide Unidade 1 de Lógica de Programação

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Curso de Redes de Computadores
Lógica de Programação
Unidade 1 : Introdução a Lógica de Programação
Profª Esp. Kércia Maria Clementino Santos 
LÓGICA
A lógica é o ramo da filosofia que cuida das regras do bem pensar, ou do pensar correto.
 Meio de garantir que nosso pensamento proceda corretamente a fim de chegar a conhecimentos verdadeiros.
A lógica pode nos orientar em direção à verdade. Sem a lógica, ficamos reféns dos "Donos da verdade", dos dogmas absolutos que não podem jamais ser questionados.
ALGORITMO
 É uma sequência de passos que visa a atingir um objetivo definido.
Um algoritmo poderia ser grosseiramente comparado a uma receita culinária. Uma receita é um programa de atividades que deve ser respeitada e cumprida passo-a-passo. Caso um dos passos seja desconsiderado, a receita não dará certo. 
ALGORITMO
Para se ter um algoritmo é necessário: 
1. Que se tenha um número finito de passos;
2. Que cada passo esteja precisamente definido, sem possíveis ambigüidades;
3. Que existam zero ou mais entradas tomadas de conjuntos bem definidos;
4. Que exista(am) uma ou mais saídas;
5. Que exista uma condição de fim sempre atingida para quaisquer entradas e num tempo finito.
Existem diversas formas de representação de algoritmos, mas não há um consenso com relação à melhor delas. Dentre as formas de representação de algoritmos mais conhecidas, sobressaltam: Descrição Narrativa, Fluxograma Convencional, Diagrama de Chapin e Pseudocódigo(Português Estruturado ou Portugol)
Descrição Narrativa
Nesta forma de representação os algoritmos são expressos diretamente em linguagem natural. Para isso devemos obedecer algumas regras básicas: 
• Usar somente um verbo por frase; 
• Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática; 
• Usar frases curtas e simples; 
• Ser objetivo;
• Procurar usar palavras que não tenham sentido dúbio.
 Esta representação é pouco usada na prática porque o uso de linguagem natural muitas vezes dá oportunidade a más interpretações, ambigüidades e imprecisões.
 
Como exemplo, têm-se o algoritmo para trocar um pneu furado:
Afrouxar ligeiramente as porcas.
2. Suspender o carro.
3. Retirar as porcas e o pneu.
4. Colocar o pneu reserva.
5. Apertar as porcas.
6. Abaixar o carro.
7. Dar o aperto final nas porcas.
Fluxograma
É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam ações distintas.O objetivo é facilitar o entendimento das idéias contidas nos algoritmos.
Principais símbolos usados em Fluxogramas:
Exemplo de Fluxograma
Cálculo da média de duas notas de um aluno:
– Obter as notas da primeira e da segunda prova;
– Calcular a média aritmética entre as duas notas;
– Se a média for maior ou igual a 7,0 aluno foi aprovado, senão ele foi reprovado
Diagrama de Chapin
Diagrama criado por Ned Chapin a partir de trabalhos de Nassi-Shneiderman, para substituição do fluxograma tradicional por um diagrama que apresenta uma visão hierárquica e estruturada da lógica do programa.
Representa as estruturas que tem um ponto de entrada e um ponto de saída e são compostas pelas estruturas básicas de controle de seqüência, seleção e repetição.
Enquanto é difícil mostrar o embutimento e a recursividade com o fluxograma tradicional, torna-se mais simples mostrá-lo com o diagrama de Chapin, bem como codificá-lo futuramente em pseudocódigo
Exemplo de Diagrama de Chapin:
Pseudocódigo
Também conhecido como português estruturado ou portugol. É Bastante rico em detalhes e, por assemelhar-se bastante à forma em que os programas são escritos, encontra muita aceitação.
É uma representação suficientemente geral para permitir que a tradução de um algoritmo nela representado para uma linguagem de programação específica seja praticamente direta.
Sintaxe de um Pseudocódigo no Visualg
Algoritmo <nome_do_algoritmo>
<declaração_de_variáveis>
<subalgoritmos>
Inicio
	<corpo_do_algoritmo>
FimAlgoritmo
Exemplo de um Pseudocódigo
//Pseudocódigo para ler um valor, calcular e mostrar o seu triplo.
Algoritmo "CalculoTriplo"
Var N,Triplo: real
Inicio
 Escreva(“Digite um número é: “) 
	Leia N
	Triplo <- N*3
	Escreva ("O triplo do número é ", Triplo)
FimAlgoritmo.
Manipulação de dados
Tipos de Dados
Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos:
As instruções, que comandam o funcionamento da máquina e determinam a maneira como devem ser tratados os dados.
Os dados propriamente ditos, que correspondem à porção das informações a serem processadas pelo computador.
A classificação apresentada a seguir não se aplica a nenhuma linguagem de programação específica, pelo contrário, ela sintetiza os padrões utilizados na maioria das linguagens.
Tipos Inteiros
Tipos Reais
Tipos Caracteres
Tipos Lógicos
Tipos de Dados
Tipos Inteiros
Correspondem aos números inteiros positivos ou negativos. O conjunto desse tipo de dados pode ser definido como Z = { ..., -3, -2, -1, 0 , 1, 2, 3 , ...}
Ex: 35, 0, -56, 1024 entre outros.
Tipos Reais
Correspondem aos números que possuem parte decimal ou são números fracionários, e podem ser positivos, negativos ou zero. O conjunto desse tipo de dados inclui o conjunto dos números inteiros, dos fracionários e dos irracionais . Ex: 3.20(real positivo),0.00 (zero real) e -19.76 (real negativo).
Tipos Caracteres
São caracterizados como tipos caracteres, as seqüências contendo letras, números e símbolos especiais. Uma seqüência de caracteres deve ser indicada entre aspas (“”). Este tipo de dado também é conhecido como alfanumérico, string, literal ou cadeia. Ex: “Rua Alfa, 52 Apto 1”, “Fone 574-9988”
Tipos Lógicos
Os dados deste tipo somente podem assumir dois valores: verdadeiro e falso.
Dado booleano, devido a George Boole, matemático inglês, que deu ao nome à álgebra (álgebra booleana) que manipula este tipo de dados.
Computadores tomam decisões, durante o processamento de um algoritmo, baseados nestes dois valores.
Variáveis
Têm-se como definição de variável tudo aquilo que é sujeito a variações, que é incerto, instável ou inconstante. E quando se fala de computadores, temos que ter em mente que o volume de informações a serem tratadas é grande e diversificado. Desta forma, os dados a serem processados serão bastante variáveis.
Basicamente, uma variável possui três atributos: um nome, um tipo de dado associado à mesma e a informação por ela guardada. Toda variável possui um nome que tem a função de diferenciá-la das demais. Cada linguagem de programação estabelece suas próprias regras de formação de nomes de variáveis. Todavia a maioria delas adota as seguintes regras:
um nome de variável deve necessariamente começar com uma letra;
um nome de variável não deve conter nenhum símbolo especial, exceto a sublinha ( _ ) e nenhum espaço em branco;
 um nome de variável não poderá ser uma palavra reservada a uma instrução de programa.
Definição de Variáveis em Algoritmos
Nos algoritmos, todas as variáveis utilizadas serão definidas no início do mesmo, por meio de um comando de uma das seguintes formas:
 VAR <nome_da_variavel> : <tipo_da_variavel>
ou
VAR <lista_de_variaveis> : <tipo_das_variaveis>
A palavra-chave VAR deverá estar presente sempre e será utilizada uma única vez na definição de um conjunto de uma ou mais variáveis;
 Numa mesma linha poderão ser definidas uma ou mais variáveis do mesmo tipo; Para tal, deve-se separar os nomes das mesmas por vírgulas;
 Variáveis de tipos diferentes devem ser declaradas em linhas diferentes.
Exemplo de definição de variável:
 VAR
 idade: inteiro
Tipos de Variáveis
As variáveis podem ser basicamente de quatro tipos: Numéricas, Caracteres, Alfanuméricas ou Lógicas.
Numéricas: Específicas para armazenamento de números, que posteriormente poderão ser utilizados paracálculos. Podem ser ainda classificadas como Inteiras ou Reais. As variáveis do tipo inteiro são para armazenamento de números inteiros e as do tipo real são para o armazenamento de números que possuam casas decimais.
Caracteres: Específicas para armazenamento de conjunto de caracteres que não contenham números (literais). Ex: nomes.
Alfanuméricas:Específicas para dados que contenham letras e/ou números. Pode em determinados momentos conter somente dados numéricos ou somente literais. Se usado somente para armazenamento de números, não poderá ser utilizada para operações matemáticas.
Lógicas: Armazenam somente dados lógicos que podem ser Verdadeiro ou Falso.
Constantes
Constante é um determinado valor fixo que não se modifica ao longo do tempo, durante a execução de um programa. Conforme o seu tipo, a constante é classificada como sendo Numérica, Caractere, Alfanumérica ou Lógica.
As constantes são muito utilizadas na programação principalmente em situações nas quais temos de referenciar um mesmo valor várias vezes ao longo do programa. Para esses casos, podemos definir um nome de constante e atribuir-lhe um valor.
Definições de Constantes em Algoritmos
Nos algoritmos, todas as constantes utilizadas serão definidas no início do mesmo, por meio de um comando da seguinte forma:
CONST <nome_da_constante> = <valor>
Exemplo de definição de constantes:
CONST PI = 3.14159
 nome_da_empresa = “Enxuga Gelo SA”
Operadores
Operadores são símbolos que indicam a operação que deve ser realizada entre os operandos (constantes e/ou variáveis), produzindo um determinado resultado.
Ex: + e -
De acordo com o número de operandos sobre os quais os operadores atuam, os últimos podem ser classificados em:
binários, quando atuam sobre dois operandos. 
Ex.: os operadores das operações aritméticas básicas (soma, subtração, multiplicação e divisão).
unários, quando atuam sobre um único operando.
Ex.: o sinal de (-) na frente de um número, cuja função é inverter seu sinal.
Outra classificação dos operadores é feita considerando-se o tipo de dado de seus operandos e o valor resultante de sua avaliação. Segundo esta classificação, os operadores dividem-se em aritméticos, lógicos e relacionais.
Um caso especial é o dos operadores relacionais, que permitem comparar pares de operandos de tipos de dados iguais, resultando sempre num valor lógico.
Operador de Atribuição
Um operador de atribuição serve para atribuir um valor a uma variável. Em nossos algoritmos usaremos o operador de atribuição: <-
A sintaxe de uma atribuição é:
		NomedaVariavel <- expressao
Operadores Aritméticos
Os operadores aritméticos se relacionam às operações aritméticas básicas. 
OPERADOR
TIPO
OPERAÇÃO
PRIORIDADE
+
Binário
Adição
4ª
-
Binário
Subtração
4ª
*
Binário
Multiplicação
3ª
/
Binário
Divisão
3ª
%
Binário
Resto da divisão entre dois inteiros
3ª
\
Binário
Quociente da divisão de dois inteiros
3ª
^
Binário
Exponenciação
2ª
+
Unário
Manutenção de sinal
1ª
-
Unário
Inversão de Sinal
1ª
Operadores Relacionais
Os operadores relacionais são operadores binários que devolvem os valores lógicos verdadeiro e falso. Estes operadores são somente usados quando se deseja efetuar comparações.
Comparações só podem ser feitas entre objetos de mesma natureza, isto é variáveis do mesmo tipo de dado.
Operadores Lógicos
Operadores lógicos ou booleanos são usados para combinar expressões relacionais e resultam nos valores lógicos verdadeiro ou falso.
Operador Lógico – E : Só produz o resultado verdadeiro se os dois operando forem verdadeiros
Operador Lógico – OU: Produz o resultado verdadeiro se pelo menos um dos operandos for verdadadeiro 
Operador Lógico - NÃO
Expressões combinam variáveis, operadores e constantes para produzir um resultado.
Variáveis são nomes usados para representar posições na memória onde estão dados que serão processados.
Constantes são símbolos usados para representar dados.
Operadores são usados para combinar as variáveis e constantes fornecendo um valor como resposta.
Avaliação de Expressões
Avaliar primeiro os operadores de maior prioridade.
Se temos de escolher entre operadores de mesma prioridade então escolher primeiro o que está mais à esquerda.
Ex. 4/2*3 -- primeiro divide-se 4 por 2 e em seguida multiplica-se o resultado por 3, dando como resultado 6
Os parênteses usados em expressões têm o poder de “roubar” prioridade dos demais operadores, forçando a avaliação da subexpressão em seu interior. Não são permitidos outros símbolos para esta função tais como { } e [ ].
Expressões
Prioridade dos Operadores
Em expressões podemos misturar vários tipos de operadores. A tabela abaixo mostra a prioridade relativa dos operadores estudados.
Operador
Tipo
Prioridade
não ,- ,+
Unário
1ª
^
Binário
2 ª
* ,/ ,%, \ ,e
Binário
3ª
+ ,- ,ou
Binário
4ª
= ,<>, >=, <= ,>, <
Binário
5ª

Continue navegando