Introdução a Lógica de Programação

Documentos relacionados
Lógica de Programação: aula 2. Dariel Mazzoni Maranhão. Uninove: Universidade Nove de Julho. 22 de agosto de 2010

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

Técnicas de Programação

Fundamentos de Programação

Programação Estruturada Aula VisualG

Conceitos Básicos de Algoritmos

Programação de Redes de Computadores

01/08/2011. Tipos de dados Numéricos Alfanuméricos Lógicos. Numéricos. Tipos de dados. Dados Numéricos Inteiros. Dados Numéricos Reais.

Algoritmo e Introdução a Programação. Prof. Josino Rodrigues

Noções de algoritmos - Aula 1

I - CONCEITOS INICIAIS

ALGORITMO E LINGUAGEM DE PROGRAMAÇÃO

Introdução ao VisuALG

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Conceitos Básicos. Professor: Juliano Lucas Gonçalves.

Prof. Jorge Cavalcanti

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares

Variáveis, Expressões Aritméticas e Entrada e Saída de Dados

Conceitos básicos de algoritmos

Fluxogramas e variáveis

Fluxograma. Conjunto de símbolos utilizados em fluxogramas

Portugol. Tiago Alves de Oliveira

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35

LÓGICA DE PROGRAMAÇÃO 1

Noções de algoritmos - Aula 1

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini

Processamento de Dados aplicado à Geociências. AULA 3: Algoritmos computacionais Representação de Algoritmos Sintaxe Tipos de dados Expressões

Capítulo 1 Conceitos Básicos

Pseudocódigo e visualg

Programação Procedimental

- Aula 01, 02, 03 e 04 Apresentação da disciplina.

ALGORITMOS 3ª Aula. 3. Introdução Tipos de dados, variáveis e operadores Tipos de dados

ALGORITMOS E ESTRUTURA DE DADOS

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

INFORMÁTICA APLICADA AULA 03 ALGORITMOS

Aula 4 Estruturas Condicionais

ALGORITMOS AULA 2. Profª Amanda Gondim

ALGORITMOS E APLICAÇÕES. FATEC IPIRANGA ADS Noturno 1º semestre de 2012 Prof. Luiz Carlos de Jesus Junior

Objetivo: Desenvolver algoritmos a partir de problemas

TÉCNICO DE INFORMÁTICA - SISTEMAS

Pseudocódigo e Visualg

Algoritmos e Estrutura de Dados I Conceitos de Algoritmos. Prof. Elyssandro Piffer

Introdução aos Algoritmos

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto

CURSO de NIVELAMENTO INTRODUÇÃO À PROGRAMAÇÃO

CAPÍTULO 3 INSTRUÇÕES BÁSICAS

Algoritmos e Programação

Introdução à Lógica de Programação Utilizando Perl. Thiago Yukio Kikuchi Oliveira

Professor Mauricio Lederer Algoritmos. Entrada e saída de dados

Linguagem Computacional

Introdução aos Algoritmos

Introdução à Computação

Oficina de Python Prof. Me. José Carlos Perini

CONCEITOS DE ALGORITMOS

PROGRAMAÇÃO COMPUTACIONAL I

LO GICA E TE CNICA DE PROGRAMAC ÃO. TÁSSIO JOSÉ GONÇALVES GOMES

Universidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos Prof. Renato Pimentel. Computação

SEBENTA INTRODUÇÃO Á ALGORITMIA

Introdução à Programação de Computadores Fabricação Mecânica

ESTRUTURA CONDICIONAL E SELEÇÃO

Oficina de Python Prof. Me. José Carlos Perini

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Ciência da Computação A&P

Algoritmos Computacionais

Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição

Aula 4B. Lógica e Algoritmos. Profª. Fabiany

AULA 07. HABILIDADES TRABALHADAS: Desenvolver algoritmos utilizando laços a partir da leitura de fluxogramas ou algoritmos em portugol.

Fluxograma Pseudocódigo Estruturas de decisão. Professor Leandro Augusto Frata Fernandes

Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039)

2. Criação de Algoritmos

ALGORITMOS. O que é Algoritmo? Algoritmo é um dos processo para criação

01/08/2011. Introdução Lógica Sequencia lógica Instruções Algoritmos Programas. Lógica. Lógica na programação. Instrução.

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira

Lógica Aula 3. Definição. Estrutura de decisão

ALGORITMOS AULA 1. Profª Amanda Gondim

Pseudocódigo Exercício 6

Algoritmos. Conceitos e Comandos

Lógica de Programação e Algoritmos. Prof. André Y. Kusumoto

Pseudolinguagem. BC0501 Linguagens de Programação t2 Aula 11. Prof. Alysson Ferrari ufabc.edu.br

Transcrição:

Introdução a Lógica de Programação O processo de programação é uma conversa controlada entre um ser humano (tecnicamente preparado) e um computador Linguagem Linguagem de baixo nível Grande dificuldade, pouco convencional Linguagem de alto nível Maior facilidade de comunicação com o computador

Linguagens Linguagens de programação Baixo nível: linguagem de máquina e assembly Alto nível: FORTRAN, COBOL, BASIC, PASCAL, C, JAVA, C++, PHYTON, RUBY

Linguagens Site: The Language List Qual é a melhor linguagem de programação? É aquela em que o desenvolvedor sabe programar e se sente mais confortável

Algoritmo Algoritmo: Conjunto de regras e operações bem definidas e ordenadas destinadas a solução de um problema.

Primeira programadora e Algorítmo Linguagens do final da década 1950 Linguagens da década de 1960 Características e linguagens da década de 1970 Linguagens da década de 1980 Linguagens da década de 1990 e 2000

Algoritmo x Cozinha A receita culinária, tem dois blocos de ação: Ingredientes Modo de preparo Qualquer pessoa de posse de uma receita consegue seguir os passos e preparar a refeição sem grandes dificuldades

Algoritmo x Cozinha Mestre-cuca ou Chef Cozinheiro Ajudantes de cozinha

Raciocínio lógico Conhecimento, versatilidade, experiência, criatividade, responsabilidade, ponderação, calma, auto-disciplina A ARTE DE PENSAR

Programação ou desenvolvimento Para aprender a programar um computador é necessário executar REPETIDAMENTE diversos exercícios e praticá-los constantemente. Isso leva a uma exaustão física e mental. DETERMINAÇÃO PERSISTENCIA AUTODISCIPLINA

Uso de Lógica na programação de computadores PROGRAMAÇÃO ESTRUTURADA Projeto lógico Ferramentas gráficas Diagrama de blocos (não fluxograma Ferramentas textuais (pseudocódigo) PDL (Program Design Language) Português estruturado

Programação estruturada Objetivos: Agilizar a codificação da escrita de programação Facilitar a depuração da leitura Permitir a verificação de falhas no código Permitir a reutilização do código Facilitar as alterações e atualizações do programa

NORMA ISO 5807:1985 (E) Permite demonstrar de forma clara, a linha de raciocínio lógico utilizada por um desenvolvedor Permite que seja fácil a que não conhece programação entender o que se pretende de um determinado programa.

Diagrama de blocos

2.4-Exemplo de Algoritmo Imagine o seguinte problema: Calcular a média final dos alunos da 3ª Série. Os alunos realizarão quatro provas: P1, P2, P3 e P4. Onde: Média Final = P1 + P2 + P3 + P4 / 4

Para montar o algoritmo proposto, faremos três perguntas: a) Quais são os dados de entrada? R: Os dados de entrada são P1, P2, P3 e P4 b) Qual será o procedimento a ser utilizado? (processamento) R: O procedimento será somar todos os dados de entrada e dividi-los por 4 (quatro) P1 + P2 + P3 + P4 / 4 c) Quais serão os dados de saída? R: O dado de saída será a média final

Algoritmo: Receba a nota da prova1 Receba a nota de prova2 Receba a nota de prova3 Receba a nota da prova4 Some todas as notas e divida o resultado por 4 Mostre o resultado da divisão

Exercícios

LPP (Linguagem de projeto de programação) LINGUAGEM DE COMUNICAÇÃO HUMANO- MÁQUINA INÍCIO ATÉ_QUE LEIA ESCREVA REPITA

LPP Regras para escrita do LPP Letras MAIÚSCULAS e de FORMA ZERO = ø

LPP O projeto de um programa de computador concluído é transformado num software. TRADUÇÃO DO PROJETO PROGRAMAÇÃO FORMAL LINGUAGEM DE

Tipos de dados INTEIRO: Números positivos e negativos, excluídos desta categoria qualquer valor numérico fracionário Ex: 35, 0, 234, -56, -9 Representação: INTEIRO Utilizado em operações de processamento matemático

Tipos de dados REAL: Dados numéricos positivos e negativos que pertencem ao conjunto de números reais fracionários e inteiros. Ex: 35, 0, 234, -56, -9, -45.999, 3.1416 Representação: REAL Utilizado em operações de processamento matemático

Tipos de dados CARACTERE/CADEIA: Caracteres delimitados pelos símbolos aspas ( ). São representados por letras (A até Z), números (0 até 9), símbolos (todos os do teclado). Conhecidos como: alfanumérico, string, literal. Ex: PROGRAMAÇÃO, RUA ALFA, 52, (11)55546789, ESPAÇO EM BRANCO, 7 Representação: CARACTERE OU CADEIA Caractere: utilizado para se referir a um único caractere delimitado por aspas. Cadeia: utilizado para se referir a um conjunto de caracteres delimitados por aspas.

Tipos de dados LÓGICO (ou booleano): São dados com valores binários em que apenas um valor pode ser escolhido Ex: sim/não, 0 e 1, verdadeiro/falso Representação: LÓGICO Para se utilizar um dado lógico é necessário estabelecer a forma de representação VERDADEIRO.VERDADEIRO. ou.v. FALSO.FALSO. ou.f. SIM.SIM. ou.s.

Uso de variáveis O nome da variável: Pode assumir qualquer nome O primeiro caractere de identificação não pode ser numérico ou símbolo gráfico Não podem haver espaços em branco Não pode ser usado nenhum nome atribuído a outro comando ou instrução de uma linguagem de programação * vale para LPP e Linguagem de programação

Declaração de variáveis Exemplo de sintaxe var <nome da variável> : <tipo de dado> ex: VAR P5: INTEIRO JUQUINHA: CADEIA

CONSTANTES Constante é um valor que não se altera ex: SAÍDA = ENTRADA + 1.23 (constante)

Declaração de Constantes Ex: CONST PI = 3.14159265 SAIDA=ENTRADA + PI

5-Operadores Os operadores são meios pelo qual incrementamos, decrementamos, comparamos e avaliamos dados dentro do computador. Temos três tipos de operadores: Operadores Aritméticos Operadores Relacionais Operadores Lógicos

Operadores Aritméticos OPERADOR OPERAÇÃO DESCRIÇÃO + +n ou n Manutenção de sinal - -n Inversão de sinal x n Atribuição de valor n a x x n Exponenciação de x n (1/n) x (1/n) Radiciação / x/n Divisão de x por n * x*n Multiplicação de x por n + x+n Adição - x-n subtração div x div n Divisão com quocientes inteiros

Hierarquia das Operações Aritméticas: 1º ( ) Parênteses 2º Exponenciação 3º Multiplicação, divisão (o que aparecer primeiro) 4º + ou (o que aparecer primeiro) TOTAL = PREÇO * QUANTIDADE 1+7 * 2 2 1 = 28 3 * (1-2) + 4 * 2 = 5

Expressões aritméticas Uma operação muito comum em programação de computadores é usar expressões aritméticas para estabelecimento de processamentos matemáticos. Ex: Calcular a área de uma circunferência ÁREA = π RAIO 2 variáveis: ÁREA e RAIO constantes: π ÁREA 3.14159265 * RAIO

Expressões matemáticas Ex: x = {200. [57 : (40+ 2) -51 ] } x (200* (57 / (40 + 2) -51) )

Expressões matemáticas Calcular a área de um triângulo: Fórmula: A = b. h 2 A (b * h) /2

Regras para escrever programas Os comandos do LPP não podem ser escritos dentro dos símbolos do diagrama de blocos A codificação de programas escritos a mão devem ser feitas em letras maiúsculas e de forma Todo valor atribuído diretamente a uma variável será escrito por meio do símbolo de atribuição ( ) Todo valor atribuído diretamente a uma constante será escrito por meio do símbolo de atribuição ( = )

Entrada: LEIA Processamento: Saída: ESCREVA

Exercícios de aprendizagem 1- Desenvolver um programa de computador que efetue a leitura de dois valores numéricos inteiros. Processe a operação de adição dos dois valores e apresente na sequência a soma obtida com a operação. O programador estará sempre diante de um problema, o qual deve ser resolvido primeiramente por ele para depois ser implementado em um computador e então utilizado por um usuário

Fases para resolução do problema ENTENDIMENTO: 1-Ler dois valores desconhecidos, representados pelas variáveis A e B 2-Efetuar a adição das variáveis A e B, cujo resultado será atribuído a variável X 3-Apresentar o valor da variável X, que é o resultado da soma realizada.

Fases para resolução do problema DIAGRAMAÇÃO: INÍCIO A, B X A + B X FIM

Fases para resolução do problema CODIFICAÇÃO: 1-DETERMINAR O NOME PARA O PROGRAMA Ex: PROGRAMA SOMA_NÚMEROS 2-DETERMINAR O TIPO DE DADOS DAS VARIÁVEIS A : INTEIRO B : INTEIRO X : INTEIRO

Fases para resolução do problema PROGRAMA SOMA_NÚMEROS VAR A : INTEIRO B : INTEIRO X : INTEIRO

Fases para resolução do problema Fase de montagem do que está estabelecido no diagrama de blocos: A parte indicada entre os símbolos terminal se chama bloco. As ações do bloco devem ser traduzidas para o LPP. Como foi dito antes temos entrada (leia), processamento ( ) e saída (escreva). O código ficaria assim: INÍCIO LEIA A LEIA B X A + B ESCREVA X FIM

PROGRAMA SOMA_NÚMEROS VAR A : INTEIRO B : INTEIRO X : INTEIRO INÍCIO LEIA A LEIA B X A + B ESCREVA X FIM

2-Elaborar um programa de computador que calcule a área de uma circunferência e apresente a medida da área calculada 3-Desenvolver um programa que calcule o salário líquido de um professor. Para elaborar o programa, é necessário possuir alguns dados, tais como, valor da hora aula, número de horas trabalhadas no mês e percentual de desconto do INSS. Em primeiro lugar, deve-se estabelecer o seu salário bruto para fazer o desconto e ter o salario líquido

Operadores Relacionais DESCRIÇÃO SÍMBOLO Igual a = Diferente de: < > Maior que > Menor que < Maior ou igual a >= Menor ou igual a <=

Condições e Decisões Condição: uma obrigação que se impõe e se aceita Decisão: optar, escolher um caminho O ato de se tomar uma decisão se baseia no fato de haver uma condição

Condições e Decisões Do ponto de vista computacional, uma condição é uma expressão booleana cujo resultado é um valor lógico falso ou verdadeiro.

Condições e Decisões Exemplo: Tendo duas variáveis A = 5 e B = 3 Os resultados das expressões seriam: EXPRESSÃO A = B A <> B A > B A < B A >= B A <= B RESULTADO FALSO VERDADEIRO VERDADEIRO FALSO VERDADEIRO FALSO

Desvio condicional simples COD=COD2 SIM NOME= COD=COD2 JOÃO SIM NÃO COD=COD2 > 1000 SIM NÃO NÃO

Desvio condicional simples No português estruturado: SE ( condição ) ENTÃO [instruções executadas após condição verdadeira] FIM_SE [instruções executadas após condição ser falsa ou após executar instruções da concondição verdadeira]

Exercícios de aprendizagem Elaborar um programa de computador que leia dois valores numéricos reais desconhecidos. Em seguida o programa deve efetuar a adição dos dois valores lidos e apresentar o resultado caso seja maior que 10 ENTENDIMENTO Definir a entrada de 2 valores (variáveis A e B) Efetuar a adição dos valores A e B e atribuir o resultado da adição à variável X Apresentar o resultado da soma armazenada na variável X, caso a variável tenha seu valor maior que 10

Exercícios de aprendizagem DIAGRAMAÇÃO INÍCIO A, B X A + B N X > 10 S X FIM

Exercícios de aprendizagem PROGRAMA ADIÇÃO_DE_NÚMEROS_1 VAR A, B, X : REAL INÍCIO LEIA A, B X A + B SE (X > 10) ENTÃO ESCREVA X FIM_SE FIM

Desvio Condicional Composto No português estruturado: SE ( condição ) ENTÃO [instruções executadas após condição verdadeira] SENÃO [instruções executadas após condição falsa] FIM_SE [instruções executadas após condição ser verdadeira ou falsa]

Exercício de aprendizagem Elaborar um programa de computador que leia dois valores numéricos reais desconhecidos. Em seguida o programa deve efetuar a adição dos dois valores lidos e caso o resultado seja maior ou igual a 10, deve ser somado a 5. Caso contrário o valor do resultado deve ser subtraído de 7. Após a obtenção de um dos novos resultados o novo resultado deve ser apresentado.

ENTENDIMENTO Definir a entrada de 2 valores (variáveis A e B) Efetuar a adição dos valores A e B e atribuir o resultado da adição à variável X Verificar se o resultado é maior ou igual a 10. Se for maior ou igual a 10 somar 5 ao resultado Se for menor que 10 subtrair 7 do resultado Atribuir o resultado à variável R e mostrar

DIAGRAMAÇÃO INÍCIO A, B X A + B N X >= 10 S R X -7 R X + 5 R FIM

PROGRAMA ADIÇÃO_DE_NÚMEROS_2 VAR A, B, X, R : REAL INÍCIO LEIA A, B X A + B SE (X >= 10) ENTÃO R X + 5 SENÃO R X - 7 FIM_SE ESCREVA R FIM