LÓGICA DE PROGRAMAÇÃO

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

Download "LÓGICA DE PROGRAMAÇÃO"

Transcrição

1 LÓGICA DE PROGRAMAÇÃO Prof. Marcelo West Araçuaí 2013

2 Sumário 1. Introdução Algoritmos não computacionais Algoritmos computacionais Teste de Mesa Formas de Representação de Algoritmos Exercícios Portugol Variáveis e constantes Constante Variável Tipos de dados Operadores Blocos e comandos básicos de controle Referências bibliográficas... 22

3 Índice de Figuras Figura 1: Exemplo de algoritmo não computacional... 2 Figura 2: Outro exemplo de algoritmo não computacional... 3 Figura 3: Etapas de criação de um algoritmo... 5 Figura 4: Entrada - Processamento - Saída... 5 Figura 5: Símbolos de um fluxograma... 9 Figura 6: Fluxograma do algoritmo média Figura 7: Diagrama que representa um identificador Figura 8: Tipos de dados Figura 9: Diagrama que representa a definição de uma variável Figura 10: Operadores aritméticos Figura 11: Operadores relacionais Figura 12: Operadores lógicos Figura 13: Sintaxe de atribuição... 18

4 1. Introdução Lógica é a forma correta de organizar os pensamentos e demonstrar o raciocínio de maneira formal. A utilização da lógica é a melhor forma de solucionar problemas e atingir objetivos. Sempre que se quer pensar, falar ou escrever corretamente deve-se colocar os pensamentos em ordem. Exemplos: Todo mamífero é animal Todo cavalo é mamífero Portanto, todo cavalo é animal A gaveta está fechada. A bala está na gaveta. Preciso primeiro abrir a gaveta, para depois pegar a bala. A lógica é usada no dia a dia das pessoas que trabalham com computação para solucionar problemas de forma eficiente. Algumas definições de lógica aplicada à programação de sistemas: A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas, ela permite definir a sequencia de passos para o desenvolvimento. A lógica é a ciência que estuda as leis e os critérios de validade que regem o pensamento e a demonstração, ou seja, ciência dos princípios formais do raciocínio. Sequência lógica são passos executados até atingir um objetivo ou solução de um problema. Resumindo... Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. 1

5 1.1 Algoritmos não computacionais Um algoritmo é uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. São exemplos de algoritmos instruções de montagem, receitas, manuais de uso, etc. Um algoritmo não é a solução do problema, pois, se assim fosse, cada problema teria um único algoritmo. Então, pode-se afirmar que um algoritmo é um caminho para a solução de um problema. Em geral, existem muitos (senão infinitos) caminhos que levam a uma solução satisfatória. Instruções são um conjunto de regras ou normas definidas para a realização ou emprego de algo. Em informática, é o que indica a um computador uma ação elementar a executar. Um algoritmo não computacional é um algoritmo cuja sequência de passos, a princípio,não pode ser executada por um computador. Abaixo é apresentado um algoritmo não computacional cujo objetivo é fazer uma ligação telefônica. Provavelmente você executou o algoritmo deste exemplo diversas vezes. O termo algoritmo está muito ligado à Ciência da Computação, mas, na realidade, ele pode ser aplicado a qualquer problema cuja solução possa ser decomposta em um grupo de instruções. Início 1 Tirar o fone do gancho 2 Ouvir o sinal de linha 3 Teclar o número desejado 4 Esperar a pessoa atender 4.1 Conversar 5 Desligar Fim Figura 1: Exemplo de algoritmo não computacional 2

6 Um outro exemplo típico de algoritmo é uma receita culinária, como no exemplo abaixo. Início 1 Pegar um ovo 2 Acrescentar manteiga na frigideira 3 Quebrar o ovo na frigideira 4 Acrescentar sal 5 Esperar fritar 6 Desligar o fogão 7 Tirar o ovo da frigideira 8 Colocar o ovo no pão Fim Figura 2: Outro exemplo de algoritmo não computacional Para que o algoritmo possa ser útil, é necessário ainda que quem faz uso dele conheça os termos utilizados nas instruções. O algoritmo do exemplo só será útil para alguém que seja fluente na língua portuguesa e conheça o significado dos verbos pegar, acrescentar, quebrar, esperar, desligar, tirar e colocar, assim como dos substantivos utilizados no contexto de uma receita culinária. Em outras palavras, é preciso que a linguagem utilizada no algoritmo seja conhecida tanto por quem o escreveu quanto por quem vai executá-lo. Para que o algoritmo possa ser executado por uma máquina é importante que as instruções sejam corretas e sem ambiguidades. Portanto, a forma especial de linguagem que utilizaremos é bem mais restrita que o Português e com significados bem definidos para todos os termos utilizados nas instruções. Essa linguagem é conhecida como Português Estruturado (às vezes também chamada de Portugol). Ela é, na verdade, uma simplificação extrema do Português, limitada a umas poucas palavras e estruturas que têm um significado muito bem definido. Ao conjunto de palavras e regras que definem o formato das sentenças válidas chamamos sintaxe da linguagem. 3

7 1.2 Algoritmos computacionais O computador, a princípio, não executa nada. Para que ele faça uma determinada tarefa (calcular uma folha de pagamento, por exemplo), é necessário que ele execute um programa. Um programa é um conjunto de milhares de instruções que indicam ao computador, passo a passo, o que ele tem que fazer. Logo, um programa nada mais é do que um algoritmo computacional descrito em uma linguagem de programação. Uma linguagem de programação contém os comandos que fazem o computador escrever algo na tela, realizar cálculos aritméticos, receber uma entrada de dados via teclado, e milhares de outras coisas, mas estes comandos precisam estar em uma ordem lógica. Um algoritmo tem por objetivo representar mais fielmente o raciocínio envolvido na Lógica de Programação e, dessa forma, permite-nos abstrair de uma série de detalhes computacionais, que podem ser acrescentados mais tarde. Assim, podemos focalizar nossa atenção naquilo que é importante: a lógica da construção de algoritmos. Outra importância da construção de algoritmos é que uma vez concebida uma solução algorítmica para um problema, esta pode ser traduzida para qualquer linguagem de programação e ser agregada das funcionalidades disponíveis nos diversos ambientes; costumamos denominar esse processo de codificação. Em outras palavras: ALGORITMO X PROGRAMA Um algoritmo é uma sequência lógica de ações a serem executadas para se executar uma determinada tarefa. Um programa é a formalização de um algoritmo em uma determinada linguagem de programação, segundo suas regras de sintaxe e semântica, de forma a permitir que o computador possa entender a sequência de ações. LINGUAGEM DE PROGRAMAÇÃO Conjunto de símbolos ( comandos, identificadores, caracteres etc. ) e regras de sintaxe que permitem a construção de sentenças que descrevem de forma precisa ações compreensíveis e executáveis para o computador. TIPOS DE LINGUAGENS DE PROGRAMAÇÃO Existem diversas linguagens de programação, cada uma com suas características específicas e com níveis de complexidade e objetivos diferentes: Linguagem de Máquina: Única compreendida pelo computador. Linguagens de Baixo Nível Ex.: Assembly Linguagens de Alto Nível. Utiliza instruções próximas da linguagem humana de forma a facilitar o raciocínio (Ex.: Java, C++, PHP, ASP, etc.). 4

8 Na programação deve-se distinguir claramente dois aspectos: Aspecto estático: a formulação de um algoritmo consiste em um texto contendo comandos (instruções) que devem ser executados numa ordem prescrita. Aspecto dinâmico: os efeitos que são causados pela execução do programa no tempo, dado um conjunto de valores iniciais. A partir de agora iremos focar no aspecto estático, ou seja, vamos nos preocupar em criar algoritmos para resolver problemas. As três etapas na criação de um algoritmo são: Entrada(s) PROCESSAMENTO Saída(s) Figura 3: Etapas de criação de um algoritmo Onde temos: Entrada: São os dados de entrada do algoritmo Processamento: São os procedimentos utilizados para chegar ao resultado final Saída: São os dados já processados Fazendo uma analogia com o ser humano: Figura 4: Entrada - Processamento - Saída 5

9 Exemplo: Imagine o seguinte problema: Realizar a soma de dois números: N1 e N2. Para montar o algoritmo proposto, faremos três perguntas: a) Quais são os dados de entrada? Resposta: Os dados de entrada são N1 e N2 b) Qual será o processamento a ser utilizado? Resposta: O procedimento será somar todos os dados de entrada: Soma = N1 + N2 c) Quais serão os dados de saída? Resposta: O dado de saída será a soma entre esses dois números O algoritmo será: 1. Início 2. Leia o primeiro número 3. Leia o segundo número 4. Somar os números 5. Mostrar o resultado 6. Fim Teste de Mesa Após desenvolver um algoritmo ele deverá sempre ser testado. Este teste é chamado de teste de mesa, que significa seguir as instruções do algoritmo de maneira precisa para verificar se o procedimento utilizado está correto ou não. Para acompanhar o desenvolvimento de um, algoritmo é importante verificar o estado dos dados a cada instrução, verificando o conteúdo de todas as variáveis contidas no algoritmo. Sendo assim devem-se enumerar as linhas do algoritmo e em seguida criar uma tabela onde, a cada linha, são mostrados os conteúdos das variáveis do algoritmo e o número da linha executada. Para uma melhor visualização do processo, adotaremos a seguinte convenção: nas linhas em que uma variável é lida (entrada), o valor da variável ficará entre colchetes [ ] e quando o conteúdo de uma variável for escrito (saída), ficará entre chaves { }. 6

10 Relembrando os sólidos de Platão: As faces são constituídas por seções de planos, considerando que entre duas faces temos as arestas, as quais possuem em suas extremidades os vértices. Platão foi um filósofo grego, que viveu entre os séculos V e IV A.C., e estabeleceu importantes propriedades em alguns poliedros. O número de arestas é igual em todas as faces; Os ângulos poliédricos possuem o mesmo número de arestas; Nos sólidos considerados poliedros de Platão vale a relação de Euler (V A + F = 2) onde V = vértices, A = arestas e F = faces. Para encontrarmos o número de vértices, vamos isolar o vértice da equação acima, obtendo que: V = 2 + A - F. Aplicaremos a técnica do teste de mesa sobre o algoritmo abaixo o qual visa determinar o número de vértices de uma figura geométrica. Inicio 1. Escreva ( Entre com o número de faces da figura geométrica: ) 2. Leia (faces) 3. Escreva ( Entre com um número da arestas da figura geométrica: ) 4. Leia (arestas) 5. Vértices = arestas + 2 faces 6. Escreva ( O número de vértices do objeto especificado é:, vértices) Fim Linha Vértices Faces Arestas 1??? 2? [6]? 3? 6? 4? 6 [12] {8}

11 1.4 Formas de Representação de Algoritmos Existem diversas formas de representação de algoritmos, mas não há um consenso com relação à melhor delas. O critério usado para classificar hierarquicamente estas formas está diretamente ligado ao nível de detalhe ou, inversamente, ao grau de abstração oferecido. Algumas formas de representação de algoritmos tratam os problemas apenas em nível lógico, abstraindo-se de detalhes de implementação muitas vezes relacionados com alguma linguagem de programação específica. Por outro lado existem formas de representação de algoritmos que possuem uma maior riqueza de detalhes e muitas vezes acabam por obscurecer as ideias principais do algoritmo, dificultando seu entendimento. Dentre as formas de representação de algoritmos mais conhecidas podemos citar: Descrição narrativa; Fluxograma; Pseudocódigo, também conhecido como Linguagem Estruturada ou Portugol. Descrição narrativa: Nesta forma de representação os algoritmos são expressos diretamente em linguagem natural. Como exemplo, uma receita de bolo: Receita de bolo: Misture os ingredientes Unte a forma com manteiga Despeje a mistura na forma Se houver coco ralado então despeje sobre a mistura Leve a forma ao forno Enquanto não corar deixe a forma no forno Retire do forno Deixe esfriar Esta representação é pouco usada na prática porque o uso da linguagem natural muitas vezes dá oportunidade a más interpretações, ambiguidades e imprecisões. Fluxograma: É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam ações (instruções, comandos) distintos. Tal propriedade facilita o entendimento das ideias contidas nos algoritmos e justifica sua popularidade. 8

12 Esta forma é aproximadamente intermediária à descrição narrativa e ao pseudocódigo, pois é menos imprecisa que a primeira e, no entanto, não se preocupa com detalhes de implementação do programa, como o tipo das variáveis usadas. O fluxograma, também conhecido como diagrama de blocos é uma forma padronizada e eficaz para representar os passos lógicos de um determinado processamento. Com o diagrama podemos definir uma sequência de símbolos, com significado bem definido, portanto, sua principal função é a de facilitar a visualização dos passos de um processamento. Existem diversos símbolos em um diagrama de bloco. O quadro abaixo mostra alguns dos símbolos que iremos utilizar: Símbolo Função Início e fim do fluxograma Operação de entrada de dados Operação de saída de dados Operação de atribuição Tomada de Decisão Figura 5: Símbolos de um fluxograma Como exemplo, vamos representar o algoritmo através de um fluxograma que calcula a média e informa se o aluno foi aprovado ou não. 9

13 Início Leia N1, N2 MEDIA=(N1+N2)/2 Sim MEDIA > 7 Não Escreva Aprovado Escreva Reprovado Fim Pseudocódigo: Esta forma de representação de algoritmos é rica em detalhes, como a definição dos tipos das variáveis usadas no algoritmo. Por assemelhar-se bastante à forma em que os programas são escritos, encontra-se muita aceitação. Na verdade, esta representação é suficientemente geral para permitir a tradução de um algoritmo nela representado para uma linguagem de programação específica seja praticamente direta. A forma geral da representação de um algoritmo na forma de pseudocódigo é a seguinte: 10

14 Algoritmo <nome_do_algoritmo> <declaração_de_variáveis> <subalgoritmos> Início <corpo do algoritmo> Fim Algoritmo é uma palavra que indica o início da definição de um algoritmo em forma de pseudocódigo. <nome_do_algoritmo> é um nome simbólico dado ao algoritmo com a finalidade de distingui-los dos demais. <declaração_de_variáveis> consiste em uma porção opcional onde são declaradas as variáveis globais usadas no algoritmo principal e, eventualmente, nos subalgoritmos. <subalgoritmos> consiste de uma porção opcional do pseudocódigo onde são definidos os subalgoritmos (veremos mais adiante). Início e Fim são respectivamente as palavras que delimitam o início e o término do conjunto de instruções do corpo do algoritmo. Como exemplo, segue abaixo a representação do algoritmo do cálculo da média visto anteriormente, na forma de um pseudocódigo. Algoritmo Media Var N1, N2, MEDIA: real Início Leia N1, N2 MEDIA=(N1 + N2) / 2 Se MEDIA >= 7 então Escreva Aprovado Senão Escreva Reprovado FimSe Fim 11

15 1.2 Exercícios 1. Por que a lógica é tão importante para a computação? 2. O que são instruções? 3. O que é um algoritmo? Quais as diferenças entre algoritmo computacional e não computacional? 4. O que é uma linguagem de programação? Cite alguns exemplos. 5. O que é um programa? 6. Referente à programação, diferencie aspecto estático e dinâmico. 7. Quais são as etapas na criação de um algoritmo? 8. O que é um teste de mesa e qual a sua importância? 9. Identifique os dados de entrada, processamento e saída no algoritmo abaixo: Receba código do produto Receba valor do produto Receba quantidade comprada do produto Calcule o valor da compra Mostre o valor da compra 10. Explique as três formas de representação de um algoritmo. 11. Crie um algoritmo utilizando descrição narrativa para resolver os seguintes problemas: a. Trocar uma lâmpada b. Preparar um café c. Receber um número e informe se ele é negativo, zero ou positivo 12

16 12. Especifique as ações necessárias para mover três discos de uma Torre de Hanói, que consiste de três hastes (a - b - c), uma das quais serve de suporte para três discos de tamanhos diferentes ( ), os menores sobre os maiores. Pode-se mover um disco de cada vez para qualquer haste, contanto que nunca seja colocado um disco maior sobre um menor. O objetivo é transferir os três disco para outra haste. (Obs.: o problema é solucionado realizando 7 movimentos) 13. Represente os algoritmos criados na questão 11 através de fluxograma. 14. Faça um teste de mesa para o algoritmo da letra C da questão

17 2. Portugol A partir de agora será introduzida uma linguagem de expressão de algoritmos, o PORTUGOL. Serão apresentadas a sintaxe e a semântica dos comandos da linguagem. PORTUGOL é uma pseudolinguagem de programação utilizada para obter uma notação para algoritmos, a ser usada na definição, na criação, no desenvolvimento e na documentação de um programa. O identificador é o elemento básico da linguagem, a sua sintaxe é definida pelo diagrama apresentado na abaixo: Figura 7: Diagrama que representa um identificador 2.1 Variáveis e constantes Variáveis e constantes são os elementos básicos que um programa manipula. Uma variável é um espaço reservado na memória do computador para armazenar um tipo de dado determinado. Variáveis devem receber nomes para poderem ser referenciadas e modificadas quando necessário. Um programa deve conter declarações que especificam de que tipo são as variáveis que ele utilizará e as vezes um valor inicial. Tipos podem ser por exemplo: inteiros, reais, caracteres, etc. As expressões combinam variáveis e constantes para calcular novos valores Constante Podemos definir um dado como constante quando ele não sofre nenhuma variação com o tempo, ou seja, seu valor é constante desde o início até o fim da execução do algoritmo, assim como é constante para execuções diferentes no tempo. Exemplos: 2, "verdadeiro", Pi No algoritmo visto no capítulo 1 (figura 6) que calcula a média do aluno, sendo que o número de avaliações sempre serão duas, podemos perceber que: 14

18 2.1.2 Variável Um dado é classificado como variável quando tem a possibilidade de ser alterado em algum instante no decorrer do tempo, ou seja, durante a execução do algoritmo. Por exemplo, a cotação do dólar, o valor da soma dados dois números informados pelo usuário. Um bom exemplo para diferenciar constante e variável é o cálculo usado para obter a área de uma circunferência. Sabemos que: Neste exemplo: O valor de π é constante, pois é sempre igual a O raio r é variável, pois pode assumir diferentes valores a cada cálculo da área. A área A calculada para diferentes raios também é variável Tipos de dados As variáveis e as constantes podem ser basicamente de quatro tipos: numéricas, caracteres, alfanuméricas ou lógicas. A tabela a seguir explica cada um deles. Figura 8: Tipos de dados 15

19 Neste contexto, uma variável pode ser entendida como um local onde se pode colocar qualquer valor do conjunto de valores possíveis do tipo básico associado. Assim, as variáveis só podem armazenar valores de um mesmo tipo, de maneira que também são classificadas como sendo numéricas, lógicas e literais. Toda variável deve ser declarada conforme a sintaxe apresentada na figura 9. A semântica de uma declaração de variáveis corresponde à criação de locais na memória,rotulada com o nome do identificador (variável) e marcada com o tipo de valores que ela pode conter. Figura 9: Diagrama que representa a definição de uma variável 2.2 Operadores Os operadores são meios pelo qual incrementamos, decrementamos, comparamos e avaliamos dados dentro do computador. Temos três tipos de operadores: aritméticos, relacionais e lógicos. Os operadores aritméticos são os utilizados para obter resultados numéricos. Além da adição, subtração, multiplicação e divisão, podem utilizar também o operador para exponenciação. Os símbolos para os operadores aritméticos são: Figura 10: Operadores aritméticos 16

20 As operações aritméticas seguem uma hierarquia, a saber: 1º ( ) Parênteses 2º Exponenciação 3º Multiplicação, Divisão (o que aparecer primeiro) 4º + ou (o que aparecer primeiro) Exemplo: Os operadores relacionais são utilizados para comparar string de caracteres e números. Os valores a serem comparados podem ser caracteres ou variáveis. Estes operadores sempre retornam valores lógicos (verdadeiro ou falso). Para estabelecer prioridades no que diz respeito a qual operação executar primeiro, utilize os parênteses. Os operadores relacionais são: Figura 11: Operadores relacionais Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso. Os operadores lógicos são: 17

21 Figura 12: Operadores lógicos Por exemplo, suponha que A = 5, B = 8 e C =1 então temos que: 2.3 Blocos e comandos básicos de controle O comando de ATRIBUIÇÃO é utilizado para atribuir um valor a uma variável. Para isso usa-se o símbolo =, conforme a seguinte sintaxe: Figura 13:Sintaxe de atribuição Um bloco pode ser definido como um conjunto de comandos com uma função bem definida. Serve também para definir os limites onde as variáveis declaradas em seu interior são conhecidas. Exemplo: início < declaração de variáveis > < comandos > fim Uma sequência simples é um conjunto de comandos separados por ponto e vírgula (;), que serão executadas numa seqüência linear de cima para baixo. 18

22 Exemplo: comando1; comando2; comando3;... comandon; Estrutura condicional Quando a ação a ser executada depender de uma inspeção (teste), teremos uma alternativa, ou estrutura condicional, simples ou composta. Estrutura da uma estrutura condicional simples (Se...então): se < condição > então comando1; comando2;... comandon; fimse; Exemplo de uma estrutura condicional composta: (Se...então...senão) se < condição > então comando1; comando2;... comandon; senão comando1 ; comando2 ;... comandon ; fimse; Nos comandos apresentados, <condição > é qualquer expressão cujo resultado seja falso ou verdadeiro. Exemplo: Qual será o valor final das variáveis A e B depois da execução do seguinte algoritmo? início inteiro: A, B; A = 1; B = 2; se A > B então A = 5; senão A = 10; fim se; fim; 19

23 2.3.2 Estrutura de repetição Uma estrutura de repetição é quando um conjunto de ações é executado repetidamente enquanto uma determinada condição permanece válida (ou seja, quando o resultado de da expressão é um valor lógico verdadeiro). Exemplo: Estrutura de repetição enquanto: enquanto < condição > faça comando1; comando2;... comandon; fim enquanto; Enquanto o valor da <condição> for verdadeiro, as ações dos comandos são executadas e quando se tornar falso, o comando é abandonado. Se já da primeira vez o resultado for falso, os comandos não são executados. Exemplo: Qual será o valor final das variáveis declaradas no seguinte algoritmo, depois de sua execução? início inteiro: A, B, C, I; A = 1; B = 1; I = 1; enquanto I < 10 faça C = A + B; A = B; B = C; I = I + 1; fim enquanto; fim; A estrutura de repetição repita difere da enquanto no que diz respeito ao momento em que o teste da condição é submetido. repita comando1; comando2;... comandon; até < condição >; Na estrutura enquanto o teste é realizado antes da execução do primeiro loop, ou seja, pode ser que os comandos não sejam realizados sequer uma vez, caso a condição seja falsa já na primeira vez em que foi testada. Já na repita os comandos sempre serão executados pelo menos uma vez, até que a condição seja testada, no final da estrutura. 20

24 A estrutura de repetição para difere das estruturas enquanto e repita, pois utiliza uma variável de controle, que atua como um contador de repetições. para I de 1 até 10 passo 1 faça comando1; comando2;... comandon; fim para; O comando abandone só tem sentido dentro de um comando de repetição (enquanto, repita e para). Além disso, estará sempre associado ao teste de uma condição com comando se. Quando o abandone é encontrado, o próximo comando a ser executado é o primeiro logo após o fim do comando de repetição mais interno onde este aparece.... enquanto I > 0 faça I=I + 1; imprima (I); se I² + 1 <= 150 então I = I + 25; senão abandone; fim se; fim enquanto; Até agora todos os valores calculados pelos algoritmos foram gerados e permaneceram na memória. Para obter ou para fornecer dados ao ambiente exterior ao algoritmo, por exemplo do teclado e para o vídeo, é preciso utilizar comandos de entrada (leia) e saída (imprima). Suas sintaxes são apresentadas a seguir. Figura 14: Sintaxe leia e imprima 21

25 Exemplo de um algoritmo que usa comandos de entrada e saída: início inteiro: A, B, SOMA; leia (A, B); SOMA = A + B; imprima ( A soma entre, A, e, B, é, SOMA); fim; A estrutura de decisão caso/selecione é utilizada para testar, na condição, uma única expressão, que produz um resultado, ou, então, o valor de uma variável, em que está armazenado um determinado conteúdo. Compara-se, então, oresultado obtido no teste com os valores fornecidos em cada cláusula Caso. Em outras palavras, esta estrutura permite que seja escolhida uma entre várias opções possíveis. Associada à escolha, podemos ter uma instrução ou um bloco de instruções que serão executadas. Nesta estrutura é executado o bloco correspondente a condição verdadeira. Caso nenhuma das condições for verdadeira, será executado o bloco de instruções associado ao caso padrão.... Escolha <variável> caso <condição> <bloco de instruções> caso <condição> <bloco de instruções>... caso <condição> <bloco de instruções> padrao <bloco de instruções> fimescolha Segue abaixo o exemplo de um algoritmo que diz o estado de um time de futebol. caso "Bahia", Vitória escreva("é um time baiano.") caso "Fluminense", Flamengo", "Vasco", "Botafogo" escreva("é um time carioca.") caso "São Paulo", "Palmeiras", "Santos", "Corinthians" escreva("é um time paulista.") outrocaso escreva("é de outro estado.") fimescolha fimalgoritmo 22

26 2.4 Exercícios 1. Elabore um diagrama de blocos que leia um número. Se positivo armazene-o em A, se for negativo, em B. No final mostrar o resultado. 2. Represente o algoritmo anterior em pseudocódigo. 3. Ler um número e verificar se ele é par ou ímpar. Quando for par armazenar esse valor em P e quando for ímpar armazená-lo em I. Exibir P e I no final do processamento. 4. Construa um algoritmo para ler uma variável numérica N e imprimi-la somente se a mesma for maior que 100, caso contrário informar que o número é menor que cem. 5. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo que calcule seu peso ideal, utilizando as seguintes fórmulas: para homens: (72.7*h) - 58 e para mulheres: (62.1*h) (h = altura) 6. Escrever um algoritmo para determinar o consumo médio de um automóvel sendo fornecida a distância total percorrida pelo automóvel e o total de combustível gasto. 7. Escrever um algoritmo que leia o nome de um vendedor, o seu salário fixo e o total de vendas efetuadas por ele no mês (em dinheiro). Sabendo que este vendedor ganha 15% de comissão sobre suas vendas efetuadas, informar o seu nome, o salário fixo e salário no final do mês. 8. Faça um algoritmo que receba um valor que foi depositado e exiba o valor com rendimento após um mês. Considere fixo o juro da poupança em 0,70% a. m. 9. Escrever um algoritmo que leia dois valores inteiro distintos e informe qual é o maior. 10. Faça um algoritmo que receba a idade de 10 pessoas e mostre mensagem informando maior de idade e menor de idade para cada pessoa. Considere a idade a partir de 18 anos como maior de idade. 11. Escrever um algoritmo que leia o nome e o sexo de 5 pessoas e informe o nome e se ela é homem ou mulher. No final informe total de homens e de mulheres. 12. Escrever um algoritmo que leia os dados de N pessoas (nome, sexo, idade e saúde) e informe se está apta ou não para cumprir o serviço militar obrigatório. Informe os totais. 23

27 3. Referências bibliográficas Cardoso, Olinda Nogueira Paes. Apostila de Algoritmos e Estruturas de Dados I. Lavras - MG: UFLA, Moraes, Paulo Sérgio de. Lógica de Programação. Campinas - SP: Unicamp - Centro de Computação - DSC, Química, DCA 800 Eng. Algoritmo e Lógica de Programação. Natal -RN: Universidade Federal do Rio Grande do Norte,

Algoritmos e Linguagem de Programação I

Algoritmos e Linguagem de Programação I Algoritmos e Linguagem de Programação I Roberto Ferreira roberto.ferreira@lapa.ifbaiano.edu.br 2014.1 Módulo I Aula 3 Algoritmos Computacionais Na aula anterior vimos... Quais são os passos para solucionar

Leia mais

INTRODUÇÃO À PROGRAMAÇÃO

INTRODUÇÃO À PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO 1 - CONCEITO DE ALGORITMO A automação é o processo em que uma tarefa deixa de ser desempenhada pelo homem e passa a ser realizada por máquinas, sejam estas dispositivos mecânicos,

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

Algoritmos e Linguagem de Programação I

Algoritmos e Linguagem de Programação I Algoritmos e Linguagem de Programação I Roberto roberto.ferreira@lapa.ifbaiano.edu.br 2014.1 Módulo I Aula 2 Introdução LÓGICA Lógica Lógica é a forma correta de organizar os pensamentos e demonstrar o

Leia mais

Programação de Redes de Computadores

Programação de Redes de Computadores 1: Introdução 1 MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS SÃO JOSÉ SANTA CATARINA Programação de Redes de Computadores

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

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

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

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

CURSO de NIVELAMENTO INTRODUÇÃO À PROGRAMAÇÃO CURSO de NIVELAMENTO INTRODUÇÃO À PROGRAMAÇÃO Lógica de Programação Lógica de programação é a técnica de encadear pensamentos (instruções) para atingir determinado objetivo. Instruções Instruções são regras

Leia mais

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

Introdução a Lógica de Programaçã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,

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

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

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

Aplicaremos a técnica do teste de mesa sobre o algoritmo abaixo, o qual visa determinar o número de vértices de uma figura geométrica.

Aplicaremos a técnica do teste de mesa sobre o algoritmo abaixo, o qual visa determinar o número de vértices de uma figura geométrica. Teste de Mesa Ao nos recordarmos dos passos necessários para a construção de um algoritmo veremos que após a elaboração de um algoritmo devemos testá-lo realizando simulações com o propósito de verificarmos

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

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

Estruturas de Controle de Fluxo

Estruturas de Controle de Fluxo Estruturas de Controle de Fluxo Exercício 11 Elabore um algoritmo, representando-o com um pseudocódigo e com um fluxograma, que com base no nome, em três notas e no número de faltas de um aluno qualquer

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

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

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto Lógica de Programação Profas. Simone Campos Camargo e Janete Ferreira Biazotto O curso Técnico em Informática É o profissional que desenvolve e opera sistemas, aplicações, interfaces gráficas; monta estruturas

Leia mais

Ivanovitch Medeiros Dantas da Silva. Natal, 01 de setembro de 2011

Ivanovitch Medeiros Dantas da Silva. Natal, 01 de setembro de 2011 Ivanovitch Medeiros Dantas da Silva Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação DCA0800 - Algoritmos e Lógica de Programação Natal, 01 de setembro de

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

Estruturas de Controle de Fluxo

Estruturas de Controle de Fluxo Estruturas de Controle de Fluxo Exercício 11 Elabore um algoritmo, representando-o com um pseudocódigo e com um fluxograma, que com base no nome, em três notas e no número de faltas de um aluno qualquer

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 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

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

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior LÓGICA DE PROGRAMAÇÃO Algoritmos Computacionais Sérgio Carlos Portari Júnior portari.uemgfrutal@gmail.com Tópicos abordados Algoritmos Computacionais Estrutura de Dados Tipos Primitivos Constantes Variáveis

Leia mais

Introdução à Programação. 2ª aula. Prof. José Honorato F. Nunes

Introdução à Programação. 2ª aula. Prof. José Honorato F. Nunes Introdução à Programação 2ª aula Resumo da aula Representação de algoritmos Atividades de revisão de algoritmos Variáveis Tipos de dados Constantes Atividades Formas de Representação de Algoritmos As principais

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

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.

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. Engenharia de Controle e Automação Programação I Prof. Ricardo Sobjak ricardo.sobjak@ifsc.edu.br Tipos de dados Numéricos Alfanuméricos Lógicos Tipos de dados Os tipos de dados primitivos ou básicos são

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

- 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

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

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

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35 BCC 201 - Introdução à Programação Portugol Guillermo Cámara-Chávez UFOP 1/35 Introdução I Lógica A lógica é usada no dia a dia das pessoas que trabalham com computação para solucionar problemas de forma

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

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

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha Conceitos Lógica de Programação técnica de encadear pensamentos

Leia mais

LISTA DE EXERCÍCIOS. 2) Explique a diferença entre algoritmo computacional e não computacional.

LISTA DE EXERCÍCIOS. 2) Explique a diferença entre algoritmo computacional e não computacional. LISTA DE EXERCÍCIOS 1) Qual a definição de lógica de programação? Lógica de Programação é a técnica de encadear pensamentos para atingir determinados objetivos. É necessária para pessoas que desejam trabalhar

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

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

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

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Parte 02 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

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 a Computação

Introdução a Computação Edirlei Soares de Lima Introdução a Computação Aula 02 Lógica de Programação Lógica de Programação Lógica de Programação é a técnica de criar sequências lógicas de ações para atingir

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

Capítulo 1 - Lógica e Algoritmos

Capítulo 1 - Lógica e Algoritmos 1. Introdução à Lógica de Programação Capítulo 1 - Lógica e Algoritmos A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas, ela permite definir

Leia mais

4 Introdução ao Algoritmo

4 Introdução ao Algoritmo 4 Introdução ao Algoritmo 4.1 Conceito de Algoritmo A automação é o processo em que uma tarefa deixa de ser desempenhada pelo homem e passa a ser realizada por máquinas, sejam estes dispositivos mecânicos,

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

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

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

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

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

Lógica de Programação e Algoritmos. Prof. André Y. Kusumoto Lógica de Programação e Algoritmos Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com 2 Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Constantes, Variáveis e Tipos de Dados Variáveis e constantes

Leia mais

Algoritmos Computacionais

Algoritmos Computacionais Material produzido por professores da UFABC Objetivos Aprender a sintaxe e a semântica de instruções de saída e de entrada de dados na linguagem PORTUGOL Aprender alguns operadores pra uso na parte de

Leia mais

LISTA DE EXERCÍCIOS. 2) Explique a diferença entre algoritmo computacional e não computacional.

LISTA DE EXERCÍCIOS. 2) Explique a diferença entre algoritmo computacional e não computacional. LISTA DE EXERCÍCIOS 1) Qual a definição de lógica de programação? Lógica de Programação é a técnica de encadear pensamentos para atingir determinados objetivos. É necessária para pessoas que desejam trabalhar

Leia mais

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira 1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA PSEUDO-CÓDIGO Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br Introdução 2 Um algoritmo pode ser

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

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

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 03 (baseado no material do prof. Marcelo Linder) Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br

Leia mais

LISTA DE EXERCÍCIOS. 2) Explique a diferença entre algoritmo computacional e não computacional.

LISTA DE EXERCÍCIOS. 2) Explique a diferença entre algoritmo computacional e não computacional. LISTA DE EXERCÍCIOS 1) Qual a definição de lógica de programação? 2) Explique a diferença entre algoritmo computacional e não computacional. 3) Qual a definição de instruções em computação? 4) Qual a definição

Leia mais

Introdução à Algoritmos. Professora: Fabíola Gonçalves.

Introdução à Algoritmos. Professora: Fabíola Gonçalves. Introdução à Algoritmos Professora: Fabíola Gonçalves. AGENDA Algoritmos Definição Por que precisamos de Algoritmos Características Formas de representação Descrição Narrativa Fluxograma Linguagem Algorítmica

Leia mais

Introdução à Programação. Ceça Moraes

Introdução à Programação. Ceça Moraes Introdução à Programação Ceça Moraes Conteúdo Algoritmos Representação Exercícios Linguagens de Programação Compilador Interpretador 2 Lógica O que é lógica? Ciência que estuda as leis do raciocínio. Correção/validação

Leia mais

Algoritmos e Programação - Engenharia da Computação -

Algoritmos e Programação - Engenharia da Computação - Algoritmos e Programação - Engenharia da Computação - Prof. Alessandro Zimmer Pseudo Linguagem de Programação - PORTUGOL - Pseudo-Linguagem Linguagem de Programação? Notação formal servindo para: - Expressar

Leia mais

Algoritmos. Prof. Jonatas Bastos Site:

Algoritmos. Prof. Jonatas Bastos   Site: Algoritmos Prof. Jonatas Bastos Email: jonatasfbastos@gmail.com Site: http://jonatasfbastos.wordpress.com/ 1 Exemplo de Algoritmo { declaração de variáveis } real: p1, p2, p3, p4, Media; inicio { comandos

Leia mais

CAI Fluxograma Revisão 7

CAI Fluxograma Revisão 7 exatasfepi.com.br CAI Fluxograma Revisão 7 André Luís Duarte O coração do entendido adquire o conhecimento, e o ouvido dos sábios busca a sabedoria. Pv 18:15 Fluxograma Introdução Formas básicas Estrutura

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

Fluxograma. Símbolo Nome Descrição

Fluxograma. Símbolo Nome Descrição 63 Fluxograma Analisaremos agora o método de representação de algoritmos denominado fluxograma. Conceitualmente um fluxograma é um tipo de diagrama, e pode ser entendido como uma representação esquemática

Leia mais

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

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares Algoritmo e Programação Capítulo 2 Tópicos Preliminares Tópicos Preliminares Neste capítulo Tipos Primitivos Variáveis Expressões Aritméticas, Lógicas e Relacionais Comandos de Entrada e Saída Blocos Tópicos

Leia mais

Introdução à Programação. slides de Deise Sacol

Introdução à Programação. slides de Deise Sacol Introdução à Programação slides de Deise Sacol 1 2 Elaboração de um programa Problema Análise Programa Algoritmo 3 Processo de geração de um programa Análise do problema: Ler atentamente o enunciado do

Leia mais

Prof. A. G. Silva. 14 de março de Prof. A. G. Silva INE5231 Computação Científica I 14 de março de / 26

Prof. A. G. Silva. 14 de março de Prof. A. G. Silva INE5231 Computação Científica I 14 de março de / 26 INE5231 Computação Científica I Prof. A. G. Silva 14 de março de 2017 Prof. A. G. Silva INE5231 Computação Científica I 14 de março de 2017 1 / 26 Conteúdo programático O computador - [3 horas-aula] Representação

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

Subalgoritmos. algoritmo completo é dividido num algoritmo principal e em diversos subalgoritmos (tantos quantos forem necessários ou convenientes).

Subalgoritmos. algoritmo completo é dividido num algoritmo principal e em diversos subalgoritmos (tantos quantos forem necessários ou convenientes). Subalgoritmos Sempre é possível dividir problemas grandes e complicados em problemas menores e de solução mais simples. A decomposição de um problema é fator determinante para a redução da complexidade.

Leia mais

Oficina de Python Prof. Me. José Carlos Perini

Oficina de Python Prof. Me. José Carlos Perini Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação

Leia mais

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas Estrutura de um Programa em Linguagem Algorítmica Nesse curso nós vamos utilizar a linguagem algorítmica para

Leia mais

Programação para Games I

Programação para Games I Programação para Games I Introdução Apresentação Professor Professor Ariel Dias Apresentação Disciplina O que veremos? www.arieldias.com BlackBoard Apresentação Turma Tarde Continuada I 20/03 Continuada

Leia mais

Estruturas de Decisão

Estruturas de Decisão Estruturas de Decisão Professor: Juliano Lucas Gonçalves juliano.goncalves@ifsc.edu.br Agenda Operadores Relacionais Lógicos Estruturas de Decisão Se... Entao caso 2 Operadores Relacionais São muito usados

Leia mais

2. Criação de Algoritmos

2. Criação de Algoritmos 2. Criação de Algoritmos Neste capítulo, será visto o desenvolvimento de um algoritmo, regras, etapas e simbologias. 2.1 O que é Pseudocódigo? Fig.1: Ilustração de algoritmo Fonte: Internet Os algoritmos

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

Oficina de Python Prof. Me. José Carlos Perini

Oficina de Python Prof. Me. José Carlos Perini Oficina de Python Prof. Me. José Carlos Perini Prof. José Carlos Perini Formação em Análise de Sistemas Univ. S. Francisco Pós em Administração Universidade S. Francisco Mestrado em Ciência da Computação

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

Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage Algoritmos- continuação

Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage Algoritmos- continuação Faculdade de Estudos Avançados do Pará Disciplina: Algoritmos Professor: Armando Hage Algoritmos- continuação Situação Problema Cálculos Decisão Verdadeiro Falso Diagrama de Bloco O diagrama de bloco é

Leia mais

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

CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA : INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO ASSUNTO: ALGORITMOS PROFESSOR : Romilson Lopes Sampaio Introdução a Lógica de Programação

Leia mais

Estruturas de Controle de Fluxo

Estruturas de Controle de Fluxo 2. Comando de Seleção Múltipla Em algumas situações ao chegarmos a uma determinada instrução de um algoritmo devemos selecionar um dentre alguns trechos a seguir, tendo como base para esta escolha um conjunto

Leia mais

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

Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039) Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039) F REDDY BRASILEIRO www.inf.ufes.br/~fbrasileiro fbrasileiro@inf.ufes.br Conteúdo 4. Elementos fundamentais

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

Fluxograma. Conjunto de símbolos utilizados em fluxogramas

Fluxograma. Conjunto de símbolos utilizados em fluxogramas 27 Símbolo Nome Terminador Seta de fluxo Entrada de dados Atribuição Saída de dados Desvio condicional Declaração Fluxograma Descrição Indica o início e o fim do fluxo do algoritmo. Indica o sentido do

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

Conceitos e Representação de Algoritmos

Conceitos e Representação de Algoritmos BCC 201 - Introdução à Programação Conceitos e Representação de Algoritmos Guillermo Cámara-Chávez UFOP 1/37 Importância do estudo dos Algoritmos... antes que o computador possa executar uma tarefa, deve

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

Introdução à Programação. slides de Deise Sacol

Introdução à Programação. slides de Deise Sacol Introdução à Programação slides de Deise Sacol 1 LÓGICA DE PROGRAMAÇÃO: Técnica de encadear pensamentos para atingir determinado objetivo Necessária para desenvolver programas e sistemas, pois permite

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

Introdução à Computação

Introdução à Computação Conteúdo de hoje... Your Logo Here Definição de Algoritmo Prof. Lucas Amorim lucas@ic.ufal.br Exemplos de Algoritmos Técnicas de resolução de problemas Natural Introdução à Computação Definição e Representação

Leia mais

PROGRAMADOR JAVA. Aula 0X31 Semanas - 0b Instrutor : Léo Billi

PROGRAMADOR JAVA. Aula 0X31 Semanas - 0b Instrutor : Léo Billi Aula 0X31 Semanas - 0b110001 Instrutor : Léo Billi Email : leo.billi@gmail.com ALGORITMOS Podemos dizer que algoritmo é uma receita de bolo! Na verdade é uma sequência finita e lógica de instruções de

Leia mais

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

Professor Mauricio Lederer Algoritmos. Entrada e saída de dados Entrada Algoritmos Entrada e saída de dados Muitas vezes, um algoritmo, para que possa trabalhar, precisa de dados de entrada informados pelo usuário, porque nem sempre é necessário ter esse tipo de dados.

Leia mais

ALGORITMO ALGORITMO NÃO COMPUTACIONAL

ALGORITMO ALGORITMO NÃO COMPUTACIONAL Lógica & Algoritmos ALGORITMO Um Algoritmo é uma seqüência de instruções ordenadas de forma lógica para a resolução de uma determinada tarefa ou problema. ALGORITMO NÃO COMPUTACIONAL Abaixo é apresentado

Leia mais

Introdução à Algoritmos INF 1005 e INF Programação I

Introdução à Algoritmos INF 1005 e INF Programação I Introdução à Algoritmos INF 1005 e INF1004 - Programação I Pontifícia Universidade Católica Departamento de Informática 1 Algoritmo: Conceito Sequência finita e não ambígua de passos para a solução de

Leia mais

Introdução a programação Visão geral

Introdução a programação Visão geral Instituto Federal de Minas Gerais Campus Ponte Nova Introdução a programação Visão geral Professor: Saulo Henrique Cabral Silva Conceitos lógica/algoritmo A lógica é usada no dia a dia das pessoas para

Leia mais

PC Fluxograma Revisão 8

PC Fluxograma Revisão 8 exatasfepi.com.br PC Fluxograma Revisão 8 André Luís Duarte O coração do entendido adquire o conhecimento, e o ouvido dos sábios busca a sabedoria. Pv 18:15 Fluxograma Introdução Formas básicas Estrutura

Leia mais

Aula 4 Estruturas Condicionais

Aula 4 Estruturas Condicionais Departamento de Sistemas de Computação Universidade de São Paulo SSC 600 Introdução a Ciência de Computação I Aula 4 Estruturas Condicionais Seiji Isotani, Rafaela V. Rocha sisotani@icmc.usp.br rafaela.vilela@gmail.com

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

Estruturas de Decisão

Estruturas de Decisão Estruturas de Decisão Professor: Juliano Lucas Gonçalves juliano.goncalves@ifsc.edu.br Agenda Operadores Relacionais Lógicos Estruturas de Decisão Se...Entao Se...Entao...Senao Se...Entao...Senao (encadeados)

Leia mais