Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


curso de Logica de programação, Notas de aula de Redes de Computadores

dicas de lógicas de programação

Tipologia: Notas de aula

Antes de 2010

Compartilhado em 11/01/2010

julio-cesar-leachi-leachi-1
julio-cesar-leachi-leachi-1 🇧🇷

2 documentos

1 / 78

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
CURSO TÉCNICO EM PROCESSAMENTO
DE DADOS
APOSTILA DE LÓGICA DE PROGRAMAÇÃO
CAP
Criação de Algoritmos e Programas
PROFESSOR RENATO DA COSTA
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e

Pré-visualização parcial do texto

Baixe curso de Logica de programação e outras Notas de aula em PDF para Redes de Computadores, somente na Docsity!

CURSO TÉCNICO EM PROCESSAMENTO

DE DADOS

APOSTILA DE LÓGICA DE PROGRAMAÇÃO

CAP

Criação de Algoritmos e Programas

PROFESSOR RENATO DA COSTA

“Não estamos aqui para so- breviver e sim para explorar a oportunidade de vencer adquirin- do o saber!” R E N A T O D A C O S T A

  • PREFÁCIO
  • ALGORITMO
  • ALGORITMO NÃO COMPUTACIONAL.....................................................................................................
  • PROGRAMA
  • LINGUAGENS DE PROGRAMAÇÃO...........................................................................................................
  • ALGORITMOS EM “PORTUGOL”
  • TÉCNICAS DE PROGRAMAÇÃO
  • MATEMÁTICA NA INFORMÁTICA
  • OPERADORES ARITMÉTICOS...................................................................................................................
  • OPERADORES RELACIONAIS
  • LINEARIZAÇÃO DE EXPRESSÕES
  • MODULARIZAÇÃO DE EXPRESSÕES MATEMÁTICAS
  • OPERADORES ARITMÉTICOS ESPECIAIS (MOD E DIV)
  • EXPRESSÕES LÓGICAS
  • OPERADORES LÓGICOS
  • TABELA VERDADE
  • FUNÇÕES..........................................................................................................................................................
  • BIBLIOTECAS DE FUNÇÕES
  • FUNÇÕES PRÉ-DEFINIDAS
  • TABELA GERAL DE PRIORIDADES
  • VARIÁVEIS.......................................................................................................................................................
  • VARIÁVEIS DE ENTRADA E SAÍDA
  • IDENTIFICADORES
  • SINAL DE ATRIBUIÇÃO...............................................................................................................................
  • CONSTANTES..................................................................................................................................................
  • SINAL DE IGUALDADE
  • TIPOS DE DADOS
  • TIPOS PRIMITIVOS DE DADOS
  • COMANDOS BÁSICOS DE ENTRADA E SAÍDA(INPUT/OUTPUT)....................................................
  • FLUXO DE UM ALGORITMO
  • CORPO GERAL DE UM ALGORITMO
  • ESTRUTURAS SEQÜÊNCIAIS
  • ; PONTO E VÍRGULA ;
  • PRIMEIRO ALGORITMO.............................................................................................................................
  • OUTROS ALGORITMOS DE EXEMPLO
  • {LINHAS DE COMENTÁRIO}......................................................................................................................
  • ‘ASPAS SIMPLES’...........................................................................................................................................
  • ESTRUTURAS CONDICIONAIS SIMPLES
  • NINHOS DE SE.................................................................................................................................................
  • ESTRUTURAS DE CONDIÇÃO.................................................................................................................... ALGORITMO CINCO...................................................................... ERRO! INDICADOR NÃO DEFINIDO.
  • ESTRUTURA DE REPETIÇÃO DETERMINADA ALGORITMO SEIS ERRO! INDICADOR NÃO DEFINIDO.
  • ALGORITMO OITO ALGORITMO SETE......................................................................... ERRO! INDICADOR NÃO DEFINIDO.
  • ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO INICIAL
  • ALGORITMO NOVE
  • ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO FINAL
  • ALGORITMO DEZ..........................................................................................................................................
  • ALGORITMO ONZE.......................................................................................................................................
  • PROGRAMAS EQUIVALENTES

PREFÁCIO

O trabalho a que me propus é resultado de minha experi- ência em ministrar a disciplina CAP (criação de Algoritmos e Programas) desde 1996, motivado pela falta de texto relacio- nado às condições e necessidades do curso. O objetivo principal da Lógica de Programação é demons- trar técnicas para resolução de problemas e, conseqüentemen- te, automatização de tarefas. O aprendizado da Lógica é essencial para formação de um bom programador, servindo como base para o aprendizado de to- das as linguagens de programação, estruturadas ou não. De um modo geral esses conhecimentos serão de supra im- portância pois ajudarão no cotidiano, desenvolvendo um racio- cínio rápido. Partindo do princípio que “a única coisa constante no mundo é a mudança”, forneço abaixo meu endereço eletrônico para que você possa me ajudar, enviando críticas, elogios ou sugestões que servirão para o eterno aprimoramento desse tra- balho.

[email protected] www.renatodacosta.net

Para criamos um algoritmo devemos observar ou entender primeiro o padrão de comportamento de um processo e depois passa-lo para o papel.

PROGRAMA

Um programa nada mais é do que um algoritmo escrito em uma linguagem computacional. Aprender uma linguagem de programação sem dominar a cri- ação de algoritmos não faz sentido, seria o mesmo que ter um vocabulário vasto, mas não saber usar as palavras certas na hora certa. Sabendo algoritmo é relativamente fácil criar um programa em qualquer linguagem, basta pesquisar qual comando realiza a ação desejada.

LINGUAGENS DE PROGRAMAÇÃO

São Softwares básicos que permitem o desenvolvimento de programas em uma linguagem de alto nível semelhante a que pensamos ou escrevemos e que posteriormente são convertidas para uma linguagem de máquina interpretada pelo computador. Possuem um poder de criação ilimitado, desde jogos, edi- tores de texto, planilhas eletrônicas até sistemas operacio- nais. Existem várias linguagens de programação, cada uma com suas características de linguagem próprias. Exemplos: Pascal, Clipper, C, Visual Basic, Delphi, Java entre outras. Observação:

Existem linguagens que criam arquivos executáveis e outras que criam programas interpretados pelo próprio ambiente de desenvolvimento, implicando sempre no uso do mesmo para exe- cução do programa. Ex: dBase

ALGORITMOS EM “PORTUGOL”

Durante nosso aprendizado, iremos aprender a desenvolver nossos algoritmos em uma pseudolinguagem conhecida como “Por- tugol” ou Português Estruturado. “Portugol” é derivado da aglutinação de Português + Al- gol. Algol é o nome de uma linguagem de programação usada no final da década de 50. Vale ressaltar que não existe um padrão para os comandos usados nos algoritmos, cada professor, cada autor explica co- mo acha mais fácil. Convenhamos que o mais importante é a ló- gica, ou seja, o pensamento elaborado e não a linguagem uti- lizada. Eu particularmente gosto e adotei uma linguagem algo- rítmica muito próxima de um Pascal traduzido. Por que? A lin- guagem Pascal é didática, dispõe de todos os recursos para o desenvolvimento de bons hábitos para criação de programas, além de ainda ser muito utilizada nas universidades atuais. Existem ainda outras formas de se criar algoritmos, como através de fluxogramas onde cada instrução é representada por um desenho. Apesar dos fluxogramas darem uma boa visualização

Exercícios:

  1. Por quê é importante estudar algoritmo?
  2. Crie um algoritmo não computacional que descreva como trocar um pneu de um carro.
  3. O que é um programa?
  4. Cite 3 linguagens de programação atuais:
  5. É necessário ter um computador para criar Algo- ritmos?
  6. Por que podemos dizer que um algoritmo é estáti- co e possui aspecto dinâmico?

MATEMÁTICA NA INFORMÁTICA

Como a maioria dos programas possui algum tipo de ex- pressão matemática, iremos começar a estudar seus operadores.

OPERADORES ARITMÉTICOS

  • Adição
  • Subtração
  • Multiplicação / Divisão ^ ou ** Exponenciação ex. 2 3 = 2 ^ 3 ou 2 ** 3 Qual o resultado da expressão abaixo? 2+2/ Lembre-se que a prioridade dentre os operadores descri- tos anteriormente é a mesma da matemática, primeira a expo- nenciação seguido da multiplicação e divisão e por último a soma e subtração. Logo o resultado é 3.

OPERADORES RELACIONAIS

Maior que < Menor que = Maior ou Igual <= Menor ou Igual = Igual <> Diferente

Primeiro resolve-se o que está em parênteses. 2+2/2=

OPERADORES ARITMÉTICOS ESPECIAIS (MOD e DIV)

MOD Retorna o resto da divisão entre 2 números intei- ros. DIV Retorna o valor inteiro que resulta da divisão entre 2 números inteiros. Exemplo:

Observação: Como foi bem destacado acima nunca poderemos ter uma ex- pressão tipo: 2,8 mod 2, pois 2,8 não é um número inteiro. Observe:

  • 8 * 3 + 7 mod 2 + 6 * 9
  • Calculando: 24 + 1 + 54 = 79 Observação: A prioridade dos operadores especiais é i- gual a da multiplicação ou divisão.

MOD DIV

13 DIV 2 = 6

13 MOD 2 = 1

Exercícios: 1)Calcule as expressões aritméticas abaixo: a) 75 / 5 * 3 + 6 mod 2 * 1, b) 7 div 2 +6 mod 2 *5 + 6 / 6 c) 5 * 2 ** 3 + 7 ** 2 * 3

  1. Sabendo que A=3, B=7, C=8, D=42, G=5, H=-6, calcule: a) – A * B * C div D + G + H

A B A E B A OU B NÃO (A)

V V V V F

V F F V F

F V F V V

F F F F V

NÃO(3<>3) Verdadeiro

`

F

V

NÃO

Exercícios: 1)Responda o resultado lógico (V ou F) das expressões abaixo, sabendo que A = V, B = V, C = F, D = V, G = V. a) A e B e C ou D e não G b) (A ou B) e C e D e não G ou H

  1. Monte as tabelas verdade das expressões abaixo: a) A ou B e não C b) A ou não B e C c) A e B ou não A d) A e B ou C ou não B OBS: Quando temos uma coluna em uma tabela verdade com todos os valores verdadeiros chamamos de Tautologia e quando todos os valores são falsos chamamos de contradição.

SQRT( ) (^) RAIZ QUADRADA x (Square Root) SQR( ) ELEVA AO QUADRADO x 2 TRUNC( ) VALOR TRUNCADO Ex.trunc(7,9)=7 ou trunc(7,1) = ROUND( ) VALOR ARREDONDADO Ex. Round() de 7,0 até 7,4 = 7 e de 7,5 até 7,9 = 8 LOG( ) LOGARITMO SIN( ) SENO COS( ) COSENO TAN( ) TANGENTE

As funções acima são as mais comuns e importantes para nosso desenvolvimento lógico, entretanto, cada linguagem pos- sui suas funções próprias. As funções podem ser aritméticas, temporais, de texto etc.

TABELA GERAL DE PRIORIDADES

PRIMEIRO PARÊNTESES E FUNÇÕES

SEGUNDO SINAIS DE MENOS E MAIS PARA

OPERANDOS UNÁRIOS.

TERCEIRO EXPONENCIAL

QUARTO MOD, DIV, MULTIPLICAÇÃO E DI-

VISÃO

QUINTO SOMA E SUBTRAÇÃO

SEXTO OPERADORES RELACIONAIS

SÉTIMO NÃO

OITAVO E

NONO OU