Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva



Documentos relacionados
CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

Resolução de problemas e desenvolvimento de algoritmos

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


Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

Algoritmos e Programação Parte Teórica

Algoritmo e Programação

PROGRAMAÇÃO DE COMPUTADORES (Teoria)

Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia de Computação CECOMP

1.1. Organização de um Sistema Computacional

UNIDADE 6 - PROGRAMAÇÃO MODULAR

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

REVISÃO. É usado para mostrar dados na tela ou na Impressora e podem apresentar mensagens e variáveis. Escreva X Escreva O Resultado de X =, X

Processamento da Informação Teoria. Algoritmos e Tipos de dados

Algoritmos e programação

ILP - Introdução à Linguagem de Programação. Plano de estudo: - Constantes e variáveis. - Atribuindo valores às variáveis.

Conceitos básicos da linguagem C

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

Programação para Computação

10/02/2015. Introdução. Podemos classificar os tipos de dados a serem processados em dados e instruções Dados: Algoritmos e Lógica de Programação

Algoritmos. Cláudio Barbosa

Aula Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof. Fábio Nelson.

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

Programação Estruturada

Estrutura de Dados Básica

Trabalho de laboratório Avaliação semestral Exame final MÉDIA PONDERADA CONCEITO

COMPUTAÇÃO APLICADA. Porém, é necessário considerar que ninguém ensina ninguém a pensar, pois todas as pessoas normais tem este dom.

Algoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo

Programação: Estruturas de seleção

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia de Computação CECOMP

Linguagem de Programação

ALGORITMOS MEMÓRIA, VARIÁVEIS E CONSTANTES, OPERADORES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

TUTORIAL AMBIENTE WEB PORTUGOL

Algoritmos não se aprendem: Copiando algoritmos Estudando algoritmos Algoritmos só se aprendem: Construindo algoritmos Testando algoritmos

7. Estrutura de Decisão

Estruturas de Repetição

Principais códigos utilizados. Codificação. Código binário puro. Codificação binária. Codificação Binária. Código Binário puro e suas variantes

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

Componentes da linguagem C++

Sessão 2 UFCD 0804 Algoritmos

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

Introdução à Engenharia de Computação

ÍNDICE. Tela de Configuração Dados de Etiqueta Configuração da Impressora Configuração do Papel Itens para Inserção...

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00

JavaScript (ou JScript)

ALGORITMOS E ESTRUTURAS DE DADOS I

Velocidade Média Velocidade Instantânea Unidade de Grandeza Aceleração vetorial Aceleração tangencial Unidade de aceleração Aceleração centrípeta

Algoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma

Computador. 1982: os computadores são ferramentas que nos permitem fazer cálculos rápida e comodamente

Algoritmos e Programação de Computadores

LINEAR EQUIPAMENTOS RUA SÃO JORGE, TELEFONE : SÃO CAETANO DO SUL - SP - CEP:

Algoritmos e Linguagens de Programação

Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

TÉCNICAS DE PROGRAMAÇÃO

Arquitetura de Computadores. Tipos de Instruções

Introdução. Introdução. Objetivos da Aula. Bases Computacionais da Ciência(BC-0005)

Processos Estocásticos

Definição de Programas de Computadores e Linguagem de Programação de Comutadores

ESTRUTURA CONDICIONAL

Portal do Projeto Tempo de Ser

1 Funções básicas de implementação de arquivos

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade

Montagem e Manutenção. Luís Guilherme A. Pontes

Introdução a Computação

Oficina - Álgebra 1. Oficina de CNI EM / Álgebra 1 Material do Monitor. Setor de Educação de Jovens e Adultos. Caro monitor,

AULA 12 FUNÇÕES Disciplina: Algoritmos e POO Professora: Alba Lopes alba.lopes@ifrn.edu.br

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I. Prof. Dr. Daniel Caetano

Unidade 5: Sistemas de Representação

Linguagem de Montagem 2. Operações e Operandos

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

ESTRUTURA DE UM PROGRAMA EM C++ Estrutura de um Programa em C++

ALGORITMOS E FLUXOGRAMAS

Lista de Exercícios 3 Estrutura Condicional

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

Programação Funcional. Aula 5. Funções Recursivas. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2011.

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação

AV1 - MA (b) Se o comprador preferir efetuar o pagamento à vista, qual deverá ser o valor desse pagamento único? 1 1, , , 980

Estruturas de Controle A Tomada de Decisões

Variáveis e Comandos de Atribuição

LÓGICA DE PROGRAMAÇÃO

DISPOSITIVOS DE BLOCO. Professor: João Paulo de Brito Gonçalves

LÓGICA DE PROGRAMAÇÃO. Professor Celso Masotti

Sumário Algoritmos e Estrutura de Dados Repetição

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

CURSO DE INFORMÁTICA. Algoritmos. Parte 3. Ricardo José Cabeça de Souza

20 Caracteres - Tipo char

JSP - ORIENTADO A OBJETOS

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Acessando o SVN. Soluções em Vendas Ninfa 2

Equipamentos de rede. Repetidores. Repetidores. Prof. Leandro Pykosz

EXERCÍCIOS. 2. Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e a divisão dos números lidos.

Trabalho 7 Fila de prioridade usando heap para simulação de atendimento

3.1 Definições Uma classe é a descrição de um tipo de objeto.

2. A influência do tamanho da palavra

Algoritmos Computacionais ( Programas )

ICC Introdução para JavaScript

Transcrição:

Algoritmos Estruturas Seqüenciais José Gustavo de Souza Paiva 1

Introdução Objetivo básico da computação auxiliar os seres humanos em trabalhos repetitivos e braçais, diminuindo i i d esforços e economizando tempo O computador é capaz de auxiliar em qualquer coisa que lhe seja solicitada it Totalmente racional Possui energia Entretanto t t Não tem iniciativa Nenhuma independência Não é criativo nem inteligente Por isso, é necessário que ele receba suas instruções nos mínimos detalhes, para que tenha condições de realizar suas tarefas 2

Introdução Finalidade de um computador receber, manipular e armazenar dados Todas essas operações são realizadas por meio de programas Estas tarefas constituem o PROCESSAMENTO DE DADOS Quando construímos um software para realizar determinado processamento de dados, devemos escrever um programa ou vários programas interligados Para que o computador consiga ler o programa e entender o que fazer, este programa deve ser escrito em uma linguagem g que o computador entenda 3

Introdução Esta linguagem g chama-se LINGUAGEM DE PROGRAMAÇÃO As etapas de desenvolvimento de um programa são Análise estuda-se o enunciado do problema para definir os dados de entrada, processamento e dados de saída Algoritmo utiliza-se ferramentas do tipo descrição narrativa, fluxograma ou português estruturado para descrever COMO resolver o problema identificado Codificação transforma-se o algoritmo em códigos na linguagem de programação escolhida 4

Algoritmo Definição Seqüência de passos que visa atingir um objetivo bem definido Esta seqüência de passos deve ser seguida para a realização de uma tarefa Algoritmos não são operações exclusivas de um computador A grande maioria das coisas que fazemos no dia-a-dia, fazemos por via de algoritmos Somar três números Fazer um sanduíche Trocar uma lâmpada Sacar dinheiro em um banco 24 horas IMPORTANTE para a grande maioria dos problemas, é possível haver mais de um algoritmo de resolução 5

Representações de Algoritmos Descrição narrativa Analisar o enunciado do problema e escrever, utilizando uma linguagem natural (língua portuguesa, por exemplo), os passos a serem seguidos para a resolução do problema Vantagem não é necessário aprender nenhum conceito novo Desvantagem línguas naturais são sempre passíveis de ambigüidades, ou seja, podem gerar múltiplas interpretações, e dificultar a posterior transcrição do problema em código 6

Representações de Algoritmos Fluxograma Analisar o enunciado do problema e escrever, utilizando símbolos gráficos predefinidos, os passos a serem seguidos para a resolução dos problemas Vantagem entendimento de símbolos gráficos é mais fácil que entendimento de textos Desvantagens É necessário aprender a simbologia dos fluxogramas Em alguns casos, o algoritmo resultante não apresenta muitos detalhes, dificultando sua transcrição para um programa 7

Fluxograma - Símbolos 8

Representações de Algoritmos Pseudocódigo ou Portugol Analisar o enunciado do problema e escrever, por meio de regras predefinidas, os passos a serem seguidos para a resolução do problema Vantagem a passagem para o código em linguagem de programação é quase imediata Desvantagem exige o aprendizado das regras do pseudocódigo 9

Exemplos de algoritmos Exemplo 1 Faça um algoritmo para mostrar o resultado da multiplicação de dois números Algoritmo em descrição narrativa Passo 1: Receber os dois números que serão multiplicados Passo 2: Multiplicar os números Passo 3: Mostrar o resultado obtido na multiplicação 10

Exemplos de Algoritmos Fluxograma 11

Exemplos de Algoritmos Pseudocódigo ALGORITMO DECLARE N1,N2,M NUMÉRICO ESCREVA Digite dois números: LEIA N1, N2 M N1 * N2 ESCREVA Multiplicação =, M FIM 12

Exemplos de Algoritmos Exemplo 2 Faça um algoritmo para mostrar o resultado da divisão de dois números Algoritmo em descrição narrativa Passo 1: Receber os dois números que serão divididos Passo 2: Se o segundo número for igual a zero, não poderá haver divisão, pois não existe divisão por zero; caso contrário, dividir os números e mostrar o resultado da divisão 13

Exemplos de Algoritmos Fluxograma 14

Exemplos de Algoritmos Pseudocódigo ALGORITMO DECLARE N1, N2, D NUMÉRICO ESCREVA Digite dois números: LEIA N1, N2 SE N2 = 0 ENTÃO ESCREVA Impossível dividir. SENÃO INÍCIO D N1/N2 ESCREVA Divisão =,D FIM FIM ALGORITMO 15

Exercício Faça um algoritmo para calcular a média aritmética entre duas notas de um aluno, e para mostrar a situação deste aluno, que pode ser APROVADO ou REPROVADO, considerando que a média de aprovação é 6 Faça um algoritmo para calcular o novo salário de um funcionário. Sabe-se que os funcionários que possuem salário anual até R$500,00 terão aumento de 20%, os demais terão aumento de 10% 16

Variável Um algoritmo, e posteriormente um programa, recebe dadosd Tais dados precisam ser armazenados no computador, para que possam ser utilizados no processamento Este armazenamento é feito na memória Os dados são armazenados em locais específicos da memória, denominados ENDEREÇOS DE MEMÓRIA Assim, quando uma operação aritmética recebe dois operandos, cada operando é armazenado em um endereço de memória diferente, para ser utilizado no cálculo l Como cada endereço de memória pode armazenar dados várias vezes, ou seja, seu conteúdo pode variar, chamamos estas posições de variáveis i 17

Variável Cada variável representa, desta forma, uma posição de memória, ói e possui um nome e um tipo Seu conteúdo pode variar ao longo do tempo, durante a execução de um programa Éi importante t ressaltar que, apesar de uma variável poder armazenar diversos valores durante a execução de um programa, ela só pode armazenar um valor a cada instante Todo computador possui uma tabela de alocação que contém o nome da variável, seu tipo (para determinar quantos bytes ocupará) e o seu endereço inicial de armazenamento Assim, quando queremos buscar algum dado na memória, basta saber o nome da variável, que o computador, por meio da tabela de alocação, vai buscá-lo automaticamente 18

Tipos de Dados Os tipos de dados determinam quantos bytes de memória uma determinada variável ocupará Os mais comuns são numérico, lógico e literal ou caractere Numérico Podem representar números inteiros ou reais Os números inteiros podem ser negativos ou positivos, e ocupam 2 bytes no computador Desta forma, variam entre -32.767 e +32.768 Os números reais podem ser negativos ou positivos, e ocupam 4 bytes, e podem representar números com 6 a 11 dígitos significativos com sinal 19

Lógico Tipos de Dados Também chamados de booleanos Podem assumir os valores VERDADEIRO e FALSO Ocupam apenas 1 byte de memória Literal ou caractere Dados formados por um caractere, ou uma cadeia de caracteres Ocupam um byte de memória por caractere 20

Identificadores Representam os nomes das variáveis, dos programas, constantes, rotinas, entre outros Regras básicas para formação de identificadores Caracteres permitidos números, letras maiúsculas ou minúsculas e o caractere sublinhado _ O primeiro caractere dever ser sempre uma letra ou o caractere sublinhado Não são permitidos caracteres em branco e caracteres especiais (@,$,+,-,%,!) %!) Não é possível utilizar palavras reservadas nos identificadores, ou seja, palavras que pertencem à linguagem de programação utilizada 21

Identificadores Exemplos A a Nota nota X5 nota_1 dia 22

Estrutura Seqüencial Estrutura básica para algoritmos em pseudocódigo ALGORITMO DECLARE Bloco de comandos FIM_ALGORITMO 23

Declaração de Variáveis Variáveis são declaradas após a palavra DECLARE, e os tipos mais utilizados são NUMÉRICO, LITERAL ou LÓGICO Exemplo DECLARE X NUMÉRICO Y, Z LITERAL teste LÓGICO 24

Atribuição Utilizado para atribuir um determinado valor ou operação à uma variável Representado pelo símbolo Exemplos X 4 Y Y + 2 Z aula Teste FALSO 25

Entrada/Saída de dados O comando de entrada é utilizado para receber dados informados pelo usuário Representado pela palavra LEIA Exemplo LEIA X (os dados informados pelo usuário serão armazenados na variável X) O comando de saída é utilizado para mostrar dados para o usuário, na tela do monitor, ou na impressora, entre outros Representado pela palavra ESCREVA Exemplo ESCREVA Y (mostra o valor armazenado na variável Y) Exemplo ESCREVA Conteúdo de X é,x 26

Exercícios 1. Faça um programa que receba quatro números inteiros, calcule e mostre a soma desses números 2. Faça um programa que receba três notas, calcule e mostre a média aritmética entre elas 3. Faça um programa que receba três notas e seus respectivos pesos, calcule e mostre a média ponderada entre essas notas 4. Faça um programa que receba o salário de um funcionário, calcule e mostre o novo salário, sabendo-se que este sofreu um aumento de 25% 5. Faça um programa que receba o salário-base de um funcionário, calcule e mostre o salário a receber, sabendo-se que esse funcionário tem gratificação de 5% sobre o salário-base, e paga imposto de 7% sobre o salário-base 6. Faça um programa que calcule e mostre a área de um triângulo 7. Faça um programa que receba dois números inteiros e mostre qual é o maior deles 27

Exercícios 8. Faça um programa que receba o ano de nascimento de uma pessoa e o ano atual, calcule e mostre a idade desta pessoa, e quantos anos essa pessoa terá em 2020 9. Cada degrau de uma escada tem X de altura. Faça um programa que receba essa altura e a altura que o usuário deseja alcançar subindo a escada. Calcule e mostre quantos degraus o usuário deverá subir para atingir seu objetivo, sem se preocupar com a altura do usuário 10. Faça um programa que receba uma hora formada por hora e minutos, e calcule a hora digitada apenas em minutos 28

Referências ASCENCIO, A. F. G., CAMPOS, E. A. V., Fundamentos da Programação de Computadores, São Paulo, Prentice Hall, 2002 29