Aula 3: Algoritmos: Formalização e Construção

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

Download "Aula 3: Algoritmos: Formalização e Construção"

Transcrição

1 Aula 3: Algoritmos: Formalização e Construção Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 1 / 33

2 Agenda 1 Revisão e Contexto 2 Formalização 3 Representação de Algoritmos 4 Construção de Algoritmos 5 Introdução a Pseudocódigos 6 Revisão Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 2 / 33

3 Agenda 1 Revisão e Contexto 2 Formalização 3 Representação de Algoritmos 4 Construção de Algoritmos 5 Introdução a Pseudocódigos 6 Revisão Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 3 / 33

4 Intuição de Algoritmos Algoritmo: sequência de passos. Algoritmos já conhecidos: Soma. Busca de página em livro. Teste de primalidade. Algoritmos possivelmente não conhecidos: Crivo de Eratóstenes: números primos até n. Método babilônico: cálculo da raiz quadrada de um número por aproximação. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 4 / 33

5 Foco da Aula de Hoje Definição Formal Definir formalmente conceitos de algoritmos. Representação de algoritmos. Construção de Pseudocódigos Objetivo Definir a linguagem básica de pseudocódigo. Criar algoritmos usando pseudocódigo. Conhecer os conceitos formais de algoritmos e a construção de pseudocódigos. Pseudocódigos são mais próximos de linguagens de programação, como C. Base fundamental para a programação. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 5 / 33

6 Agenda 1 Revisão e Contexto 2 Formalização 3 Representação de Algoritmos 4 Construção de Algoritmos 5 Introdução a Pseudocódigos 6 Revisão Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 6 / 33

7 Definições de Algoritmos Uma Definição: Um algoritmo é a descrição de um padrão de comportamento, expressado em termos de um repertório bem definido e finito de ações primitivas, as quais damos por certo que podem ser executadas. (Guimarães e Lages, Algoritmo e Estrutura de Dados, 1994) Outra Definição: Um algoritmo é uma sequência de passos computacionais que transformam a entrada na saída. (Cormen et.al., Introdução a Algoritmos: Teoria e Prática, 3 a ed., 2009) Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 7 / 33

8 Definições de Algoritmos (II) Segundo as definições, um algoritmo deve: ter início e fim; ser descrito em termos de ações não ambíguas e bem definidas; seguir uma sequência ordenada. Além disso, um algoritmo deve ter: entrada (ou várias entradas) e saída (ou várias saídas). A entrada deve ser transformada (processada) na saída. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 8 / 33

9 Características de Algoritmos: Correção Correção: Um algoritmo é dito correto se, para todas as entradas possíveis, a saída é correta. Exemplo: um algoritmo que, dado dois números inteiros, calcula a razão entre eles. 1 Obtém os dois números inteiros n1 e n2. 2 Calcula a divisão entre n1 e n2. 3 Exibe o resultado da divisão. Como verificar se um algoritmo é correto? Testando todas as possíveis entradas! Por muitas vezes ser inviável, usa-se técnicas matemáticas. Testar alguns casos ajuda apenas a encontrar erros, mas não podemos afirmar que ele está correto. Em aulas futuras, veremos métodos para verificar a correção de algoritmos para entradas específicas. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 9 / 33

10 Características de Algoritmos: Custo Custo de processamento: quanto tempo demora para processar cada passo. Custo de espaço: quanto de memória será usada para armazenar os dados. Tais custos são medidos de acordo com o tamanho da entrada. Um passo é considerado como uma operação elementar (por exemplo: soma, divisão, comparação,... ). Análise de custo: Melhor caso: menor valor de custo sobre todas as entradas. Pior caso: maior valor de custo sobre todas as entradas. Caso médio (esperado): média dos tempos de execução de todas as entradas. Valor mais difícil de ser calculado. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 10 / 33

11 Características de Algoritmos: Custo de Processamento Exemplo 1: dado um número inteiro n, variando de 1 a 100, indique se n é primo. Solução 1: dividir n por todos os números de 1 a 100 e verificar se foi dividido apenas por 1 e ele mesmo. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 11 / 33

12 Características de Algoritmos: Custo de Processamento Exemplo 1: dado um número inteiro n, variando de 1 a 100, indique se n é primo. Solução 1: dividir n por todos os números de 1 a 100 e verificar se foi dividido apenas por 1 e ele mesmo. Solução 2: dividir n por todos os número de 2 a n e verificar se foi dividido apenas por 1 e ele mesmo. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 11 / 33

13 Características de Algoritmos: Custo de Processamento Exemplo 1: dado um número inteiro n, variando de 1 a 100, indique se n é primo. Solução 1: dividir n por todos os números de 1 a 100 e verificar se foi dividido apenas por 1 e ele mesmo. Solução 2: dividir n por todos os número de 2 a n e verificar se foi dividido apenas por 1 e ele mesmo. Solução 3: dividir n por todos os número de 2 a n e verificar se foi dividido apenas por 1 e ele mesmo. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 11 / 33

14 Características de Algoritmos: Custo de Processamento Exemplo 1: dado um número inteiro n, variando de 1 a 100, indique se n é primo. Solução 1: dividir n por todos os números de 1 a 100 e verificar se foi dividido apenas por 1 e ele mesmo. Solução 2: dividir n por todos os número de 2 a n e verificar se foi dividido apenas por 1 e ele mesmo. Solução 3: dividir n por todos os número de 2 a n e verificar se foi dividido apenas por 1 e ele mesmo. Exemplo 2: em um livro de P páginas, deseja-se verificar se uma página x está faltando. Solução 1: folhear o livro, página por página, de 1 até P e verificar se x apareceu. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 11 / 33

15 Características de Algoritmos: Custo de Processamento Exemplo 1: dado um número inteiro n, variando de 1 a 100, indique se n é primo. Solução 1: dividir n por todos os números de 1 a 100 e verificar se foi dividido apenas por 1 e ele mesmo. Solução 2: dividir n por todos os número de 2 a n e verificar se foi dividido apenas por 1 e ele mesmo. Solução 3: dividir n por todos os número de 2 a n e verificar se foi dividido apenas por 1 e ele mesmo. Exemplo 2: em um livro de P páginas, deseja-se verificar se uma página x está faltando. Solução 1: folhear o livro, página por página, de 1 até P e verificar se x apareceu. Solução 2: folhear o livro, página por página, de 1 até encontrar x ou uma página de valor maior que x. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 11 / 33

16 Agenda 1 Revisão e Contexto 2 Formalização 3 Representação de Algoritmos 4 Construção de Algoritmos 5 Introdução a Pseudocódigos 6 Revisão Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 12 / 33

17 Representação de Algoritmos Problema Programa Fase de resolução do problema Fase de Implementação 2 fases de representação: 1 resolução de problema; 2 implementação por alguma linguagem de programação. algoritmo + linguagem de programação = programa. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 13 / 33

18 Representação de Algoritmos (II) 1 Resolução de problemas: uso de linguagem natural, pseudolinguagem ou representação gráfica. Pseudolinguagem: para computação, uma linguagem mais próxima de uma linguagem de programação. Representação gráfica: fluxogramas; diagramas de Nassi-Shneiderman ou Chapin; diagramas de Warnier-Or. Vantagens: fácil entendimento pelo ser humano. Desvantagens: geralmente apresentam ambiguidades. 2 Implementação: uso de linguagens de programação: C, Java, Fortran,.... Vantagens: capaz de ser entendido por uma máquina e ao mesmo tempo pelo programador. Desvantagens: é necessário conhecer a lexicografia, sintaxe e semântica da linguagem. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 14 / 33

19 Fase de Resolução de Problemas: Linguagem Natural Linguagem natural: ĺıngua portuguesa, inglesa.... Problema: calcular a média de 2 notas de um aluno onde a nota para aprovação é 7,0: 1 Adquirir as duas notas do aluno. 2 Calcular a média aritmética entre as duas notas. 3 Se a média for menor que 7,0, então o aluno foi reprovado. 4 Caso contrário, o aluno foi aprovado. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 15 / 33

20 Fase de Resolução de Problemas: Representação Gráfica Fluxograma: Diagramas de Chapin: Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 16 / 33

21 Fase de Resolução de Problemas: Pseudocódigo Algoritmo 1: Exemplo de um algoritmo em pseudocódigo início real: N1, N2, media; leia N1, N2; media (N1 + N2)/2; se media 7,0 então escreva Aprovado ; senão escreva Reprovado ; fim fim Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 17 / 33

22 Fase de Implementação: Linguagem C 1 # include < stdio.h> 2 3 /* Descricao : Este programa calcula o 4 * valor da media entre dois numeros. */ 5 int main ( void ){ 6 double N1, N2, media ; 7 8 scanf ("%lf %lf", &N1, &N2 ); 9 media = (N1 + N2 )/2; 10 if( media >= 7.0){ 11 printf (" Aprovado \n"); 12 } 13 else { 14 printf (" Reprovado \n"); 15 } 16 return 0; 17 } Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 18 / 33

23 Agenda 1 Revisão e Contexto 2 Formalização 3 Representação de Algoritmos 4 Construção de Algoritmos 5 Introdução a Pseudocódigos 6 Revisão Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 19 / 33

24 Construindo Algoritmos Etapas de construção de algoritmos: 1 Compreender o problema. 2 Identificar os dados de entrada. 3 Identificar os dados de saída. 4 Determinar o que é preciso para transformar dados de entrada em dados de saída: 1 observar regras e limitações do problema sobre a entrada; 2 identificar todas as ações a realizar sobre a entrada para transformá-la em saída; 3 eliminar ambiguidades. 5 Construir o algoritmo em pseudocódigo. 6 Testar (manualmente) o algoritmo. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 20 / 33

25 Construindo Algoritmos: Etapa 1 Etapa 1: compreender o problema: Parte fundamental da construção do algoritmo. Sem entender o problema, não sabemos o que devemos fazer. Exemplo 1: Verificar, em um livro numerado de 1 a 1000, se a página x está faltando. Exemplo 2: Dados 10 números reais, calcular a média aritmética entre eles. No exemplo 1, devemos realizar uma busca pela página x em uma numeração ordenada de 1 a No exemplo 2, devemos somar todos os números e dividir por 10, para obter a média. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 21 / 33

26 Construindo Algoritmos: Etapa 2 e 3 Etapa 2 e 3: identificados dados de entrada e saída: Entrada: aquilo que é dado pelo problema, mesmo que seja uma variável. Saída: o resultado esperado do problema para a entrada dada. No exemplo 1: entrada: o livro e a página x. saída: verdadeiro, se a página falta ou falso, se a página encontra-se no livro. No exemplo 2: entrada: os 10 números reais. saída: um número real que corresponde ao valor da média. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 22 / 33

27 Construindo Algoritmos: Etapa 4 Que ações devem ser feitas para transformar os dados de entrada em dados de saída? Existe alguma regra explicitada na descrição do problema ou regra de otimização? Existe alguma limitação empregada na descrição do problema? Existe alguma ambiguidade nas ações? Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 23 / 33

28 Construindo Algoritmos: Etapa 4 Exemplo 1: Ações: 1 Obter o livro e valor da página x; 2 Abrir o livro na página 1; 3 Verificar se x é igual a página atual; 4 Se x é igual a página atual, então a saída é verdadeira e termina; 5 Se x é maior que a página atual, então a saída é falsa e termina; 6 Caso contrário, a saída é falsa; 7 Passar para a próxima página; 8 Se acabou o livro, então a saída é falsa e termina. 9 Caso contrário, retornar para o passo 3; Regras: por sabermos que o livro é ordenado por página, podemos otimizar a busca. Limitações: observar se o livro acabou. Eliminar ambiguidades: página atual? Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 24 / 33

29 Construindo Algoritmos: Etapa 4 Exemplo 1: Ações: 1 Obter o livro e valor da página x; 2 Abrir o livro na página 1; 3 Verificar se x é igual a página atual; 4 Se x é igual a página atual, então a saída é verdadeira e termina; 5 Se x é maior que a página atual, então a saída é falsa e termina; 6 Caso contrário, a saída é falsa; 7 Passar para a próxima página; 8 Se acabou o livro, então a saída é falsa e termina. 9 Caso contrário, retornar para o passo 3; Regras: por sabermos que o livro é ordenado por página, podemos otimizar a busca. Limitações: observar se o livro acabou. Eliminar ambiguidades: página atual? Usar uma variável para indicá-la: y. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 24 / 33

30 Construindo Algoritmos: Etapa 4 Exemplo 1: Ações: 1 Obter o livro e valor da página x; 2 Abrir o livro na página 1; 3 Verificar se x é igual a página atual; 4 Se x é igual a página atual, então a saída é verdadeira e termina; 5 Se x é maior que a página atual, então a saída é falsa e termina; 6 Caso contrário, a saída é falsa; 7 Passar para a próxima página; 8 Se acabou o livro, então a saída é falsa e termina. 9 Caso contrário, retornar para o passo 3; Regras: por sabermos que o livro é ordenado por página, podemos otimizar a busca. Limitações: observar se o livro acabou. Eliminar ambiguidades: página atual? Usar uma variável para indicá-la: y. livro acabou? Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 24 / 33

31 Construindo Algoritmos: Etapa 4 Exemplo 1: Ações: 1 Obter o livro e valor da página x; 2 Abrir o livro na página 1; 3 Verificar se x é igual a página atual; 4 Se x é igual a página atual, então a saída é verdadeira e termina; 5 Se x é maior que a página atual, então a saída é falsa e termina; 6 Caso contrário, a saída é falsa; 7 Passar para a próxima página; 8 Se acabou o livro, então a saída é falsa e termina. 9 Caso contrário, retornar para o passo 3; Regras: por sabermos que o livro é ordenado por página, podemos otimizar a busca. Limitações: observar se o livro acabou. Eliminar ambiguidades: página atual? Usar uma variável para indicá-la: y. livro acabou? y é maior que Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 24 / 33

32 Construindo Algoritmos: Etapa 4 Exemplo 1: Ações: 1 Obter o livro e valor da página x; 2 Abrir o livro na página 1; 3 Verificar se x é igual a página atual; 4 Se x é igual a página atual, então a saída é verdadeira e termina; 5 Se x é maior que a página atual, então a saída é falsa e termina; 6 Caso contrário, a saída é falsa; 7 Passar para a próxima página; 8 Se acabou o livro, então a saída é falsa e termina. 9 Caso contrário, retornar para o passo 3; Regras: por sabermos que o livro é ordenado por página, podemos otimizar a busca. Limitações: observar se o livro acabou. Eliminar ambiguidades: página atual? Usar uma variável para indicá-la: y. livro acabou? y é maior que próxima página? Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 24 / 33

33 Construindo Algoritmos: Etapa 4 Exemplo 1: Ações: 1 Obter o livro e valor da página x; 2 Abrir o livro na página 1; 3 Verificar se x é igual a página atual; 4 Se x é igual a página atual, então a saída é verdadeira e termina; 5 Se x é maior que a página atual, então a saída é falsa e termina; 6 Caso contrário, a saída é falsa; 7 Passar para a próxima página; 8 Se acabou o livro, então a saída é falsa e termina. 9 Caso contrário, retornar para o passo 3; Regras: por sabermos que o livro é ordenado por página, podemos otimizar a busca. Limitações: observar se o livro acabou. Eliminar ambiguidades: página atual? Usar uma variável para indicá-la: y. livro acabou? y é maior que próxima página? y passa a valer y + 1. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 24 / 33

34 Construindo Algoritmos: Etapa 4 (II) Exemplo 2: Ações: 1 Obter os 10 números reais; 2 Calcular a soma dos 10 números; 3 Dividir o resultado da soma por 10; 4 Retornar o resultado da divisão (a média). Regras: foram estabelecidos exatamente 10 números como entrada. Limitações: - Eliminar ambiguidades: - Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 25 / 33

35 Exercícios: Construindo Algoritmos 1 Construa um algoritmo que indique se um número inteiro x é divisível por outro y. 2 Construa um algoritmo que, dado um número inteiro positivo n, calcule o seu fatorial (n! = n (n 1) ). 3 Construa um algoritmo para sair do labirinto abaixo, de A até B. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 26 / 33

36 Exercícios: Construindo Algoritmos (II) 4 Problema: construa um algoritmo para sair do labirinto abaixo, de A até B. Agora, use apenas comandos do tipo vá para casa (X, Y ) Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 27 / 33

37 Agenda 1 Revisão e Contexto 2 Formalização 3 Representação de Algoritmos 4 Construção de Algoritmos 5 Introdução a Pseudocódigos 6 Revisão Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 28 / 33

38 Introdução a Pseudocódigos Como vimos, um algoritmo possui um bloco principal compreendido entre início e fim. Como manipularemos dados, trabalharemos com variáveis. Variáveis representam uma informação: um número, uma letra, um texto... Variáveis possuem tipos: inteiro, real, caractere,... Declarar variável: dizer qual é seu nome e seu tipo. Um algoritmo é uma sequência de passos, onde cada passo corresponde a uma das três naturezas seguintes: 1 uma operação elementar; 2 uma operação de controle especificando uma seleção entre sequências de passos; 3 uma operação de controle especificando a repetição de uma sequência de passos; Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 29 / 33

39 Introdução a Pseudocódigos Como vimos, um algoritmo possui um bloco principal compreendido entre início e fim. Como manipularemos dados, trabalharemos com variáveis. Variáveis representam uma informação: um número, uma letra, um texto... Variáveis possuem tipos: inteiro, real, caractere,... Declarar variável: dizer qual é seu nome e seu tipo. Um algoritmo é uma sequência de passos, onde cada passo corresponde a uma das três naturezas seguintes: 1 uma operação elementar; 2 uma operação de controle especificando uma seleção entre sequências de passos; 3 uma operação de controle especificando a repetição de uma sequência de passos; Operações de algoritmos apresentam sintaxe. Sintaxe: forma como os elementos são estruturados. Veremos a sintaxe das operações nas próximas aulas. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 29 / 33

40 Elementos básicos de um Pseudocódigo Algoritmo 2: Elementos básicos de um pseudocódigo. início /*Declaração de variáveis. */ //Sequência de passos: passo 1; passo 2;. passo n; fim Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 30 / 33

41 Elementos básicos de um Pseudocódigo (II) Bloco delimitado por Início e Fim do algoritmo; Dentro do bloco: declaração de variáveis, se necessário; n passos do algoritmo. Comentário: Apenas indica uma anotação sobre o código. É ignorado: não representa nenhum passo do algoritmo. É todo o texto compreendido entre /* e */. Existe também o comentário de linha: // no início da linha. Apenas a linha é comentada. Identação: É o afastamento realizado entre a margem e o bloco de texto escrito. Indica que um bloco está dentro de outro (efeito visual). Pode-se usar uma linha vertical para ligar o início e o fim do bloco. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 31 / 33

42 Agenda 1 Revisão e Contexto 2 Formalização 3 Representação de Algoritmos 4 Construção de Algoritmos 5 Introdução a Pseudocódigos 6 Revisão Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 32 / 33

43 Revisão Formalmente, um algoritmo é: uma sequência finita de passos ordenadas; passos não devem ser ambíguos. É importante saber algumas propriedades dos algoritmos: a correção; o custo de tempo e espaço. Duas etapas de criação de um programa: 1 resolução do problema para criar o algoritmo; 2 implementação do algoritmo através de uma linguagem de programação. Pseudocódigo: composto por início, declaração de variáveis, sequência de passos (ou comandos) e fim. Fernanda Passos (UFF) Algoritmos: Formalização e Pseudo-Código Programação de Computadores IV 33 / 33

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

Introdução à Programação Estruturada Parte 2. Material da Prof. Ana Eliza

Introdução à Programação Estruturada Parte 2. Material da Prof. Ana Eliza Introdução à Programação Estruturada Parte 2 Material da Prof. Ana Eliza programa Passo 1: Definir o problema O que fazer? Passo 2: Especificar a solução Como fazer? Passo 3: Codificar a solução Passo

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação CP41F Aula 2 Prof. Daniel Cavalcanti Jeronymo Conceito de algoritmo. Raciocínio lógico na construção de algoritmos. Estrutura de algoritmos. Universidade Tecnológica Federal

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

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

Aula 2: Algoritmos: Intuição

Aula 2: Algoritmos: Intuição Aula 2: Algoritmos: Intuição Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Algoritmos: Intuição Programação de Computadores IV 1 / 27 Agenda 1 Revisão

Leia mais

Programação: Vetores

Programação: Vetores Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia

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

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada

Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre. T. 04 Algoritmos e Programação Estruturada Programação Mestrado Integrado em Engenharia Aeronáutica 1º ano, 1º semestre T. 04 Algoritmos e Programação Estruturada Objectivos: Aprender o conceito de algoritmo e suas características fundamentais

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

Aula 7: Estrutura de Decisão

Aula 7: Estrutura de Decisão Aula 7: Estrutura de Decisão Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Estrutura de Decisão Programação de Computadores IV 1 / 27 Agenda 1 Revisão

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa 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

Estruturas condicionais

Estruturas condicionais Estruturas condicionais David Déharbe 1 1 Objetivos da aula Revisar os primeiros elementos de linguagem C já vistos. Condicionais simples Condicionais compostas Operadores lógicos 2 2 Objetivos da aula

Leia mais

Introdução à Programação I

Introdução à Programação I Introdução à Programação I Introdução à Programação Estruturada Estruturas Básicas de Controle Material da Prof. Ana Eliza Fluxograma Definição Descrição de um algoritmo utilizando elementos gráficos.

Leia mais

Aula 6: Entrada e Saída

Aula 6: Entrada e Saída Aula 6: Entrada e Saída Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Entrada e Saída Programação de Computadores IV 1 / 29 Agenda 1 Revisão e Contexto

Leia mais

Programação Básica. Estrutura de um algoritmo

Programação Básica. Estrutura de um algoritmo Programação Básica Estrutura de um algoritmo Código-fonte Como vimos na aula anterior um algoritmo pode ser representado usando um fluxograma Um algoritmo pode também ser representado usando texto Esse

Leia mais

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação Algoritmos e Introdução à Programação Lógica e Linguagem de Programação Prof. José Honorato Ferreira Nunes honoratonunes@softwarelivre.org http://softwarelivre.org/zenorato/honoratonunes Linguagem C Seleção

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

CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO

CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO ROTEIRO 1. INTRODUÇÃO 2. LINGUAGENS IMPERATIVAS 1. CONCEITO 2. PARADIGMA IMPERATIVO 3. ORIGENS 4. MODELO COMPUTACIONAL 1. ARQUITETURA DE VON NEUMANN 2. CARACTERISTICAS

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

LINGUAGEM E TECNICAS DE PROGRAMAÇÃO

LINGUAGEM E TECNICAS DE PROGRAMAÇÃO LINGUAGEM E TECNICAS DE PROGRAMAÇÃO Aula 03 Lógica Entrada de dados Lógica Lógica, no seu sentido mais amplo, está presente em todos os passos de nossas vidas, servindo de base para resolução de nossos

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

Introdução a Computação Introdução a Computação Lógica de Programação Conceitos Algoritmos Conjunto predeterminado e bem definido de regras e processos destinados a solução de um problema, com um número finito de etapas. 2 1

Leia mais

GFM015 Introdução à Computação. Algoritmos. Ilmério Reis da Silva UFU/FACOM

GFM015 Introdução à Computação. Algoritmos. Ilmério Reis da Silva  UFU/FACOM GFM015 Introdução à Computação Algoritmos Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/ic UFU/FACOM Programa 1. Noções básicas sobre os componentes de micro computadores 2.Uso de

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

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

Introdução à Programação

Introdução à Programação INF1005: Programação 1 Introdução à Programação 08/03/10 (c) Paula Rodrigues 1 Tópicos Principais Modelo de um Computador Ciclo de Desenvolvimento 08/03/10 (c) Paula Rodrigues 2 Modelo de um Computador

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 2 Elementos fundamentais de Algoritmos, Conceitos de Variáveis Profa. Marina Gomes marinagomes@unipampa.edu.br 21/03/2017 Engenharia de Computação - Unipampa 1 Aula de Hoje

Leia mais

Microcontroladores. Programação: fluxogramas, pseudocódigos e lógica. Prof. Daniel

Microcontroladores. Programação: fluxogramas, pseudocódigos e lógica. Prof. Daniel Microcontroladores Programação: fluxogramas, pseudocódigos e lógica Prof. Daniel 1 Algoritmo Pseudocódigo Também conhecido como Portugol ou Português Estruturado; As instruções são todas padronizadas;

Leia mais

Sub-rotinas David Déharbe

Sub-rotinas David Déharbe Sub-rotinas David Déharbe 1 1 Objetivos da aula Os conceitos de sub-rotina, funções e procedimentos; Como usar sub-rotinas em C: parâmetros de sub-rotinas: parâmetros formais e parâmetros efetivos. passagem

Leia mais

TECNOLOGIA EM REDES DE COMPUTADORES. computadores. Aula 4

TECNOLOGIA EM REDES DE COMPUTADORES. computadores. Aula 4 TECNOLOGIA EM REDES DE COMPUTADORES Algoritmos e programação de computadores Aula 4 1 Programação : Declaração de variáveis. Algoritmos: Agenda Solicitação de entrada, exibição.depuração. Tipos de dados

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Programação Programa é um algoritmo escrito em uma linguagem de programação. Existem diversas linguagens

Leia mais

INF 1005 Programação I

INF 1005 Programação I INF 1005 Programação I Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções de máquina

Leia mais

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo Este documento explica como transformar um algoritmo escrito na forma pseudocódigo

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

Revisão. Profa Marina Gomes

Revisão. Profa Marina Gomes Revisão Profa Marina Gomes Algoritmos Na construção de um programa, o problema que o algoritmo representa é composto por três fases. Entrada: dados de entrada do algoritmo. Processamento: ações sobre os

Leia mais

Unidade 1 Conceitos básicos

Unidade 1 Conceitos básicos Unidade 1 Conceitos básicos Agenda Conceito de algoritmo Características Dificuldades Representação de algoritmos Etapas na solução de problemas Desafio 01 O lobo, a ovelha e o capim Você tem um lobo,

Leia mais

Lógica de Programação, Algoritmos e Estruturas de Dados

Lógica de Programação, Algoritmos e Estruturas de Dados Lógica de Programação, Algoritmos e Estruturas de Dados Professor: Vilson Heck Junior vilson.junior@ifsc.edu.br Agenda Funções Básicas do Software; Relações entre áreas; Introdução à Algoritmos; Introdução

Leia mais

Linguagem C estruturas de repetição

Linguagem C estruturas de repetição Linguagem C estruturas de repetição IF61A/IF71A - Computação 1 Prof. Leonelo Almeida Universidade Tecnológica Federal do Paraná Até agora... Introdução à linguagem C Estrutura de um programa Escrita e

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

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

Introdução à Programação

Introdução à Programação Introdução à Programação Aula 02 Algoritmos e Ciclo de Desenvolvimento Edirlei Soares de Lima Modelo de um Computador Linguagem de Máquina Um processador executa instruções de máquina.

Leia mais

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012 Capítulo 5: Repetições Waldemar Celes e Roberto Ierusalimschy 29 de Fevereiro de 2012 1 Construção de laços Uma das principais características de um computador é sua capacidade para realizar cálculo e

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

Introdução aos algoritmos computacionais

Introdução aos algoritmos computacionais CAPíTULO 1 Introdução aos algoritmos computacionais é um procedimento que descreve, sem ambiguidade, uma sequência nita de passos a serem seguidos em uma ordem especíca para resolver um problema ou aproximar

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

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

Introdução à Lógica de Programação Sistemas Operacionais e Introdução à Programação Introdução à Lógica de Programação 1 Resolução de problemas usando computador Computador: ferramenta para processamento automático de dados Processamento

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

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

LP II Estrutura de Dados

LP II Estrutura de Dados LP II Estrutura de Dados Linguagem C Seleção e Repetição Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Estruturas de Seleção Simples Composta Aninhada Estruturas de

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

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

Pseudolinguagem. BC0501 Linguagens de Programação t2 Aula 11. Prof. Alysson Ferrari ufabc.edu.br BC0501 Linguagens de Programação - 2008t2 Aula 11 Pseudolinguagem Prof. Alysson Ferrari alysson.ferrari @ ufabc.edu.br http://fma.if.usp.br/~alysson baseado em material elaborado por: Marcelo Zanchetta

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 Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;

Leia mais

Curso: Análise e Desenvolvimento de Sistemas. (Conceitos Práticos de Lógica de Programação)

Curso: Análise e Desenvolvimento de Sistemas. (Conceitos Práticos de Lógica de Programação) Curso: Análise e Desenvolvimento de Sistemas Disciplina Algoritmos e Programação (Conceitos Práticos de Lógica de Programação) Prof. Wagner Santos C. de Jesus wsantoscj@gmail.com Conceito de Algoritmo

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 à Programação

Introdução à Programação Programação de Computadores Introdução à Programação Prof. Helton Fábio de Matos hfmatos@dcc.ufmg.br Agenda Algoritmo & Programa Variáveis Declaração de tipos Comando de entrada ou de leitura Comando de

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

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

Estruturas de Repetição

Estruturas de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números

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

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Pseudocódigo e Estruturas Básicas de Controle Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Roteiro

Leia mais

Para começar... Para começar... Para começar... Para começar... Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Estruturas condicionais...

Para começar... Para começar... Para começar... Para começar... Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Estruturas condicionais... Algoritmos e Lógica de Programação 80 horas // 4 h/semana Estrutura Condicional: simples e composta Aula 05 Prof. Piva Estruturas condicionais... Existem comandos que, a partir de uma condição, permitem

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

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Introdução à Programação. Expressões Booleanas e Comandos Condicionais Introdução à Programação Expressões Booleanas e Comandos Condicionais Comandos Condicionais Misture os ingredientes Unte forma com manteiga Despeje a mistura na forma Algoritmo para preparação de bolo

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 e Programação

Algoritmos e Programação Algoritmos e Programação Aula 7 Vetores Profa. Marina Gomes marinagomes@unipampa.edu.br 19/05/2017 Engenharia de Computação - Unipampa 1 Motivação Problema: Leia as notas de uma turma de cinco estudantes

Leia mais

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:

Leia mais

Fundamentos de Algoritmos (5175/31)

Fundamentos de Algoritmos (5175/31) UEM/CTC Departamento de Informática Curso: Ciência da Computação Professor: Flávio Rogério Uber Fundamentos de Algoritmos (5175/31) Material Original: Prof. Yandre Maldonado e Gomes da Costa (UEM/DIN)

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

Conceitos Básicos. Fundamentos de Programação de Computadores

Conceitos Básicos. Fundamentos de Programação de Computadores Conceitos Básicos Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior Fevereiro de 2018 Unidade 01 Conceitos Básicos 1/15 Curiosidade Ranking das Linguagens

Leia mais

ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO Algoritmos Conceitos Iniciais. Prof. Luiz Fernando Laguardia Campos FMS

ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO Algoritmos Conceitos Iniciais. Prof. Luiz Fernando Laguardia Campos FMS ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO Algoritmos Conceitos Iniciais Prof. Luiz Fernando Laguardia Campos FMS lflcampos@machadosobrinho.com.br Compilação/Interpretação Um compilador ao receber como entrada

Leia mais

Aula 11: Modularização

Aula 11: Modularização Aula 11: Modularização Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Modularização Programação de Computadores IV 1 / 37 Agenda 1 Revisão e Contexto

Leia mais

1) Operadores de auto incremento ++ e auto decremento --

1) Operadores de auto incremento ++ e auto decremento -- Aula 09 - Operadores de auto incremento e auto decremento, atribuição múltipla, atribuição na declaração, atribuição resumida e algumas regras de boa programação. 1) Operadores de auto incremento ++ e

Leia mais

Capítulo 6: Arquivos

Capítulo 6: Arquivos Capítulo 6: Arquivos Waldemar Celes e Roberto Ierusalimschy 29 de Fevereiro de 2012 1 Funções de entrada e saída em arquivos Nos capítulos anteriores, desenvolvemos programas que capturam seus dados de

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 4 Estruturas de Condição Profa. Marina Gomes marinagomes@unipampa.edu.br 06/04/2017 Engenharia de Computação - Unipampa 1 Aula de Hoje Estrutura condicional simples Utilização

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 9 Subalgoritmos, funções e passagem de parâmetros Profa. Marina Gomes marinagomes@unipampa.edu.br 22/06/2017 Engenharia de Computação - Unipampa 1 Modularização Facilita a

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO E DO DESPORTO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS CEFET-MG UNIDADE DE ENSINO

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO E DO DESPORTO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS CEFET-MG UNIDADE DE ENSINO SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO E DO DESPORTO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS CEFET-MG UNIDADE DE ENSINO DESCENTRALIZADA DE VARGINHA CAMPUS VIII 1 Algoritmo, Contexto

Leia mais

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU Aula 5 Oficina de Programação Introdução ao C Profa. Elaine Faria UFU - 2017 Linguagem de Programação Para que o computador consiga ler um programa e entender o que fazer, este programa deve ser escrito

Leia mais

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO PROF. FABIANO TAGUCHI http://fabianotaguchi.wordpress.com (66) 9953-7642 AULA 02 Revisão de conteúdos da aula passada Exercícios de revisão da aula 01 Estruturas condicionais

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

Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM

Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM Curso de C Introdução 1 Introdução Roteiro: Recordando Algoritmos Linguagem de Programação O computador Instruções de Máquina Níveis de Abstração Compilação 2 Algoritmos Recordando: Algoritmo: conjunto

Leia mais

Fundamentos de Programação1

Fundamentos de Programação1 Fundamentos de Programação1 Linguagem C Introdução e elementos principais Aula N. 01 Prof. SIMÃO Jean Marcelo SIMÃO 1 Exemplo 2 % código em Octave/Matlab clc; A = 5; A = 4 ; if ( A > B ) printf ( A é maior

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

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer Índice: Aula1 - Introdução Programa Algoritmo Aula 2 - Variáveis Tipos de dados Identificadores Aula 3 - Programação

Leia mais

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática

INF1005 Programação I. Pontifícia Universidade Católica Departamento de Informática INF1005 Programação I Pontifícia Universidade Católica Departamento de Informática 1 INF1005 Exemplo 1 Pontifícia Universidade Católica Departamento de Informática 2 Computação Científica 3 Processador

Leia mais

MC102 Algoritmos e Programação de Computadores

MC102 Algoritmos e Programação de Computadores MC102 Algoritmos e Programação de Computadores Instituto de Computação UNICAMP Primeiro Semestre de 2014 Roteiro 1 Maior número 2 Soma de n números 3 Fatorial 4 Máximo Divisor Comum (MDC) 5 Números primos

Leia mais

ESTRUTURAS DE CONTROLE

ESTRUTURAS DE CONTROLE ESTRUTURAS DE CONTROLE ESTRUTURA SEQUENCIAL E ESTRUTURAS CONDICIONAIS Introdução à Ciência da Computação Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples

Leia mais

Recursão David Déharbe

Recursão David Déharbe Recursão David Déharbe 1 1 Objetivos da aula O conceito de recursão. Exemplos. Programação em C. 2 2 Roteiro da aula Revisão de funções; Motivação; Definição; Dois exemplos básicos; Recursão mútua; Dois

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição 1 Comando while Deseja-se calcular o valor de: 1 + 2 + 3 +... + N. Observação: não sabemos, a priori, quantos termos

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

Linguagem C. Linguagem artificial e formal usada para comunicar instruções ao computador. Proposta por Dennis Ritchie entre 1969 e 1973.

Linguagem C. Linguagem artificial e formal usada para comunicar instruções ao computador. Proposta por Dennis Ritchie entre 1969 e 1973. Aula 2 05/03/2015 Linguagem C Linguagem artificial e formal usada para comunicar instruções ao computador. Proposta por Dennis Ritchie entre 1969 e 1973. Um programa em C é Texto que segue as regras formais

Leia mais

INF1005: Programação 1. Repetições. 08/03/10 (c) Paula Rodrigues 1

INF1005: Programação 1. Repetições. 08/03/10 (c) Paula Rodrigues 1 INF1005: Programação 1 Repetições 08/03/10 (c) Paula Rodrigues 1 Tópicos Principais Construção de Laços com while Algoritmos com Repetição Construção de Laços com for Repetição com Teste no Final 08/03/10

Leia mais

ALGORITMOS I. Procedimentos e Funções

ALGORITMOS I. Procedimentos e Funções Procedimentos e Funções Jaime Evaristo (http://professor.ic.ufal.br/jaime/) Slide 1 MÓDULOS São blocos de instruções que realizam tarefas específicas. Carregado uma vez e pode ser executado quantas vezes

Leia mais