ALGORITMOS E ESTRUTURAS DE DADOS I (Parte 1)

Tamanho: px
Começar a partir da página:

Download "ALGORITMOS E ESTRUTURAS DE DADOS I (Parte 1)"

Transcrição

1 ALGORITMOS E ESTRUTURAS DE DADOS I (Parte 1) Prof. Eduardo Machado Real Conteúdos: Introdução aos algoritmos Estrutura Sequencial Estrutura Condicional Estruturas de Repetição

2 Algoritmos e Estruturas de Dados 1 Prof. Eduardo INTRODUÇÃO Desde o início de sua existência, o homem procurou criar máquinas que o auxiliassem em seu trabalho, diminuindo esforço e economizando tempo. Dentre essas máquinas, o computador vem se mostrando uma das mais versáteis, rápidas e seguras. O computador pode auxiliá-lo em qualquer tarefa. É consciente, trabalhador, possui muita energia, mas não tem iniciativa, nenhuma independência, não é criativo nem inteligente, por isso precisa receber instruções nos mínimos detalhes. A finalidade de um computador é receber, manipular e armazenar dados. Visto somente como um gabinete composto de circuitos eletrônicos, cabos e fontes de alimentação, certamente ele parece não ter nenhuma utilidade. O computador só consegue armazenar dados em discos, imprimir relatórios, gerar gráficos, realizar cálculos, entre outras funções, por meio de programas. Portanto, sua finalidade principal é realizar a tarefa de processamento de dados, isto é, receber dados por um dispositivo de entrada (por exemplo, teclado, mouse, scanner, entre outros), realizar operações com esses dados e gerar uma resposta que será expressa em um dispositivo de saída (por exemplo, impressora, monitor de vídeo, entre outros). Portanto, um computador possui duas partes diferentes que trabalham juntas: o hardware, composto pelas partes físicas, e o software, composto pelos programas. Quando queremos criar ou desenvolver um software para realizar determinado tipo de processamento de dados, devemos escrever um programa ou vários programas interligados. No entanto, para que o computador compreenda e execute esse programa, devemos escrevê-lo usando uma linguagem que tanto o computador quanto o criador de software entendam. Essa linguagem é chamada de linguagem de programação. As etapas para o desenvolvimento de um programa são: Análise Nesta etapa estuda-se o enunciado do problema para definir os dados de entrada, o processamento e os dados de saída. Algoritmo Ferramentas do tipo descrição narrativa, fluxograma ou português estruturado são utilizadas para descrever o problema com suas soluções. Codificação O algoritmo é transformado em códigos da linguagem de programação escolhida para se trabalhar. Portanto, um programa é a codificação de um algoritmo em uma linguagem de programação. 2 - NOÇÕES DE LÓGICA A palavra lógica relaciona-se com a idéia de racionalidade e coerência. Um homem precisa atravessar um rio com um barco que possui capacidade de carregar apenas ele mesmo e mais uma das três cargas que são: um lobo, um bode e um maço de alfafas. Observe as leis naturais: o lobo é carnívoro e o bode é herbívoro. O que o homem deve fazer para conseguir atravessar o rio sem perder suas cargas. O Homem leva o bode da margem 1 para a margem 2. O Homem navega da margem 2 para a margem 1. O Homem leva o lobo da margem 1 para a margem 2. O Homem leva o bode da margem 2 para a margem 1. O Homem leva a alfafa da margem 1 para a margem 2. O Homem navega da margem 2 para a margem 1. O Homem leva o bode da margem 1 para a margem 2. Algumas definições: o "a lógica é a arte de bem pensar" o "a lógica é a ciência das formas do pensamento" o "a lógica nos ensina a colocar ordem no pensamento"

3 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 3 o Nova Andradina é uma cidade do estado de Mato Grosso do Sul. o Asdrúbal nasceu em Nova Andradina. o Portanto, Asdrúbal é Sul-matogrossense. A lógica no dia-a-dia o Quando queremos escrever, falar ou agir corretamente, precisamos colocar ordem no pensamento, isto é, utilizar a lógica. o Exemplo 1: O guarda-roupa está fechado. O terno está dentro do guarda-roupa. Preciso primeiro abrir o guarda-roupa, para depois pegar o terno. A lógica de programação o Em que consiste? A lógica de programação consiste no uso correto das leis do pensamento, da "ordem da razão", de processos de raciocínio e de simbolização formal na programação de computadores. o Qual o objetivo? Permitir a resolução de problemas específicos com soluções de boa qualidade. o O raciocínio lógico pode ser expresso através de várias linguagens: no contexto humano - utiliza-se a palavra escrita/falada que, por sua vez, se baseia num determinado idioma, mas, independente do idioma, tem-se o mesmo raciocínio. no contexto computacional - utilizam-se as linguagens de programação o Vamos utilizar uma forma de representação mais genérica (livre de detalhes computacionais) e que traduza mais fielmente o raciocínio da lógica de programação: ALGORITMOS o Então... O objetivo da lógica de programação é a construção de algoritmos corretos e válidos. Veja os exemplos... Deseja-se escrever um algoritmo, usando português coloquial, para resolver um problema bastante simples, qual seja: trocar uma lâmpada queimada por uma lâmpada nova não queimada e o outro para fazer um sanduíche de queijo. Exemplo1: Trocar uma lâmpada queimada Algoritmo Trocar uma lâmpada queimada pegar uma escada; posicionar a escada debaixo da lâmpada; buscar uma lâmpada nova; subir na escada; retirar a lâmpada queimada; colocar lâmpada nova; Reexaminando o algoritmo 1.1, notamos que ele tem um objetivo bem definido: trocar uma lâmpada queimada. Porém o algoritmo não atingirá seu objetivo se a lâmpada nova estiver queimada. Para tal, acrescentamos um teste condicional (estrutura seletiva). Algoritmo Trocar uma lâmpada queimada (uso de teste condicional) pegar uma escada; posicionar a escada debaixo da lâmpada; buscar uma lâmpada nova; subir na escada; retirar a lâmpada queimada;

4 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 4 colocar lâmpada nova; se a lâmpada nova não acender, então: o retirar a lâmpada queimada; o colocar lâmpada nova; o se a lâmpada nova não acender, então: retirar a lâmpada queimada; colocar a lâmpada nova; se a lâmpada nova não acender, então: retirar a lâmpada queimada;... até quando???? colocar a lâmpada nova; O Algoritmo 1.2 não está terminado. As ações cessarão quando conseguirmos colocar uma lâmpada que acenda (objetivo do algoritmo). Ao invés de reescrevermos várias vezes um conjunto de ações podemos, alterar o fluxo seqüencial de execução para permitir que ações sejam re-executadas quantas vezes forem necessárias. Precisamos expressar essa repetição (estrutura de repetição) garantindo uma condição de parada. Algoritmo Trocar uma lâmpada queimada (uso de estruturas de repetição) pegar uma escada; posicionar a escada debaixo da lâmpada; buscar uma lâmpada nova; subir na escada; retirar a lâmpada queimada; colocar lâmpada nova; enquanto lâmpada nova não acender, faça retirar a lâmpada queimada; colocar lâmpada nova; Exemplo 2: Fazer um sanduíche de queijo (com queijo fatiado) Pegar a faca Pegar o pão Cortar o pão Colocar a faca na mesa Pegar a fatia de queijo Abrir o pão Colocar a fatia de queijo no pão (com queijo não fatiado) Pegar a faca Pegar o pão Cortar o pão Cortar uma fatia de queijo Colocar a faca na mesa Pegar a fatia de queijo Abrir o pão Colocar a fatia de queijo no pão (para qualquer um dos casos acima:) Enquanto tiver pão e queijo Pegar a faca

5 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 5 Pegar o pão Cortar o pão Se o queijo estiver fatiado então Colocar a faca na mesa Pegar a fatia de queijo Senão Cortar uma fatia de queijo Colocar a faca na mesa Pegar a fatia de queijo Abrir o pão Colocar a fatia de queijo no pão 3 CONCEITO DE ALGORITMO E ESTRUTURAS DE DADOS À especificação da seqüência ordenada de passos que deve ser seguida para a realização de uma tarefa, garantindo a sua repetibilidade, dá-se o nome de algoritmo. A seguir alguns conceitos de algoritmos segundo autores da nossa bibliografia: Algoritmo é uma sequência de passos que visa atingir um objetivo bem definido. (FORBELLONE, 1999) Algoritmo é uma sequência finita de instruções ou operações cuja execução, em tempo finito, resolve um problema computacional, qualquer que seja sua instância. (SALVETTI, 1999) Algoritmo são regras formais para a obtenção de um resultado ou da solução de um problema, englobando fórmulas de expressões aritméticas. (MANZANO, 1997) Ação é um acontecimento que, a partir de um estado inicial, após um período de tempo finito, produz um estado final previsível e bem definido. Portanto, um algoritmo é a descrição de um conjunto de comandos que, obedecidos, resultam numa sucessão finita de ações. (FARRER, 1999) Informalmente, um algoritmo é qualquer procedimento computacional bem definido que toma algum valor ou conjunto de valores como entrada e produz algum valor ou conjunto de valores como saída. Portanto, um algoritmo é uma sequência de passos computacionais que transformam a entrada na saída. (CORMEN, 2002) Também podemos visualizar um algoritmo como uma ferramenta para resolver um problema computacional bem especificado. O enunciado do problema especifica em termos gerais o relacionamento entre a entrada e a saída desejada. O algoritmo descreve um procedimento computacional específico para se alcançar esse relacionamento da entrada com a saída. Uma estruturas de dados é um meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações. (CORMEN, 2002) Na Ciência da Computação, uma estrutura de dados é um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados eficientemente. (WIKIPÉDIA, 2010). Para que um computador possa desempenhar uma tarefa é necessário que esta seja detalhada passo a passo, numa forma compreensível pela máquina, utilizando aquilo que se chama de programa. Neste sentido, um programa de computador nada mais é que um algoritmo escrito numa forma compreensível pelo computador.

6 Algoritmos e Estruturas de Dados 1 Prof. Eduardo Método para a construção de qualquer algoritmo Para a construção de qualquer tipo de algoritmo, é necessário seguir estes passos: Definir o processamento, ou seja, quais cálculos serão efetuados e quais as restrições para esses cálculos. Definir os dados de saída, ou seja, quais dados serão gerados. Definir os dados de entrada, ou seja, quais dados serão fornecidos. Construir o algoritmo utilizando um dos tipos. Compreender completamente o problema a ser resolvido, destacando os objetos que o compõem. Testar o algoritmo realizando simulações. 4 TIPOS DE ALGORITMOS Os três tipos mais utilizados de algoritmos são: descrição narrativa, fluxograma e pseudocódigo ou portugol. 4.1 Descrição narrativa A descrição narrativa consiste em analisar o enunciado do problema e escrever, utilizando uma linguagem natural (por exemplo, a língua portuguesa), os passos a serem seguidos para sua resolução. Vantagem: não é necessário aprender nenhum conceito novo, pois uma língua natural, neste ponto, já é bem conhecida. Desvantagem: a língua natural abre espaço para várias interpretações, o que posteriormente dificultará a transcrição desse algoritmo para programa. Algoritmo para somar três números Receber os três números. (passo1) Somar os três números. (passo2) Mostrar o resultado obtido. (passo 3) Fluxograma O fluxograma consiste em analisar o enunciado do problema e escrever, utilizando símbolos gráficos predefinidos, os passos a serem seguidos para sua resolução. Vantagem: o entendimento de elementos gráficos é mais simples que o entendimento de textos. Desvantagem: é necessário aprender a simbologia dos fluxogramas e, além disso, o algoritmo resultante não apresenta muitos detalhes, dificultando sua transcrição para um programa. Símbolos utilizados:

7 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 7 Algoritmo para multiplicar dois números Pseudocódigo ou Portugol O Pseudocódigo ou Portugol é o tipo que utilizaremos para as soluções dos exercícios das nossas aulas e consiste em analisar o enunciado do problema e escrever, por meio de regras predefinidas, os passos s serem seguidos para sua resolução. Vantagem: a passagem do algoritmo para qualquer linguagem de programação é quase imediata, bastando conhecer as palavras reservadas dessa linguagem que serão utilizadas. Desvantagem: é necessário aprender as regras do pseudocódigo. Algoritmo para dividir dois números algoritmo dividir declaração de variáveis inteiro numero1,numero2; início escreva( Digite o primeiro número: ); leia(numero1); escreva( Digite o segundo número: ); leia(numero2); se(numero2 = 0) então escreva( Impossível dividir ); fim se senão resultado numero1/numero2; escreva( A divisão é:, resultado); fim senão fim_algoritmo

8 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 8 Exercícios: 1 Faça um algoritmo em descrição narrativa para: a) Ir para a escola (ou universidade). b) Sacar dinheiro no caixa eletrônico. 2 Faça um algoritmo em fluxograma para mostrar o resultado da divisão de dois números. 5 CONCEITO DE VARIÁVEL Um algoritmo, e posteriormente, um programa, recebem dados, que precisam ser armazenados no computador para serem utilizados no processamento. Esse armazenamento é feito na memória. Assim, uma variável representa uma posição de memória. Possui nome e tipo e seu conteúdo pode variar ao longo do tempo, durante a execução de um programa. Embora uma variável possa assumir diferentes valores, ela só pode armazenar um valor a cada instante. 6 TIPOS DE DADOS Definem os tipos de informações a serem processadas. Os tipos de dados mais utilizados são: numéricos e literais ou caracteres. Numéricos: inteiros e reais Inteiros podem ser positivos ou negativos e não possuem parte fracionária. 15 irmãos, -2 graus. Real - podem ser positivos ou negativos e possuem parte fracionária de altura, 3.5 litros. Literais ou Caracteres São dados formados por um único caractere ou por uma cadeia de caracteres. Esses caracteres podem ser as letras e os números (não podem ser usados para cálculos). aluno, FORMAÇÃO DE IDENTIFICADORES Os identificadores são os nomes das variáveis, dos programas, das constantes, das rotinas etc. As regras básicas são: Os caracteres que você pode utilizar são: os números, as letras maiúsculas, as letras minúsculas e o caractere sublinhado. O primeiro caractere deve ser sempre uma letra ou caractere sublinhado. Não são permitidos espaços em branco e caracteres especiais (@,$,+,-,%,!). Não podemos usar palavras reservadas nos identificadores, ou seja, palavras que pertençam a uma linguagem de programação.

9 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 9 Exemplos: Válidos A a nota numero_1 x4 Não válidos 5b por começar com número E 39 por conter espaço em branco Case por ser palavra reservada Exercício: defina os identificadores abaixo se são válidos ou não válidos, neste caso justifique: a) dia b) prova 2 c) idade_1 d) 4y 8 ESTRUTURA SEQUENCIAL algoritmo Nome_do_algoritmo declaração de variáveis variáveis inicio bloco de comandos; fim_algoritmo 8.1 Declaração de variáveis As variáveis são declaradas após a palavra declaração de variáveis e os tipos mais utilizados são: numérico (inteiro ou real) e literal (caracteres). inteiro x; real y; literal i; 8.2 Comando de atribuição O comando de atribuição é utilizado para conceder valores ou operações a variáveis, sendo representado pelo símbolo. x 4; y 2.5; i A ; 8.3 Comando de Entrada O comando de entrada é utilizado para receber dados digitados pelo usuário, que serão armazenados em variáveis. Esse comando é representado pela palavra leia. leia(x); Um valor digitado pelo usuário será armazenado na variável x.

10 Algoritmos e Estruturas de Dados 1 Prof. Eduardo Comando de saída O comando de saída é utilizado para mostrar dados na tela. Esse comando é representado pela palavra escreva, e os dados podem ser conteúdos de variáveis ou mensagens. escreva(x); Mostra o valor armazenado na variável x. escreva( Conteúdo de Y:,y); Mostra a mensagem Conteúdo de Y: e em seguida o valor armazenado na variável y. Exercício resolvido: 1 Faça um algoritmo que receba dois números inteiros, calcule e mostre a soma desses números. algoritmo Somar declaração de variáveis inteiro num1,num2,soma; início escreva( Digite o número 1: ); leia(num1); escreva( Digite o número 2: ); leia(num2); soma num1+num2; escreva( Resultado:,soma); fim_algoritmo Exercícios: 1 Faça um programa que receba três notas e seus respectivos pesos, calcule e mostre a média ponderada. 2 Faça um programa que receba o salário de um funcionário e o percentual de aumento, calcule e mostre o valor do aumento e o novo salário. 3 O custo ao consumidor de um carro novo é a soma do preço de fábrica com o percentual de lucro do distribuidor e dos impostos aplicados ao preço de fábrica. Faça um programa que receba o preço de fábrica de um veículo, o percentual de lucro do distribuidor e o percentual de impostos, calcule e mostre: a) o valor correspondente ao lucro do distribuidor; b) o valor correspondente aos impostos; c) o preço final do veículo. 4 Faça um programa que calcule e mostre a área de um triângulo. Sabe-se que: A=(base*altura)/2. 5 Faça um programa que calcule e mostre a área de um círculo. Sabe-se que:. 6 Faça um programa que receba um número positivo e maior que zero, calcule e mostre: a) o número digitado ao quadrado; b) o número digitado ao cubo; c) a raiz quadrada do número digitado; 7 Faça um programa que receba a medida do ângulo formado por uma escada apoiada no chão e encostada na parede e a altura da parede onde está a ponta da escada, calcule e mostre a medida desta escada.

11 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 11 8 Uma pessoa deseja pregar um quadro em uma parede. Faça um programa para calcular e mostrar a que distância a escada deve estar da parede. A pessoa deve fornecer o tamanho da escada e a altura em que deseja pregar o quadro. Lembre-se de que o tamanho da escada deve ser maior que a altura que se deseja alcançar. X Altura em que deseja pregar o quadro Y Distância em que deverá ficar a escada Z Tamanho da escada 9 - 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 o funcionário tem gratificação de 5% sobre o salário base e paga imposto de 7% sobre este salário. 10 Sabe-se que o quilowatt de energia custa um quinto do salário mínimo. Faça um programa que receba o valor do salário mínimo e a quantidade de quilowatts consumida por uma residência, calcule e mostre: a) o valor de cada quilowatt; b) o valor a ser pago por essa residência; c) o valor a ser pago com desconto de 15%. 9 ESTRUTURA CONDICIONAL Este tipo de estrutura é utilizada para representar o desvio no fluxo normal de um programa, ou seja, utilizada para indicar que deve ser tomada uma decisão, apontando a possibilidade de desvios. O teste lógico segue a seguinte estrutura (ou fluxo): 9.1 Estrutura Condicional Simples

12 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 12 se(condição) então comando; O comando só será executado se a condição for verdadeira. Uma condição é uma comparação que possui dois valores possíveis: verdadeiro ou falso. se(condição) então início comando1; comando2; comando3; fim se Os comandos 1, 2 e 3 só serão executados se a condição for verdadeira. As palavras início e fim se serão necessárias apenas quando dois ou mais comandos forem executados Estrutura Condicional Composta se(condição) então comando1; senão comando2; Se a condição for verdadeira, será executado o comando1; caso contrário, será executado o comando2. se(condição) então início comando1; comando2; fim se senão início comando3; comando4; fim senão Se a condição for verdadeira, o comando1 e o comando2 serão executados, caso contrário, o comando3 e o comando4 serão executados.

13 Algoritmos e Estruturas de Dados 1 Prof. Eduardo Operadores Condicionais ou Relacionais Os operadores condicionais ou relacionais são operadores binários que devolvem os valores lógicos verdadeiro e falso. Sinal Função = Igual!= Diferente > Maior que >= Maior que ou igual a < Menor que <= Menor que ou igual a Estes valores 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. O resultado de uma comparação é sempre um valor lógico 9.4 Operadores Lógicos Os operadores lógicos ou booleanos são usados para combinar expressões relacionais. Também devolvem como resultado valores lógicos verdadeiro ou falso. Tabela E V e V = V V e F = F F e V = F F e F = F Tabela OU V ou V = V V ou F = V F ou V = V F ou F = F Uma expressão relacional ou lógica retornará falso para o valor lógico falso e verdadeiro para o valor lógico verdade. Fornecendo dois valores ou expressões lógicas, representadas por expressão1 e expressão2, podemos descrever as operações lógicas a seguir: expressão1 E expressão2 é verdadeiro somente se ambas, expressão1 e expressão2, forem verdadeiras. Se uma for falsa, ou se ambas forem falsas, a operação E também será falsa. expressão1 OU expressão2 é verdadeiro se tanto a expressão1 como a expressão2 forem verdadeiras. As operações OU só resultam em valores falsos se ambas, expressão1 e expressão2, forem falsas.

14 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 14 Exercício resolvido 1 Faça um algoritmo que receba duas notas de aluno, calcule e mostre a média aritmética das notas e a mensagem de Aprovado, se a média obtida for maior ou igual a 6.0 ou, caso contrário, Reprovado. algoritmo media declaração de variáveis real n1,n2,media; início escreva( Digite a nota 1: ); leia(n1); escreva( Digite a nota 2: ); leia(n2); media (n1+n2)/2; se(media >= 6) escreva( Aprovado ); senão escreva( Reprovado ); fim_algoritmo Exercícios: 1 Uma agência de empregos precisa de um programa para analisar as características dos candidatos e determinar as suas funções, conforme a tabela abaixo: IDADE SEXO FUNÇÃO Até 30 anos M Guia Turístico Mais que 30 anos M Gerente Administrativo Até 40 anos F Recepcionista Mais que 40 anos F Gerente de Compras 2 A nota final de um estudante é calculada a partir de três notas atribuídas, respectivamente, a um trabalho de laboratório, a uma avaliação semestral e a um exame final. A média das três notas mencionadas obedece aos pesos a seguir: Faça um programa que receba as três notas, calcule e mostre a média ponderada e o conceito que segue a tabela: 3 Faça um programa que receba um número inteiro e verifique se é par ou impar. 4 Criar um programa para criar um menu de opções na tela, assim: 1 Quadrado 2 Retângulo 3 Triângulo De acordo com a opção desejada, leia os dados necessários para calcular a área da respectiva opção. Mostrar a área calculada.

15 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 15 5 Uma agência bancária possui dois tipos de investimentos, conforme o quadro a seguir. Faça um programa que receba o tipo de investimento e o valor do investimento e que calcule e mostre o valor corrigido de acordo com o tipo de investimento. 6 - Faça um programa que receba a altura e o sexo de uma pessoa e que calcule e mostre o seu peso ideal, utilizando as seguintes fórmulas: 7 - Um supermercado deseja reajustar os preços de seus produtos usando o seguinte critério: o produto poderá ter seu preço aumentado ou diminuído. Para o preço ser alterado, o produto deve preencher pelo menos um dos requisitos a seguir: VENDA MÉDIA PREÇO ATUAL % DE AUMENTO % DE DIMINUIÇÃO MENSAL < 500 < R$ 30, >= 500 E < 1200 >= R$ 30,00 e < R$ 80, >= 1200 >= 80, Faça um programa que apresente o menu a seguir, permita ao usuário escolher a opção desejada, receba os dados necessários para executar a operação e mostre o resultado. Verifique a possibilidade de opção inválida e não se preocupe com restrições, como salário negativo. Menu de opções 1. Imposto 2. Novo salário 3. Classificação Digite a opção desejada. Na opção 1: receber o salário de um funcionário, calcular e mostrar o valor do imposto usando as regras a seguir: SALÁRIO PERCENTUAL DO IMPOSTO Menor que R$ 500,00 5% De R$ 500,00 a R$ 850,00 10% Acima de R$ 850,00 15% Na opção 2: receber o salário de um funcionário, calcular e mostrar o valor do novo salário, usando as regras a seguir: SALARIO AUMENTO Maior que R$ 1500,00 R$ 25,00 De R$ 750,00 (inclusive) a R$ 1500,00 (inclusive) R$ 50,00 De R$ 450,00 (inclusive) a R$ 750,00 R$ 75,00 Menor que R$ 450,00 R$ 100,00 Na opção 3: receber o salário de um funcionário e mostrar sua classificação usando a tabela a seguir: SALARIO CLASSIFICAÇÃO Até R$ 700,00 (inclusive) Mal remunerado Maiores que R$ 700,00 Bem remunerado

16 Algoritmos e Estruturas de Dados 1 Prof. Eduardo Faça um programa para resolver equações do 2º grau. ax 2 + bx + c= 0 Δ =b 2 4 * a * c Δ < 0 não existe raiz real Δ = 0 existe uma raiz real x = (-b) / (2 * a) Δ > 0 existem duas raízes reais x1 = (-b + ) / (2 * a) x2 = (-b - ) / (2 * a) 10 ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição é utilizada para fazer com que um pedaço (trecho) do programa seja executado n vezes, ou seja, quando um trecho do algoritmo ou até mesmo o algoritmo inteiro precisa ser repetido. O número de repetições pode ser fixo ou estar atrelado a uma condição. Assim, existem estruturas para tais situações. Existem 3 tipos de comandos de repetição: para enquanto repita até que 10.1 Para Essa estrutura de repetição é utilizada quando se sabe o número de vezes que um trecho do algoritmo deve ser repetido. Forma geral: para i valor inicial até valor final faça [passo n] inicio comando1; comando2;... Fim para O comando1 e o comando2 serão executados utilizando-se a variável i como controle 1, e seu conteúdo vai variar do valor inicial até o valor final. A informação do passo está entre colchetes porque é opcional. O passo indica como será a variação de controle. Por exemplo, quando for indicado passo 2, a variável de controle será aumentada em 2 unidades a cada iteração até atingir o valor final. Quando a informação do passo for suprimida, isso significa que o incremento ou o decremento da variável de controle será de 1 unidade. Quando houver apenas um comando a ser repetido, os marcadores de bloco inicio e fim poderão ser suprimidos. Exemplos: para i 1 até 10 faça escreva(i); O comando escreva(i) será executado dez vezes, ou seja, para i variando de 1 a 10. Assim, os valores de i serão: 1, 2, 3, 4, 5, 6, 7, 8, 9 e Utilizamos uma variável que será incrementada a cada repetição, isto é, a cada repetição contamos +1 na variável, até um valor de acordo com o número de vezes que queremos repetir.

17 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 17 para j 1 até 9 faça passo 2 escreva(j); O comando escreva(j) será executado cinco vezes, ou seja, para j variando de 1 a 10, de 2 em 2. Assim, os valores de j serão: 1, 3, 5, 7 e Enquanto Essa estrutura de repetição é utilizada quando não se sabe o número de vezes que um trecho do algoritmo deve ser repetido, embora também possa ser utilizada quando se conhece esse número. Essa estrutura baseia-se na análise de uma condição. A repetição será feita enquanto a condição mostrar-se verdadeira. Existem situações em que o teste condicional da estrutura de repetição, que fica no início, resulta em um valor falso logo na primeira comparação. Nesses casos, os comandos de dentro da estrutura de repetição não serão executados. Forma geral: enquanto(condição) faça comando1; Enquanto a condição for verdadeira, o comando1 será executado. enquanto(condição) faça início comando1; comando2; fim enquanto Enquanto a condição for verdadeira, o comando1 e o comando2 serão executados. x 1; y 5; enquanto(x < y) faça início x x + 2; y y + 1; fim enquanto Simulação: x y Valores 1 5 Valores iniciais Valores obtidos dentro da estrutura de repetição 10.3 Repita Essa estrutura de repetição é utilizada quando não se sabe o número de vezes que um trecho do algoritmo deve ser repetido, embora também possa ser utilizada quando se conhece esse número. Essa estrutura baseia-se na análise de uma condição. A repetição será feita enquanto a condição mostrar-se verdadeira. A diferença entre a estrutura enquanto e a repita é que nesta última os comandos serão repetidos pelo menos uma vez, já que a condição de parada se encontra no final. Forma geral:

18 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 18 repita comandos; até(condição); repita os comandos até a condição se tornar verdadeira. x 1; y 5; repita x x + 2; y y + 1; até(x >= y) Simulação: x y Valores 1 5 Valores iniciais Valores obtidos dentro da estrutura de repetição Exercícios: 1 Analise os trechos de algoritmos abaixo e escreva qual seria a saída de cada um. a) para i 1 até 20 faça escreva( O valor de i é:,i); b) para i 10 até 1 faça escreva(i); c) para i 15 até 1 faça passo -2 escreva(i); d) para i 10 até 1 faça passo escreva(i); e) para i 0 até 10 faça passo 2 escreva(i); 2 Faça a simulação dos seguintes trechos de algoritmos: a) x 1; y 1; enquanto(x <= 5) faça início y y * x; x x + 1; fim enquanto Simulação: x y Valores b) x 1; y 1; repita y y * x; x x + 1; até(x = 6) Simulação: x y Valores

19 Algoritmos e Estruturas de Dados 1 Prof. Eduardo 19 3 Criar um algoritmo que mostre a soma dos números pares inteiros positivos de 1 a Escreva um algoritmo que imprima todos os números inteiros de 200 a 100 (em ordem decrescente). 5 Faça uma Programa que receba a idade, o peso e o sexo de 10 pessoas. Calcule e imprima: total de homens; total de mulheres; média das idades dos homens; média dos pesos das mulheres. 6 Criar um programa que leia 3 notas (dentro de uma estrutura de repetição) e calcule a média aritmética. 7 Faça um programa (Eleição) para realizar a simulação de uma urna eletrônica, ou seja, a apuração dos votos de 3 candidatos (1,2 e 3), votos brancos (opção 0) e votos nulos(qualquer outra opção). Suponha que nesta urna votam 10 pessoas. 8 Uma universidade deseja fazer um levantamento sobre 10 alunos para os seguintes levantamentos: Quantos alunos são do sexo masculino (M) e quantos são do sexo feminino (F) Qual a média de idade dos alunos Qual a média de idade das alunas A média de altura dos alunos A média de altura das alunas. 9 - Um cinema, certo dia, cada espectador respondeu a um questionário, que perguntava a sua idade e a opinião em relação ao filme, seguindo os seguintes critérios: (2,0) Opinião Significado A Ótimo B Bom C Regular D Ruim E Péssimo A entrada de dados sobre a opinião deve ser validada. O final da pesquisa será controlado com a resposta S (sim) ou N (não) para um novo espectador. Construa um programa que, lendo esses dados, calcule e apresente: Quantidade de pessoas que respondeu a pesquisa. Média de idade das pessoas que responderam a pesquisa. Porcentagem de cada uma das respostas. 10 Faça um programa que receba dois números (um intervalo) e retorne quantos números impares existe neste intervalo. 11 Faça um programa que calcule o fatorial de um número. 12 Faça um algoritmo para: a) Ler um valor x qualquer b) Calcular Y = ( x+1)+(x+2)+(x+3)+(x+4)+(x+5)+ (x+100). 13 Fazer um algoritmo que calcule e escreva a soma dos 50 primeiros termos das seguinte série: soma =

20 Algoritmos e Estruturas de Dados 1 Prof. Eduardo Sendo S = , um somatório de N (definido pelo usuário) termos, N N Faça um algoritmo para calcular S para um número N. 15 Kléber tem 1,50 metros e cresce 2 cm por ano, enquanto Valdívia tem 1,10 e cresce 3 cm por ano. Construa um algoritmo que calcule e mostre quantos anos serão necessários para que Valdívia seja maior que Kléber. 16 Faça um algoritmo que mostre a tabuada de um número.

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Já vimos entrada, processamento e saída, que compõem os algoritmos puramente

Leia mais

Essa estrutura de repetição é utilizada quando se sabe o número de vezes que um trecho do algoritmo deve ser repetido.

Essa estrutura de repetição é utilizada quando se sabe o número de vezes que um trecho do algoritmo deve ser repetido. Algoritmos e Estruturas de Dados I Prof. Eduardo 1 1 - ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição é utilizada para fazer com que um pedaço (trecho) do programa seja executado n vezes, ou seja,

Leia mais

Capítulo 1 Conceitos Básicos

Capítulo 1 Conceitos Básicos Capítulo 1 Conceitos Básicos Licenciatura em Computação Fundamentos de Lógica para Programação Prof. Nícolas Trigo nicolas.trigo@ifsertao-pe.edu.br http://professor.ifsertao-pe.edu.br/nicolas.trigo Introdução

Leia mais

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

Algoritmos e Estrutura de Dados I Conceitos de Algoritmos. Prof. Elyssandro Piffer Algoritmos e Estrutura de Dados I Conceitos de Algoritmos Prof. Elyssandro Piffer CONCEITO DE ALGORITMO O computador pode auxiliar em muitas tarefas, contudo ele não possui independência, não é inteligente,

Leia mais

para / for (com teste numérico) enquanto / while (com teste lógico no início) repita até que / do...while (com teste lógico no fim)

para / for (com teste numérico) enquanto / while (com teste lógico no início) repita até que / do...while (com teste lógico no fim) Algoritmos e Programação de Computadores1 Prof. Eduardo 1 1. ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição é utilizada para fazer com que um pedaço (trecho) do programa seja executado n vezes, ou

Leia mais

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Até o momento da disciplina vimos comandos de entrada, processamento e saída

Leia mais

ESTRUTURA CONDICIONAL E SELEÇÃO

ESTRUTURA CONDICIONAL E SELEÇÃO Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ESTRUTURA CONDICIONAL E SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE OU DECISÃO) Até o momento da disciplina vimos algoritmos e programas

Leia mais

1 ESTRUTURA SEQUENCIAL

1 ESTRUTURA SEQUENCIAL Noções de Programação de Computadores Prof. Eduardo 1 1 ESTRUTURA SEQUENCIAL algoritmo Nome_do_algoritmo declaração de variáveis variáveis inicio bloco de comandos; fim_algoritmo 1.1 Declaração de variáveis

Leia mais

ALGORITMOS E ESTRUTURAS DE DADOS I

ALGORITMOS E ESTRUTURAS DE DADOS I ALGORITMOS E ESTRUTURAS DE DADOS I Prof. Eduardo Machado Real Ementa: Conceitos básicos para construção de algoritmos. Estrutura condicional. Estruturas de repetição. Variáveis compostas homogêneas e heterogêneas.

Leia mais

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

Universidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos Prof. Renato Pimentel. Computação Universidade Federal de Uberlândia Faculdade de Computação Conceitos básicos de algoritmos Prof. Renato Pimentel 1 Computação Dados Informações vindas de usuários ou de outras máquinas; Processamento transformação

Leia mais

ALGORITMOS E ESTRUTURAS DE DADOS I

ALGORITMOS E ESTRUTURAS DE DADOS I Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS E ESTRUTURAS DE DADOS I Prof. Eduardo Machado Real Conteúdo deste material: Introdução aos Algoritmos Estrutura Seqüencial Bibliografia: ASCENCIO,

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE MATEMÁTICA profericomartins@unemat.br

Leia mais

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

INFORMÁTICA APLICADA AULA 02 ALGORITMOS UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 02 ALGORITMOS Profª ª Danielle Casillo ALGORITMOS Um algoritmo é uma sequência de instruções

Leia mais

Introdução aos Algoritmos

Introdução aos Algoritmos Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

Introdução aos Algoritmos

Introdução aos Algoritmos Introdução aos Algoritmos Aula 05 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

ALGORITMOS AULA 1. Profª Amanda Gondim

ALGORITMOS AULA 1. Profª Amanda Gondim ALGORITMOS AULA 1 Profª Amanda Gondim O que é lógica? NOÇÕES DE LÓGICA A lógica trata da correção do pensamento Ensina-nos a usar corretamente as leis do pensamento É a arte de pensar corretamente A forma

Leia mais

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

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel Algoritmos - 1 Alexandre Diehl Departamento de Física - UFPel Conceitos básicos Computador: conceito clássico (até quando????) HARDWARE (partes físicas) SOFTWARE (programas) SCEF 2 Conceitos básicos Computador:

Leia mais

#Conceituação. Algoritmos. Eliezio Soares

#Conceituação. Algoritmos. Eliezio Soares INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS SÃO GONÇALO DO AMARANTE Algoritmos #Conceituação Eliezio Soares Eliezio.soares@ifrn.edu Computadores e Tarefas 1. O computador

Leia mais

1 INTRODUÇÃO AOS ALGORITMOS

1 INTRODUÇÃO AOS ALGORITMOS Algoritmos e Fundamentos de uma Linguagem de Programação Prof. Eduardo 1 1 INTRODUÇÃO AOS ALGORITMOS Desde o início de sua existência, o homem procurou criar máquinas que o auxiliassem em seu trabalho,

Leia mais

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

Aula 4B. Lógica e Algoritmos. Profª. Fabiany Fundamentos de Programação 1 Aula 4B Lógica e Algoritmos. Profª. Fabiany Lógica A lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. Sequência Lógica São passos

Leia mais

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

Aula Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof. - Bibliografia - - Operadores - Criação de um algoritmo - Exercícios Aula 01 Colegiado de Engenharia da Computação Slide 1 O que é Algoritmo? Segundo o Dicionário Aurélio, a palavra algoritmo origina-se

Leia mais

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

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel Algoritmos - 1 Alexandre Diehl Departamento de Física - UFPel Conceitos básicos Computador: conceito clássico (até quando????) HARDWARE (partes físicas) SOFTWARE (programas) PCF2017 2 Conceitos básicos

Leia mais

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

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Etapas para o desenvolvimento de um programa Analise: estudo do problema para determinação dos dados de entrada, do processamento

Leia mais

Algoritmos e Estruturas de Dados

Algoritmos e Estruturas de Dados Algoritmos e Estruturas de Dados Introdução Prof. Sinaide Nunes Bezerra Vídeoaulas e exercícios em linguagem C, acesse www.mathgraph.com.br 1 de novembro de 2015 Sumário 1 Introdução

Leia mais

Introdução ao Conceito de Algoritmo e Programação Estruturada

Introdução ao Conceito de Algoritmo e Programação Estruturada Prof. Alceu Britto Aula Teórica 02 Introdução ao Conceito de Algoritmo e O Conceito de Algoritmo e as Estruturas Básicas de Controle Enquanto existir um quadrado livre e não tenha vencido (ou perdido)

Leia mais

para / for (com teste numérico) enquanto / while (com teste lógico no início) repita até que / do...while (com teste lógico no fim)

para / for (com teste numérico) enquanto / while (com teste lógico no início) repita até que / do...while (com teste lógico no fim) Algoritmos e Programação de Computadores1 Prof. Eduardo 1 1. ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição é utilizada para fazer com que um pedaço (trecho) do programa seja executado n vezes, ou

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Prof. Alceu Britto Slides cedidos por Prof. Edson J. R. Justino (PUCPR) Aula Teórica 02 O Conceito de Algoritmo e as Estruturas Básicas de Controle Enquanto existir um quadrado

Leia mais

Algoritmos e Técnicas. Lógica de Programação. É a técnica de encadear pensamento para atingir determinado objetivo.

Algoritmos e Técnicas. Lógica de Programação. É a técnica de encadear pensamento para atingir determinado objetivo. Algoritmos e Técnicas Lógica de Programação É a técnica de encadear pensamento para atingir determinado objetivo. 1 Algoritmos - Conceitos Um algoritmo é uma seqüência de ações (passos) finitas, bem definidas,

Leia mais

Programação Estruturada Aula VisualG

Programação Estruturada Aula VisualG Programação Estruturada Aula VisualG Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br 2 CRIANDO ALGORITMO CRIANDO ALGORITMO Passos para construir Algoritmos Ler enunciado do problema, compreendendo-o

Leia mais

Desenvolvimento de Algoritmos. Slides elaborados pela Prof(a). Simone do Rocio Senger de Souza ICMC/USP

Desenvolvimento de Algoritmos. Slides elaborados pela Prof(a). Simone do Rocio Senger de Souza ICMC/USP Desenvolvimento de Algoritmos Slides elaborados pela Prof(a). Simone do Rocio Senger de Souza ICMC/USP Desenvolvimento de algoritmos Na computação, algoritmos representam os passos de um programa um conjunto

Leia mais

É neste ponto que entra o conceito de lógica de programação.

É neste ponto que entra o conceito de lógica de programação. AULA 01 OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO A lógica é a ciência do pensamento correto. Esta declaração não implica, contudo, em afirmar que ela seja a ciência da verdade.

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 1 Apresentação da Disciplina Introdução a Algoritmos Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Apresentação da Disciplina 2 Atividades Plano de Ensino - Conteúdos

Leia mais

I - CONCEITOS INICIAIS

I - CONCEITOS INICIAIS Sumário I - CONCEITOS INICIAIS... 2 Lógica de programação... 2 Algoritmo... 2 Instrução... 3 Programa de Computador... 3 Fases... 4 Diagrama de Blocos... 4 II - VARIÁVEIS... 5 Numéricas... 5 Cadeia ou

Leia mais

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

01/08/2011. Introdução Lógica Sequencia lógica Instruções Algoritmos Programas. Lógica. Lógica na programação. Instrução. Engenharia de Controle e Automação Programação I Prof. Ricardo Sobjak ricardo.sobjak@ifsc.edu.br Introdução Lógica Sequencia lógica Instruções s Programas Lógica Raciocínio estruturado (partindo-se do

Leia mais

Algoritmos Estrutura Condicional

Algoritmos Estrutura Condicional Algoritmos Estrutura Condicional Aula 06 Diogo Pinheiro Fernandes Pedrosa http://www2.ufersa.edu.br/portal/professor/diogopedrosa diogopedrosa@ufersa.edu.br Universidade Federal Rural do Semiárido Bacharelado

Leia mais

CONCEITOS DE ALGORITMOS

CONCEITOS DE ALGORITMOS CONCEITOS DE ALGORITMOS Fundamentos da Programação de Computadores - 3ª Ed. 2012 Editora Prentice Hall ISBN 9788564574168 Ana Fernanda Gomes Ascênsio Edilene Aparecida Veneruchi de Campos Algoritmos são

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE MATEMÁTICA profericomartins@unemat.br

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

INTRODUÇÃO À PROGRAMAÇÃO. Introdução à Algoritmos. Prof. Me. Sérgio Carlos Portari Júnior

INTRODUÇÃO À PROGRAMAÇÃO. Introdução à Algoritmos. Prof. Me. Sérgio Carlos Portari Júnior INTRODUÇÃO À PROGRAMAÇÃO Introdução à Algoritmos Prof. Me. Sérgio Carlos Portari Júnior www.sergioprotari.com.br sergio.junior@uemg.br TÓPICOS ABORDADOS Noções de Lógica (Parte 1) O que é a lógica Lógica

Leia mais

Noções de algoritmos - Aula 1

Noções de algoritmos - Aula 1 Noções de algoritmos - Aula 1 Departamento de Física UFPel Definição de algoritmo Sequência ordenada e finita de operações para a realização de uma tarefa. Tarefa: Experimento de Física I. Passo 1: Reunir

Leia mais

Prof. Jorge Cavalcanti

Prof. Jorge Cavalcanti Universidade Federal do Vale do São Francisco Curso de Engenharia de Computação Introdução a Algoritmos Parte 02 (baseado no material do prof. Marcelo Linder) Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br

Leia mais

Algoritmos e Programação de Computadores Disciplina:

Algoritmos e Programação de Computadores Disciplina: Algoritmos e Programação de Computadores Disciplina: 113476 Profa. Carla Denise Castanho Universidade de Brasília UnB Instituto de Ciências Exatas IE Departamento de Ciência da Computação CIC 3. REPRESENTAÇÃO

Leia mais

Técnicas de Programação

Técnicas de Programação Técnicas de Programação Algoritmos Anderson Gomes Eleutério Lógica A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas, ela permite definir

Leia mais

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

Introdução à Programação de Computadores Fabricação Mecânica Introdução à Programação de Computadores Fabricação Mecânica Edilson Hipolito da Silva edilson.hipolito@ifsc.edu.br - http://www.hipolito.info Aula 06 - Introdução a algoritmos Roteiro Algoritmos Formas

Leia mais

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAIS SÃO OS COMPONENTES BÁSICOS DO HW DE UM SISTEMA COMPUTACIONAL?

Leia mais

Pseudocódigo e Visualg

Pseudocódigo e Visualg Pseudocódigo e Visualg Professor: Alex Sandro Forghieri alex.forghieri@ifsc.edu.br Agenda Revisão Algoritmos Estrutura de dados Estrutura básica de um algoritmo em pseudocódigo Teste de mesa Operadores

Leia mais

Conceitos Básicos de Algoritmos

Conceitos Básicos de Algoritmos Conceitos Básicos de Algoritmos 35 TIPOS PRIMITIVOS Palavra-reservada: inteiro - define variáveis numéricas do tipo inteiro, ou seja, sem casas decimais Palavra-reservada: real - define variáveis numéricas

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação 2 O que é um algoritmo? É um caminho para a solução de um problema. Problema Algoritmo Solução 3 No contexto computacional... É um conjunto finito de regras, bem definidas, para

Leia mais

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Pampa Campus-Bagé Algoritmos e Programação Aula 1 Apresentação da Disciplina Conceitos Introdutórios Prof. Julio Saraçol juliodomingues@unipampa.edu.br Slide1 APRESENTAÇÃO DA DISCIPLINA

Leia mais

Sintática: como é escrito cada elemento da linguagem de programação.

Sintática: como é escrito cada elemento da linguagem de programação. 4ª. AULA Sintaxe e Semântica Para que uma linguagem de programação atenda aos requisitos especificados de forma eficiente, ela deve ser escrita de forma única (não ambígua). Isso envolve a definição: Sintática:

Leia mais

Algoritmo e Programação Matemática

Algoritmo e Programação Matemática Algoritmo e Programação Matemática Fundamentos de Algoritmos Parte 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Dados A funcionalidade principal de um computador

Leia mais

SSC Introdução à Programação para Engenharias. Lista 01 Entrega em 06/04/ h10

SSC Introdução à Programação para Engenharias. Lista 01 Entrega em 06/04/ h10 Nota SSC0304 - Introdução à Programação para Engenharias Lista 01 Entrega em 06/04/2018 08h10 Nome N.º USP Obs 1: Utilize essa primeira página como capa da sua lista de exercícios Obs 2: Esta lista é em

Leia mais

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

- Aula 01, 02, 03 e 04 Apresentação da disciplina. 1 - Aula 01, 02, 03 e 04 Apresentação da disciplina. Disciplina: Algoritmos (Disciplina é pré-requisito para outras disciplinas). Plano de Ensino: Estrutura Sequencial, Estrutura de Decisão (Desvio Condicional

Leia mais

Conceitos Básicos ENTRADA PROCESSAMENTO SAÍDA

Conceitos Básicos ENTRADA PROCESSAMENTO SAÍDA Aula 02 - Algoritmos Disciplina: Algoritmos Prof. Allbert Velleniche de Aquino Almeida E-mail: allbert.almeida@fatec.sp.gov.br Site: http://www.allbert.com.br /allbert.almeida Conceitos Básicos Desde o

Leia mais

AULA 02. OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO

AULA 02. OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO AULA 02 OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO A lógica é a ciência do pensamento correto. Esta declaração não implica, contudo em afirmar que ela seja a ciência da verdade.

Leia mais

Programação Estruturada

Programação Estruturada Algoritmos e Técnicas - Estruturas de Controle de Fluxo - Programação Estruturada Programação estruturada é a técnica de construir e formular algoritmos de uma forma sistemática. Utilizada para apresentar

Leia mais

Computação I: Representações de Algoritmos

Computação I: Representações de Algoritmos Computação I: Representações de Algoritmos reginaldo.re@utfpr.edu.br * Parte da apresentação foi gentilmente cedida pelo prof. Igor Steinmacher Agenda Objetivos Relembrando... Algoritmos para desenvolver

Leia mais

ALGORITMOS E PROGRAMAÇÃO DE COMPUTADORES I. Trabalho 1 (T1)

ALGORITMOS E PROGRAMAÇÃO DE COMPUTADORES I. Trabalho 1 (T1) ALGORITMOS E PROGRAMAÇÃO DE COMPUTADORES I Trabalho 1 (T1) Grupo de até três acadêmicos; Entregar os algoritmos escritos; Entregar as implementações dos algoritmos em arquivo organizados em uma pasta,

Leia mais

Projeto de Algoritmos

Projeto de Algoritmos Projeto de Algoritmos Introdução aos Sistemas Computacionais Prof. Ernani Viriato de Melo / Reginaldo Costa http://www.ernani.eti.br http://reginaldofazu.blogspot.com 2º Semestre - 2008 Conceitos Básicos

Leia mais

Portugol. Tiago Alves de Oliveira

Portugol. Tiago Alves de Oliveira Portugol Tiago Alves de Oliveira Revisando Algoritmo: Sequência finita de passos que levam à execução de uma tarefa Claro e preciso. Ex. somar dois números Algoritmo precisa seguir uma sequência lógica

Leia mais

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

Introdução à Lógica de Programação Introdução à Lógica de Programação 1 Sumário Noções de Lógica; Algoritmo; leonardobcamposatgmail.com 2/18 Noções de Lógica O uso corriqueiro da palavra lógica está normalmente relacionado à coerência e

Leia mais

1 - INTRODUÇÃO. Portanto, um programa é a codificação de um algoritmo em uma linguagem de programação. (ASCENCIO;CAMPOS, 2007)

1 - INTRODUÇÃO. Portanto, um programa é a codificação de um algoritmo em uma linguagem de programação. (ASCENCIO;CAMPOS, 2007) 1 - INTRODUÇÃO Desde o início de sua existência, o homem procurou criar máquinas que o auxiliassem em seu trabalho, diminuindo esforço e economizando tempo. Dentre essas máquinas, o computador vem se mostrando

Leia mais

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br

Leia mais

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

Conceitos Básicos. Professor: Juliano Lucas Gonçalves. Conceitos Básicos Professor: Juliano Lucas Gonçalves juliano.goncalves@ifsc.edu.br Agenda Revisão Algoritmos Memória, variáveis e constantes Estrutura básica de um algoritmo em pseudocódigo 2 O que já

Leia mais

08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos:

08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA CAMPUS CAMPINA GRANDE 1 2 Elementos Básicos Tipos de dados Dados e seus tipos: Computadores lidam com diversos tipos de dados: numéricos,

Leia mais

Programação Procedimental

Programação Procedimental Programação Procedimental Maria Adriana Vidigal de Lima Universidade Federal de Uberlândia - 2013 1 Escrita de Algoritmos 1.1 Técnicas de Programação e Algoritmos Na elaboração de programas maiores e complexos

Leia mais

PPM CONTEÚDO. Lógica de programação Programação para manufatura Sistemas supervisorios PROGRAMAÇÃO PARA MANUFATURA 05/03/2009

PPM CONTEÚDO. Lógica de programação Programação para manufatura Sistemas supervisorios PROGRAMAÇÃO PARA MANUFATURA 05/03/2009 PPM PROGRAMAÇÃO PARA MANUFATURA CONTEÚDO Lógica de programação Programação para manufatura Sistemas supervisorios 1 LÓGICA DE PROGRAMAÇÃO Abrangência Introduzir os conceitos básicos relacionados à lógica

Leia mais

Introdução à Ciência da Computação ICC0001 Prof. Diego Buchinger

Introdução à Ciência da Computação ICC0001 Prof. Diego Buchinger Algoritmos e Linguagens de Programação Introdução à Ciência da Computação ICC0001 Prof. Diego Buchinger Conceitos Básicos Para dizer o que um computador deve fazer devemos programá-lo através de instruções

Leia mais

Exercícios: comandos condicionais

Exercícios: comandos condicionais Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: comandos condicionais 1. Faça um programa que receba dois números

Leia mais

Algoritmos e Técnicas de Programação

Algoritmos e Técnicas de Programação Algoritmos e Técnicas de Programação Estrutura, Visualg e Variáveis filipe.raulino@ifrn.edu.br Programação Estruturada A programação estruturada (Top-Down) estabelece uma disciplina de desenvolvimento

Leia mais

Português Estruturado

Português Estruturado Português Estruturado Português Estruturado Para que o algoritmo possa ser executado por uma máquina é importante que as instruções sejam corretas e sem ambigüidades. O português estruturado é, na verdade,

Leia mais

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 06. Algoritmos e Programação. Informática II. q Noções de lógica

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 06. Algoritmos e Programação. Informática II. q Noções de lógica Algoritmos e Programação Informática II Ciência da Computação Prof. Dr. Leandro Alves Neves Aula 06 1 Sumário Noções de lógica Representação do Conhecimento Lógica na Programação Lógica e Algoritmo: Resolução

Leia mais

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado..

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado.. Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Introdução aos Algoritmos A única diferença entre o difícil e o impossível é que o último demora um pouco mais de

Leia mais

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

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Expressando a lógica em programação Ferramentas gráficas: diagramas e fluxogramas; Ferramentas textuais: pseudocódigos ou metalinguagens (Português

Leia mais

CAPÍTULO IV. Estruturas Condicionais CAPÍTULO IV ESTRUTURAS CONDICIONAIS ESTRUTURA CONDICIONAL SIMPLES

CAPÍTULO IV. Estruturas Condicionais CAPÍTULO IV ESTRUTURAS CONDICIONAIS ESTRUTURA CONDICIONAL SIMPLES NB217 Algoritmos e Estruturas de Dados I Profa. Rosanna Mara Rocha Silveira Fevereiro/2012 - Versão 4.1 CAPÍTULO IV ESTRUTURAS CONDICIONAIS 35 Dentro dos algoritmos temos comandos especiais utilizados

Leia mais

CAPÍTULO 3 INSTRUÇÕES BÁSICAS

CAPÍTULO 3 INSTRUÇÕES BÁSICAS CAPÍTULO 3 INSTRUÇÕES BÁSICAS Guilherme da Cunha Fonseca FEPI Centro Universitário de Itajubá Curso de Tecnologia em Fabricação Mecânica 1 INTRODUÇÃO As instruções ou comandos básicos são o conjunto de

Leia mais

Algoritmos e Lógica de Programação. Notas de Aula

Algoritmos e Lógica de Programação. Notas de Aula Algoritmos e Lógica de Programação Notas de Aula Parte I Conceitos de Algoritmos 2 Algoritmos Algoritmo = Sequência lógica e não ambígua de instruções que leva à solução de um problema em um tempo finito.

Leia mais

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

Processamento de Dados aplicado à Geociências. AULA 3: Algoritmos computacionais Representação de Algoritmos Sintaxe Tipos de dados Expressões Processamento de Dados aplicado à Geociências 1 AULA 3: Algoritmos computacionais Representação de Algoritmos Sintaxe Tipos de dados Expressões UNIVERSIDADE FEDERAL DE PELOTAS CENTRO DE DESENVOLVIMENTO

Leia mais

Exercícios Repetição

Exercícios Repetição Curso de Engenharia de Controle e Automação Disciplina: Informática para a Automação Professor: Marcelo Cendron Exercícios Repetição 1.1 8.3 Exercícios 1. Faça um programa utilizando o comando while, que

Leia mais

ALGORITMOS AULA 2. Profª Amanda Gondim

ALGORITMOS AULA 2. Profª Amanda Gondim ALGORITMOS AULA 2 Profª Amanda Gondim LINEARIZAÇÃO DE EXPRESSÕES Para a construção de algoritmos que realizam cálculo matemáticos, todas as expressões aritméticas devem ser linearizadas, ou seja, colocadas

Leia mais

Conceitos básicos de algoritmos

Conceitos básicos de algoritmos Conceitos básicos de algoritmos Operadores Aritméticos Unários: +, - Exemplos: +1-5.9... var a: inteiro... a

Leia mais

Lógica de Programação I

Lógica de Programação I Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1 ALGORITMIZANDO A LÓGICA Por que é Importante Construir um Algoritmo? Um algoritmo tem por objetivo representar mais fielmente o raciocínio envolvido

Leia mais

Algoritmos e Programação. Noções de Lógica e Algoritmos Tarcio Carvalho

Algoritmos e Programação. Noções de Lógica e Algoritmos Tarcio Carvalho s e Programação Noções de Lógica e Algoritmos Tarcio Carvalho EMENTA Desenvolvimento de algoritmos; Tipos de dados básicos e estruturados; Comandos de uma linguagem de Programação; Metodologia de desenvolvimento

Leia mais

INFORMÁTICA APLICADA AULA 03 ALGORITMOS

INFORMÁTICA APLICADA AULA 03 ALGORITMOS UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 03 ALGORITMOS Profª ª Danielle Casillo LINEARIZAÇÃO DE EXPRESSÕES Para a construção de algoritmos

Leia mais

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

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Apresentação do Professor Professor: José Carlos Perini E-mail: jose.perini@metrocamp.edu.br Blog: http://profperini.com Formação

Leia mais

ESTRUTURAS DE REPETIÇÃO - PARTE 1

ESTRUTURAS DE REPETIÇÃO - PARTE 1 AULA 15 ESTRUTURAS DE REPETIÇÃO - PARTE 1 15.1 O comando enquanto-faca- Considere o problema de escrever um algoritmo para ler um número inteiro positivo, n, e escrever todos os números inteiros de 1 a

Leia mais

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano Cansian

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano Cansian Algoritmos e Programação Informática II Ciência da Computação Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano Cansian 1 Sumário Noções de lógica Representação do Conhecimento Lógica na Programação Lógica

Leia mais

LINGUAGEM ALGORÍTMICA

LINGUAGEM ALGORÍTMICA LINGUAGEM ALGORÍTMICA Adriano Mauro Cansian André Proto UNESP - São José do Rio Preto Linguagem Computacional Introdução! Para uma melhor padronização de nosso estudos, vamos agora definir uma linguagem

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Estruturas de repetição

Universidade Federal de Uberlândia Faculdade de Computação. Estruturas de repetição Universidade Federal de Uberlândia Faculdade de Computação Estruturas de repetição Prof. Renato Pimentel 1 Estruturas de repetição Utilização: Trecho de um algoritmo precisa ser executado mais de uma vez:

Leia mais

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

ALGORITMOS. O que é Algoritmo? Algoritmo é um dos processo para criação O que é Algoritmo? Algoritmo é um dos processo para criação de um programa. Putz????? Definições de Algoritmos Algoritmo é uma sequência de passos que visa atingir um objetivo bem definido.(forbellone,

Leia mais

CAPÍTULO V. Estruturas de Repetição CAPÍTULO V ESTRUTURAS DE REPETIÇÃO. Estrutura de Repetição com Teste no Início: E QUA TO-FAÇA...

CAPÍTULO V. Estruturas de Repetição CAPÍTULO V ESTRUTURAS DE REPETIÇÃO. Estrutura de Repetição com Teste no Início: E QUA TO-FAÇA... NBT110 Algoritmos e Estruturas de Dados Profa. Rosanna Mara Rocha Silveira Fevereiro/2013 - Versão 1.1 CAPÍTULO V ESTRUTURAS DE REPETIÇÃO 42 Em programação de computadores, é muito comum nos depararmos

Leia mais

Parte I - Expressões lógicas e operadores

Parte I - Expressões lógicas e operadores Lista de Exercícios de Algoritmos e Laboratório de Programação - 01 Parte I - Expressões lógicas e operadores 1. Sendo A=3, B=7 e C=4, informe se as expressões abaixo são verdadeiras ou falsas. a) (A+C)

Leia mais

Lista de Exercícios Estrutura de Repetição

Lista de Exercícios Estrutura de Repetição Universidade Federal Fluminense Instituto de Computação Programação de Computadores III Luciana Brugiolo Gonçalves Lista de Exercícios Estrutura de Repetição E15. Desenvolva um algoritmo para exibir todos

Leia mais

Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos. Prof. Dr. Bruno Moreno

Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos. Prof. Dr. Bruno Moreno Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos Prof. Dr. Bruno Moreno bruno.moreno@ifrn.edu.br Introdução Um algoritmo pode ser definido como uma sequência finita de passos

Leia mais

Aula 4 Oficina de Programação Algoritmos - Parte 3. Profa. Elaine Faria UFU

Aula 4 Oficina de Programação Algoritmos - Parte 3. Profa. Elaine Faria UFU Aula 4 Oficina de Programação Algoritmos - Parte 3 Profa. Elaine Faria UFU - 2017 Suponha que você tenha que fazer um algoritmo que leia duas notas de um aluno e imprima o valor da média aritmética na

Leia mais