Introdução à Programação na linguagem F. Jaime Ramos, Amílcar Sernadas e Paulo Mateus

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

Download "Introdução à Programação na linguagem F. Jaime Ramos, Amílcar Sernadas e Paulo Mateus"

Transcrição

1 Introdução à Programação na linguagem F Jaime Ramos, Amílcar Sernadas e Paulo Mateus DMIST, Setembro de 2005

2 Capítulo 1 Introdução à linguagem F Objectivos Introdução à linguagem F. Edição e compilação de programas. Tipos primitivos e expressões. Declaração de variáveis. Atribuição. Composição sequencial, iterativa e alternativa de comandos. Definição de funções e subrotinas. Efeitos colaterais. Programação recursiva. Conceitos básicos A linguagem F é um fragmento cuidadosamente escolhido da linguagem de programação Fortran 95. Considere-se o seguinte programa F, para somar os números inteiros entre 1 e 50. program exemplo1 integer :: i, r r=0 do i=1,50 r=r+i print *,"Resultado:",r end program exemplo1 Antes de proceder à análise do programa, convém perceber como é que se edita, compila e executa um programa em F. A edição do programa é feita do modo usual: recorrendo a um editor de texto (por exemplo o Notepad), escreve-se o código do programa num ficheiro com extensão f95. Neste caso, deuse ao ficheiro o nome exemplo1.f95 (embora não seja obrigatório, é usual e conveniente dar ao ficheiro o mesmo nome do programa). Em seguida, é necessário compilar o programa. Para tal, é necessário ter instalado no computador em que se está a trabalhar um compilador para a linguagem F (que pode ser obtido em No caso da compilação ser bem sucedida (não ocorrerem erros), o resultado é um ficheiro executável (extensão exe). Analisemos este programa. Após a declaração de início do programa (program exemplo1) surge a declaração das variáveis utilizadas. Nesta declaração, deverão ser incluídas todas as variáveis que sejam utilizadas pelo programa bem como o tipo de objecto que cada uma dessas variáveis irá guardar durante a execução do programa. Neste caso, são declaradas duas variáveis i e r, para guardar números inteiros, através da declaração: integer :: i, r Com esta declaração, as variáveis i e r apenas poderão ser utilizadas para guardar números inteiros. Qualquer tentativa de lhes atribuir um valor que não seja um número inteiro (por exemplo um número real) resultará num erro do programa. Segue-se o corpo do programa constituído por uma composição sequencial de três instruções: a atribuição r=0, a instrução composta do... e a instrução de escrita print *,"Resultado:",r. A composição sequencial de comandos é feita através da mudança de linha, ou seja, em F apenas é permitido uma instrução atómica por linha (por exemplo, uma atribuição ou uma instrução de escrita). A estrutura das instruções compostas será discutida à medida que estas forem sendo apresentadas. A forma genérica da instrução iterativa é a seguinte: do guarda corpo 2

3 em que guarda é uma expressão da forma variável = expressão1, expressão2 e corpo é uma instrução. A variável recebe como valor inicial o valor da expressão1 e o corpo do ciclo é executado. Em seguida o valor da variável é incrementado de uma unidade e, caso o valor da expressão2 não tenha sido excedido, o corpo do ciclo volta a ser executado. Este processo repete-se até que o valor da expressão2 seja excedido. Mais à frente, serão apresentadas outras formas de controlar a execução de um ciclo. No caso do exemplo, a instrução do i=1,50 r=r+i repete a atribuição r=r+i, começando a variável i com o valor 1 (expressão1) até se atingir o valor 50 (expressão2). De cada vez que a atribuição é executada o valor de i é incrementado. A última instrução do programa é uma instrução de escrita. Em F, a instrução print pode ser formatada para apresentar os resultados de diferentes formas. Por agora, apenas nos preocupamos em escrever informação no ecrã de uma forma não formatada, através da opção *. Mais tarde analisaremos algumas formas de formatar os resultados. O programa termina com end program exemplo1. Existem também em F instruções de leitura. O programa seguinte, guardado no ficheiro exemplo2.f95, utiliza a instrução read para ler do terminal dois números inteiros para as variáveis x e y. Em seguida soma os números inteiros entre x e y: program exemplo2 integer :: x, y, i, r print *,"Valor inicial:" read *,x print *,"Valor final:" read *,y r=0 do i=x,y r=r+i print *,"Resultado:",r end program exemplo2 Então, após compilar o programa podemos executá-lo. O resultado é o seguinte: Valor inicial: 1 Valor final 50 Resultado: 1275 Os valores 1 e 50 foram introduzidos pelo utilizador, a partir do terminal, e lidos para as variáveis x e y, respectivamente, através da instrução read. Tipos primitivos e expressões 3

4 Existem 5 tipos de dados primitivos disponíveis em F: integer, real, complex, logical e character. Mais tarde, serão apresentadas construções que permitem definir tipos mais complexos em F. Tipo integer: os objectos deste tipo correspondem aos números inteiros. Por exemplo, 45, 0, -100 são objectos de tipo integer. Há ainda a possibilidade de escolher a representação destes números (long ou short); essa discussão é adiada para um capítulo subsequente. Tipo real: os objectos deste tipo correspondem aos números reais. Por exemplo, , 0.13, 3.0 são objectos de tipo real. Tal como no tipo integer, é possível escolher a representação destes números. Tipo complex: os objectos deste tipo correspondem aos números complexos (da forma a+bi, em que tanto a como b são números reais). Por exemplo, (1.5, 1.3) é um objecto de tipo complex que corresponde ao número complexo i. Tipo logical: os objectos deste tipo correspondem aos valores de verdade. As constantes são.true. e.false. correspondendo a verdadeiro e a falso, respectivamente. Tipo character: os objectos deste tipo correspondem a cadeias de caracteres (delimitadas por aspas). Por exemplo, "Joao" e "ola" são objectos de de tipo character. Estão disponíveis operações aritméticas definidas sobre cada os tipos números, como por exemplo, operações usuais + (adição), - (subtracção), * (multiplicação), / (divisão). Estas operações, quando aplicadas a dois objectos do mesmo tipo, resultam num objecto desse tipo, ou seja, adicionar dois números inteiros resulta num número inteiro, multiplicar dois números reais resulta num número real, etc. Nomeadamente, a divisão de dois números inteiros resulta num número inteiro. Por exemplo, o resultado de avaliar a expressão 15/2 em F é o número inteiro 7. Obviamente, estas operações numéricas podem ser aplicadas a objectos de diferentes tipos. Nesse caso, prevalece o tipo mais geral. Por exemplo, somar um número inteiro com um número real resulta num número real, enquanto multiplicar um número real por um número complexo resulta num número complexo. Para além destas, existem outras operações aritméticas definidas em F, cuja listagem exaustiva se omite. Deixa-se como exercício interpretar expressão n-(n/i)*i em que n e i são variáveis de tipo integer. Para além das operações aritméticas, estão disponíveis também as habituais operações relacionais. As mais frequentes são: == (igualdade), /= (diferente), < (menor), <= (menor ou igual), > (maior), >= (maior ou igual). O resultado de uma operação relacional é um objecto de tipo logical. Por exemplo, a expressão 2>=0 será avaliada em F para o valor.true., enquanto a expressão 0>3 será avaliada para.false.. É preciso cuidado na comparação de números reais e complexos usando as operações == e /=, devido a eventuais erros de aproximação. Relativamente aos objectos de tipo logical, estão disponíveis as seguintes operações:.not.,.and.,.or.,.eqv., and.neqv.. Estas operações podem ser aplicadas a objectos de tipo logical sendo o resultado também um objecto de tipo logical. Por exemplo, a expressão 2>0.and. 3>2 quando avaliada em F resulta no valor.true.. Composição alternativa de instruções Em F, a composição alternativa de instruções tem duas formas principais. A primeira manda executar uma instrução caso a condição seja verdadeira e não faz nada se esta for falsa: if (condição) then instrução1 A segunda forma permite mandar executar uma instrução no caso da condição ser falsa: if (condição) then 4

5 instrução1 instrução2 A condição tem que estar entre parênteses. O exemplo seguinte, guardado no ficheiro exemplo3.f95, ilustra a utilização destas duas formas: program exemplo3 integer :: n, i, d print *,"" d=0 do i=2,n-1 if (n-(n/i)*i == 0) then d=d+1 if (n>1.and. d == 0) then print *,"O numero e primo." print *,"O numero nao e primo." end program exemplo3 Este programa determina se um dado número n, lido do terminal, é primo ou não. Para tal, contam-se os números entre 2 e n-1 que dividem o número dado. O ciclo do programa percorre os números entre 2 e n-1 e caso i seja um divisor de n (o que, como já vimos, corresponde à expressão aritmética n- (n/i)*i ser igual a zero), a variável d, que conta o número de divisores, é incrementada. Caso contrário, não se faz nada. No fim, observa-se o valor da variável d e se for igual a zero então é porque o número é primo. Caso contrário o número tem pelo menos um divisor diferente dele e da unidade logo não é primo. Considerem-se alguns exemplos de execução: 3 O numero e primo. 51 O numero nao e primo O numero e primo. Deixa-se como exercício repetir alguns dos programas MATLAB apresentados anteriormente. Composição iterativa revisitada Até agora, a execução de um ciclo obriga a variável do ciclo a percorrer todos os valores entre o valor da expressão1 e o valor da expressão2. Suponha-se que se pretende apenas analisar os números pares. Por exemplo, pretende-se um programa que imprima no ecrã todos os números pares até 50. Obviamente que com as instruções disponíveis é possível construir tal programa (como?). No entanto, tal solução obriga a percorrer todos os números entre 1 e 50, quando nós apenas estamos interessados nos números pares entre 2 e 50. A linguagem F disponibiliza um mecanismo para controlar o progresso da variável do ciclo. A guarda do ciclo pode ter a forma 5

6 variável = expressão1, expressão2, expressão3 em que expressão3 especifica o incremento da variável. Por exemplo, no programa exemplo4 seguinte, a guarda i=2,50,2 especifica que a variável i toma o valor inicial 2 e é incrementada de 2 em 2 até se atingir 50. program exemplo4 integer :: i do i=2,50,2 print *,i end program exemplo4 Ao executar este programa o resultado obtido é a lista de todos os números pares escritos no ecrã: O incremento também pode ser negativo, mas neste caso há que garantir que o valor inicial é maior do que o valor final. Considere-se o programa seguinte, para calcular o factorial de um número. program exemplo5 integer :: n, r, i print *,"Introduza um número: " r=1 do i=n,1,-1 r=r*i print *,"O factorial e: ",r end program exemplo5 Neste caso, a variável i toma o valor inicial n e é decrementada até se atingir o valor 1. Existem ainda outras formas de controlar a execução de uma instrução iterativa que serão ilustradas mais à frente. Funções e subrotinas auxiliares Ao desenvolver um programa, é muitas vezes necessário definir funções e subrotinas auxiliares. No seguimento, apresentam-se alguns exemplos onde a definição de funções e subrotinas auxiliares se revela útil. Mais à frente, estes conceitos voltarão a ser aplicados ao desenvolvimento de grandes programas, segundo a metodologia da programação modular por camadas baseadas em objectos. Suponha-se que se pretende desenvolver um programa para contar o número de números primos que existem até um determinado número n, dado pelo utilizador. Embora seja possível desenvolver um programa em F sem recorrer a procedimentos auxiliares, tal solução tem diversos inconvenientes, entre os quais se destacam: o desenvolvimento do programa é mais complexo, a detecção de erros é mais difícil e a leitura do programa mais complicada. Uma solução consiste em definir uma função auxiliar que testa se um número é primo e utilizar essa função para construir o programa principal. Uma função em F pode ser utilizada como qualquer função primitiva. Não pode ter efeitos colaterais e devolve sempre um valor. Uma subrotina assemelha-se a uma função, mas não devolve valor, embora alguns dos seus parâmentros possam ser utilizados para devolver valores ao programa que a invocou, e pode também ter efeitos colaterais. 6

7 Suponha-se então que se dispõe de uma função prime para testar se um determinado número é primo. Uma solução para o problema apresentado é o programa seguinte: program exemplo6 integer :: n, i, r print *,"" r=0 do i=1,n if (prime(i)) then r=r+1 print *,"Existem",r,"primos ate",n end program exemplo6 Se tentarmos compilar o programa anterior obtemos um erro de compilação pois a função prime não é conhecida. É necessário definir esta função e torná-la conhecida para o programa. Comecemos pela definição da função. A estrutura de uma função em F é semelhante à de um programa: function prime(n) result(b) logical :: b integer :: i, d if (n<=1) then b=.false. d=0 do i=2,n-1 if (n-(n/i)*i == 0) then d=d+1 if (d==0) then b=.true. b=.false. end function prime As principais diferenças de uma função para um programa são a utilização da instrução function em vez da instrução program, e a necessidade de declarar os parâmetros e o resultado da função. Neste caso, a função prime tem um parâmetro de entrada n de tipo inteiro e um resultado b de tipo logical. A declaração intent(in) serve para indicar que o parâmetro apenas pode ser utilizado para passar valores à função. Veremos a seguir que podem existir outros tipos de argumentos quando se definirem subrotinas. Em tudo o resto a definição da função é semelhante a um programa. Falta apenas disponibilizar esta função ao programa anterior. A solução mais simples consiste em declarar esta função no fim do programa, após o corpo do programa e antes da instrução end program, usando a instrução contains. O ficheiro exemplo6.f95 contem a versão completa do programa: program exemplo6 integer :: n, i, r 7

8 print *,"" r=0 do i=1,n if (prime(i)) then r=r+1 print *,"Existem",r,"primos ate",n contains function prime(n) result(b) logical :: b integer :: i, d if (n<=1) then b=.false. d=0 do i=2,n-1 if (n-(n/i)*i == 0) then d=d+1 if (d==0) then b=.true. b=.false. end function prime end program exemplo6 Após compilarmos o programa anterior podemos testá-lo. Seguem-se alguns exemplos: 4 Existem 2 primos ate 4 10 Existem 4 primos ate 10 Uma subrotina assemelha-se a uma função mas existem algumas diferenças. As principais diferenças residem no facto de uma subrotina não devolver valor e poder provocar efeitos colaterais. No programa anterior, em vez de uma função, podia ter sido definida uma subrotina prime, com dois parâmetros, um parâmetro de entrada n e um parâmetro de saída b, em que se devolve o resultado. subroutine prime(n,b) logical, intent(out) :: b integer :: i, d if (n<=1) then b=.false. d=0 do i=2,n-1 8

9 if (n-(n/i)*i == 0) then d=d+1 if (d==0) then b=.true. b=.false. end subroutine prime A declaração intent(out) define o parâmetro b como sendo de saída. A chamada de uma subrotina também é diferente da chamada de uma função. Neste caso, a chamada da subrotina anterior é feita através da instrução call. O programa exemplo7 ilustra a utilização desta subrotina, para contar os números primos até um determinado número. 9

10 program exemplo7 integer :: n, i, r logical :: b print *,"" r=0 do i=1,n call prime(i,b) if (b) then r=r+1 print *,"Existem",r,"primos ate",n contains subroutine prime(n,r) logical, intent(out) :: r integer :: i, d if (n<=1) then r=.false. d=0 do i=2,n-1 if (n-(n/i)*i == 0) then d=d+1 if (d==0) then r=.true. r=.false. end subroutine prime end program exemplo7 Ao chamar a subrotina prime, o resultado da chamada fica na variável b do programa, e é esta variável b que é usada para verificar se a variável r tem ou não que ser incrementada. Do que foi visto, podemos concluir que uma função pode ser vista como um valor, isto é, pode ser utilizada numa expressão, enquanto uma subrotina pode ser encarada como uma nova instrução, que, ao ser executada, pode provocar uma mudança no estado do sistema. No caso exemplo anterior, cada chamada à subrotina prime provoca (eventualmente) uma alteração da variável b. Apresentam-se em seguida alguns exemplos complementares de definição de funções e subrotinas auxiliares. Recorde-se o problema de calcular o factorial de um número. A primeira solução passa por definir uma função auxiliar fact com um parâmetro que devolve o factorial desse parâmetro program exemplo8 integer :: n print *,"" 10

11 print *,"Factorial:", fact(n) contains function fact(n) result(y) integer :: y, i y=1 do i=2,n y=y*i end function fact end program exemplo8 Eis alguns exemplos de execução: 3 Factorial: 6 5 Factorial: 120 Este problema poderia também ter sido resolvido através da definição de uma subrotina. Neste caso, temos duas hipóteses: utilizar um parâmetro como entrada e outro parâmetro como saída, ou utilizar apenas um parâmetro para entrada e saída dos dados. A primeira solução não apresenta nada de novo e deixa-se como exercício. A segunda tem a novidade de podermos ter parâmetros de entrada e saída simultânea. program exemplo9 integer :: n print *,"" call fact(n) print *,"Factorial:", n contains subroutine fact(n) integer, intent(inout) :: n integer :: y, i y=n do i=2,y-1 n=n*i end subroutine fact end program exemplo9 Observe-se que na definição da subrotina foi utilizada a declaração intent(inout) para o parâmetro n. Isto significa que não só podemos passar valores à subrotina através do parâmetro, como este poderá ser alterado durante a execução da subrotina e essas alterações reflectir-se-ão para fora. Com efeito, a chamada a esta subrotina a partir do programa principal reflecte isso mesmo. Antes da chamada, n guarda o número de que pretendemos calcular o factorial. Após a chamada da subrotina, n guarda o valor do factorial. 11

12 3 Factorial: 6 5 Factorial: 120 Deixa-se como exercício definir a subrotina anterior usando apenas o parâmetro n e a variável i. Efeitos colaterais Pode acontecer que uma subrotina modifique o valor de uma variável global (uma variável do programa que a invocou). Como já foi dito atrás, a este tipo de efeitos dá-se o nome de efeito colateral. Considerese o problema de calcular o valor do factorial de um número. Uma solução, diferente das apresentadas anteriormente, consiste em definir uma subrotina sem parâmetros, mas que manipule directamente o valor da variável. program exemplo10 integer :: n print *,"" call fact() print *,"Factorial:", n contains subroutine fact() integer :: y, i y=n do i=2,y-1 n=n*i end subroutine fact end program exemplo10 Repare-se que a subrotina é em tudo semelhante à do exemplo9. Do ponto de vista do programa principal, a variável n foi alterada sem indicação explícita. No entanto, o programa funciona como esperado: 3 Factorial: 6 5 Factorial: 120 Como já foi dito atrás, os efeitos colaterais apenas podem ser provocados por uma subrotina e nunca por uma função. Programação recursiva Consiste em definir funções à custa de si mesmas. A definição de uma função ou subrotina recursiva em F é semelhante à definição de uma função ou subrotina. O facto de a função ou subrotina ser recursiva tem que ser indicado explicitamente através da instrução recursive. 12

13 Recorde-se a expressão recursiva para definir o factorial de um número natural: 1 n! = n.(n 1)! sen 0 sen 0 A função F seguinte calcula recursivamente o factorial de um número natural: recursive function factr(n) result(r) integer :: r if (n==0) then r = 1 r = n*factr(n-1) endif end function factr O programa seguinte utiliza esta função para calcular o factorial de um número fornecido pelo utilizador: program factorialr integer :: n print *,"" print *,"Factorial:",factR(n) contains recursive function factr(n) result(r) integer :: r if (n==0) then r = 1 r = n*factr(n-1) endif end function factr end program factorialr Considerem-se alguns exemplos de utilização: 4 Factorial: 24 1 Factorial: 1 Deixa-se como exercício proteger a função contra argumentos indesejados. nomeadamente, contra números negativos. Considere-se a sucessão Fn, n 0, dos números de Fibonacci definida por 13

14 F n= F n F n 1 se n 0 se n 1 se n 1 A correspondente definição em F é a seguinte: recursive function fibr(n) result(r) integer :: r if (n==0) then r = 0 if (n==1) then r = 1 r = fibr(n-2)+fibr(n-1) endif end function fibr Podemos testar esta função através do programa: program fib integer :: n print *,"" print *,"Numero de Fibonacci:",fibR(n) contains recursive function fibr(n) result(r) integer :: r if (n==0) then r = 0 if (n==1) then r = 1 r = fibr(n-2)+fibr(n-1) endif end function fibr end program fib Apresentam-se em seguida alguns exemplos de utilização: Introduza um número: 2 Numero de Fibonacci: 1 Introduza um número: 6 Numero de Fibonacci: 8 14

Introdução à Programação na linguagem F. Jaime Ramos, Amílcar Sernadas e Paulo Mateus

Introdução à Programação na linguagem F. Jaime Ramos, Amílcar Sernadas e Paulo Mateus Introdução à Programação na linguagem F Jaime Ramos, Amílcar Sernadas e Paulo Mateus DMIST, Setembro de 2005 Capítulo 1 Introdução à linguagem F Objectivos Introdução à linguagem F. Edição e compilação

Leia mais

Correção do 1º Exame de INTRODUÇÃO À PROGRAMAÇÃO Licenciatura em Engenharia Mecânica 30 de Junho de 2006, 2º Semestre

Correção do 1º Exame de INTRODUÇÃO À PROGRAMAÇÃO Licenciatura em Engenharia Mecânica 30 de Junho de 2006, 2º Semestre Correção do º Exame de INTRODUÇÃO À PROGRAMAÇÃO Licenciatura em Engenharia Mecânica 3 de Junho de 26, 2º Semestre. (2.) Perguntas de resposta rápida de Fortran (.4 valores cada).. Todos os componentes

Leia mais

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema ALGORITMIA Resolução De Problemas Em Informática Docente: Ana Paula Afonso 2000-2001 Resolução de Problemas 1. Analisar o problema Conhecer o bem o problema Descrever o problema: subdividir, detalhar 2.

Leia mais

Programação estruturada no Fortran 90-3

Programação estruturada no Fortran 90-3 Programação estruturada no Fortran 90-3 Departamento de Física UFPel Em Fortran 90 existem dois tipos de subprogramas: Funções e Subrotinas Uma Função, quando chamada, retorna um único valor calculado

Leia mais

TÉCNICO DE INFORMÁTICA - SISTEMAS

TÉCNICO DE INFORMÁTICA - SISTEMAS 782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar

Leia mais

Compilador de LP3 para C3E e P3

Compilador de LP3 para C3E e P3 Compilador de LP3 para C3E e P3 Luís Gil 1 13 de Junho de 2005 1 estudante de Ciências Informáticas no Instituto Superior Técnico 1 Introdução Este relatório descreve a sintaxe e a semântica da Linguagem

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação 1.Ano LCC-MIERSI DCC - FCUP Nelma Moreira Aula 2 Etapas para o desenvolvimento dum programa 1. Perceber o problema 2. Encontrar um procedimento algorítmico para o resolver. Estratégias:

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

Apostila de Fortran. É uma pseudo-linguagem a qual oferece recursos para que o programador possa codificar e testar os seus algoritmos.

Apostila de Fortran. É uma pseudo-linguagem a qual oferece recursos para que o programador possa codificar e testar os seus algoritmos. Apostila de Fortran Fortran Uma das linguagens de programação mais velhas, o FORTRAN foi desenvolvido por uma equipe de programadores conduzida por John Backus na IBM, e foi primeiramente publicada em

Leia mais

4. Constantes. Constantes pré-definidas

4. Constantes. Constantes pré-definidas 4. Constantes Constantes pré-definidas O PHP possui algumas constantes pré-definidas, indicando a versão do PHP, o Sistema Operacional do servidor, o arquivo em execução, e diversas outras informações.

Leia mais

Um algoritmo deve conter passos não ambíguos, executáveis e que sejam terminados quando seguidos.

Um algoritmo deve conter passos não ambíguos, executáveis e que sejam terminados quando seguidos. Programação Um programa é uma sequência de instruções de uma linguagem de programação (VB no nosso caso). Cada instrução representa uma qualquer acção que nós pretendemos ver executada. Programar consiste

Leia mais

ESTRUTURAS DE REPETIÇÃO - PARTE 1

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

Leia mais

Uma introdução ao GAP

Uma introdução ao GAP Uma introdução ao GAP O nome GAP, advém de Groups, Algorithms and Programming. Trata-se de um sistema computacional inicialmente concebido para trabalhar na área da álgebra. Álgebra (Curso de CC) Ano lectivo

Leia mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Introdução ao FORTRAN Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157

Leia mais

Métodos de Programação I Ana Maria de Almeida

Métodos de Programação I Ana Maria de Almeida Métodos de Programação I 2. 35 2.10 O TIPO ESTRUTURADO TABELA (ARRAY) A estruturação de informação introduz uma nova dimensão no poder e complexidade dos nossos programas que, ao mesmo tempo que amplia

Leia mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Introdução ao FORTRAN Professor Hugo de Oliveira Barbalho hbarbalho@ic.uff.br Material produzido pelo professor: Leandro Augusto Frata Fernandes (laffernandes@ic.uff.br)

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo

Leia mais

Paradigmas de Linguagem de Programação. Paradigma Imperativo

Paradigmas de Linguagem de Programação. Paradigma Imperativo Paradigmas de Linguagem de Programação Paradigma Imperativo Paradigma Imperativo Imperare Comandar É o mais antigo de todos; Baseado no modo de funcionamento do computador; São também chamadas de procedurais;

Leia mais

Exercícios de VBA. Paulo Melo Joana Dias Óscar Lourenço 17 de Maio de 2006

Exercícios de VBA. Paulo Melo Joana Dias Óscar Lourenço 17 de Maio de 2006 Exercícios de VBA Paulo Melo Joana Dias Óscar Lourenço 17 de Maio de 2006 Este texto apresenta alguns exemplos de questões que podem ser respondidas usando Visual Basic for Applications. Não pretende (nem

Leia mais

Introdução ao Fortran 90. Aula 3

Introdução ao Fortran 90. Aula 3 Introdução ao Fortran 90 Aula 3 Usando vetores e matrizes Definição Uma matriz ou vetor consiste de um conjunto retangular de elementos, todos do mesmo tipo e espécie do tipo. Uma matriz ou vetor é um

Leia mais

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007 ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA INTRODUÇÃO À PROGRAMAÇÃO (ENG. INFORMÁTICA) COMPUTADORES E PROGRAMAÇÃO I (ENG. ELECTROTÉCNICA) 2006/2007 TRABALHO PRÁTICO Nº

Leia mais

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: estruturas de repetição While / Do While / For Prof. Renato Pimentel 1 Estruturas de repetição O real poder dos computadores está

Leia mais

Programação de Computadores II

Programação de Computadores II Programação de Computadores II 1. Programação Básica 2019.1 Slides adaptados do material de Karina Mochetti Problema, Algoritmo, Programa Um programa de computador é a implementação de um algoritmo para

Leia mais

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

Introdução à Lógica de Programação Introdução à Lógica de Programação Não estamos aqui para sobreviver e sim para explorar a oportunidade de vencer adquirindo o saber! (Autor Desconhecido) A lógica é a arte de pensar correctamente e, visto

Leia mais

A linguagem algorítmica utiliza o português para a definição dos comandos e tem as seguintes característica:

A linguagem algorítmica utiliza o português para a definição dos comandos e tem as seguintes característica: 1 de 16 08/02/2012 14:08 Linguagem Linguagem Algorítmica A linguagem algorítmica utiliza o português para a definição dos comandos e tem as seguintes característica: 1 - A linguagem não á sensível á capitulação

Leia mais

Algoritmos e Modelação Computacional. Paulo Mateus MEBiom LMAC 2018

Algoritmos e Modelação Computacional. Paulo Mateus MEBiom LMAC 2018 Algoritmos e Modelação Computacional Paulo Mateus MEBiom LMAC 2018 Objetivos Edição e compilação de programas Tipos e expressões Declaração de variáveis Atribuição, composição sequencial, iterativa e alternativa

Leia mais

Introdução ao FORTRAN 90. Aula 4

Introdução ao FORTRAN 90. Aula 4 Introdução ao FORTRAN 90 Aula 4 Usados quando o programa contém estruturas complexas e com estruturas contendo conjuntos de instruções repetidas. O conjunto de instruções repetidas não se enquadra em uma

Leia mais

Procedimento. Função. Selecção Condicional - a instrução if-then-else. expressão if lógica then instrução else instrução

Procedimento. Função. Selecção Condicional - a instrução if-then-else. expressão if lógica then instrução else instrução Métodos de Programação I 2. 20 2.2.8 ESTRUTURAS DE CONTROLO Estruturas de controlo são instruções especiais em Pascal que permitem controlar o fluxo de sequência de instruções, alterando a ordem sequencial

Leia mais

Métodos de Programação I Ana Maria de Almeida

Métodos de Programação I Ana Maria de Almeida Métodos de Programação I 2. 13 type naipe = ( ouros, copas, paus, espadas ); var trunfo : naipe; Claro que são apenas identificadores e não existirá a mesma escolha de operadores e funções sobre eles que

Leia mais

5. Expressões aritméticas

5. Expressões aritméticas 5. Expressões aritméticas 5.1. Conceito de Expressão O conceito de expressão em termos computacionais está intimamente ligado ao conceito de expressão (ou fórmula) matemática, onde um conjunto de variáveis

Leia mais

Introdução ao Fortran 90-4

Introdução ao Fortran 90-4 Introdução ao Fortran 90-4 Departamento de Física UFPel Controles de Fluxo de Execução Definição Estruturas (ou blocos) de programação que permitem controlar o fluxo de execução de um programa, além da

Leia mais

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Introdução ao FORTRAN Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Introdução ao FORTRAN Cinco aspectos

Leia mais

Variáveis primitivas e Controle de fluxo

Variáveis primitivas e Controle de fluxo Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/

Leia mais

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Disciplina de Introdução à

Leia mais

Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados

Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados Disciplina de Programação de Computadores I Universidade Federal de Ouro

Leia mais

Introdução ao Fortran 90-3

Introdução ao Fortran 90-3 Introdução ao Fortran 90-3 Departamento de Física UFPel Controles de Fluxo de Execução Definição Estruturas (ou blocos) de programação que permitem controlar o fluxo de execução de um programa, além da

Leia mais

Introdução à Programação. João Manuel R. S. Tavares

Introdução à Programação. João Manuel R. S. Tavares Introdução à Programação João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de

Leia mais

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

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Algoritmos Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi Conceitos Linhas de Código de um Algoritmo ou Programa escrita do programa linha a linha, ou seja, a sintaxe do programa, podendo-se

Leia mais

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio

Leia mais

Computação e Programação Exame Época de recurso

Computação e Programação Exame Época de recurso Nome : Número : Computação e Programação 2013-2014 Mestrado Integrado em Engenharia Civil Licenciatura Bolonha em Engenharia Geológica e de Minas DECivil Exame Época de recurso 29 de Janeiro de 2014 v

Leia mais

2.2.5 EXPRESSÕES - Regras para o cálculo de valores

2.2.5 EXPRESSÕES - Regras para o cálculo de valores Métodos de Programação I Departamento de Matemática, FCTUC 30 2.2.5 EXPRESSÕES - Regras para o cálculo de valores As expressões fornecidas ao computador, quer tenham variáveis, constantes ou apenas literais,

Leia mais

Introdução ao Fortran 90-1

Introdução ao Fortran 90-1 Introdução ao Fortran 90-1 Departamento de Física UFPel Definição de Programa em Fortran 90 Programa ou Código-fonte Programa ou código-fonte é um conjunto de instruções, também chamadas de comandos, escritas

Leia mais

Introdução à Programação Aula prática Nº O número de bactérias numa cultura pode ser estimado pela expressão:

Introdução à Programação Aula prática Nº O número de bactérias numa cultura pode ser estimado pela expressão: Funções 1. O número de bactérias numa cultura pode ser estimado pela expressão: N e kt sendo N a população inicial, k a taxa de crescimento e t o tempo de evolução. Escreva uma função para calcular o número

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

Conceitos Introdutórios sobre a Linguagem FORTRAN

Conceitos Introdutórios sobre a Linguagem FORTRAN Conceitos Introdutórios sobre a Linguagem FORTRAN Caracteres válidos Caracteres alfabéticos: A,a Z,z (não é Case sensitive ) Caracteres numéricos: 0-9 Caracteres especiais: branco. ; : + - / etc Constantes

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

Capítulo 7. Expressões e Sentenças de Atribuição

Capítulo 7. Expressões e Sentenças de Atribuição Capítulo 7 Expressões e Sentenças de Atribuição Introdução Expressões são os meios fundamentais de especificar computações em uma linguagem de programação Para entender a avaliação de expressões, é necessário

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Conteúdo Conceito e aplicação O que são e para que servem as estruturas de repetição. Ciclo Do... Loop Apresentação das diversas variantes deste ciclo. Negação de expressões lógicas.

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

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. 1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras

Leia mais

Blocos, Escopo de variáveis, procedimentos e funções. 1- Blocos

Blocos, Escopo de variáveis, procedimentos e funções. 1- Blocos Blocos, Escopo de variáveis, procedimentos e funções 1- Blocos Todo algoritmo é um bloco. O bloco consiste em um conjunto de declarações e comandos delimitados pelas palavras e Frequentemente é necessário

Leia mais

Estruturas de Decisão. APROG (Civil) Aula 6

Estruturas de Decisão. APROG (Civil) Aula 6 Estruturas de Decisão APROG () Aula 6 Conteúdo Estrutura If...Then Estrutura If...Then...Else 2 Conceito As Estruturas de Controlo servem para modificar o fluxo das instruções seguidas por um determinado

Leia mais

Métodos para a construção de algoritmo

Métodos para a construção de algoritmo Métodos para a construção de algoritmo Compreender o problema Identificar os dados de entrada e objetos desse cenário-problema Definir o processamento Identificar/definir os dados de saída Construir o

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Program João Manuel R. S. Tavares Sumário 1. Ciclo de desenvolvimento de um programa; 2. Descrição de algoritmos; 3. Desenvolvimento modular de programas; 4. Estruturas de controlo de um programa.

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2 Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas Aula Tópico 2 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para o compilador

Leia mais

Capítulo 2 Operadores. A função scanf()

Capítulo 2 Operadores. A função scanf() Capítulo 2 Operadores A função scanf() A função scanf() é outra das funções de E/S implementadas em todos os compiladores e nos permite ler dados formatados da entrada padrão (teclado). Sintaxe: scanf(

Leia mais

Introdução à Programação em C Input / Output

Introdução à Programação em C Input / Output Introdução à Programação em C Input / Output Resumo Aula Anterior Programa começa com função main() Sintaxe para definição de funções Definição de variáveis e atribuições Estruturas de controlo if-then

Leia mais

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados Introdução à Programação Operadores, Expressões Aritméticas e Entrada/Saída de Dados Programa em C #include int main main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius

Leia mais

1. O número de bactérias numa cultura pode ser estimado pela expressão:

1. O número de bactérias numa cultura pode ser estimado pela expressão: Funções 1. O número de bactérias numa cultura pode ser estimado pela expressão: N e kt sendo N a população inicial, k a taxa de crescimento e t o tempo de evolução. Escreva uma função para calcular o número

Leia mais

Introdução à Computação

Introdução à Computação Universidade Federal do Maranhão Curso de Química Departamento de Informática Introdução à Computação Linguagem Fortran Profa. Msc. Maria Auxiliadora Freire maria@deinf.ufma.br 1 LINGUAGEM FORTRAN FUNÇÕES

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

Conceitos Básicos de Programação

Conceitos Básicos de Programação BCC 201 - Introdução à Programação Conceitos Básicos de Programação Guillermo Cámara-Chávez UFOP 1/53 Conceitos básicos I Variável 2/53 Conceitos básicos II Posição de memoria, identificada através de

Leia mais

Java Variáveis e Controle Fluxo

Java Variáveis e Controle Fluxo Java Variáveis e Controle Fluxo 1 Variáveis primitivas p Todo bloco em java é delimitado por chaves ({ } ); p Dentro de um bloco, podemos declarar variáveis e usa las; p Em Java, toda variável tem um tipo

Leia mais

Introdução à Programação em C

Introdução à Programação em C Introdução à Programação em C Tipos e Operadores Elementares Estruturas de Controlo Resumo Novidades em C Exemplo: Factorial Tipos de Dados Básicos Saltos Condicionais: if-then-else Valor de retorno de

Leia mais

Estruturas de Repetição

Estruturas de Repetição Estruturas de Repetição Introdução As estruturas de repetição, permitem executar mais de uma vez um mesmo trecho de código. Trata-se de uma forma de executar blocos de comandos somente sob determinadas

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

Para cada programa, por mais simples que seja, comece sempre por esboçar a solução desenhando um fluxograma.

Para cada programa, por mais simples que seja, comece sempre por esboçar a solução desenhando um fluxograma. Instruções de Repetição Objetivo A realização deste trabalho deverá permitir ao aluno a familiarização com a utilização de instruções de repetição em C. Para o efeito será proposto um conjunto de exercícios

Leia mais

Instituto Superior Politécnico de VISEU. Escola Superior de Tecnologia

Instituto Superior Politécnico de VISEU. Escola Superior de Tecnologia 1 Vamos considerar os seguintes elementos e estruturas fundamentais que são habitualmente usados em programação: Tipos de Dados Operadores Atribuições Entrada e Saída de Dados Estruturas de Controlo Procedimentos

Leia mais

13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Mestrado em Engenharia Física Tecnológica

13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Mestrado em Engenharia Física Tecnológica 13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Programação Mestrado em Engenharia Física Tecnológica Samuel M. Eleutério sme@tecnico.ulisboa.pt Departamento de Física

Leia mais

APROG Civil. Estruturas de Decisão. Angelo Martins Dep. Eng. Informática - ISEP. Aula 2. ISEP DEI, Angelo Martins 2006 ISEP-DEI, António Silva, 2007

APROG Civil. Estruturas de Decisão. Angelo Martins Dep. Eng. Informática - ISEP. Aula 2. ISEP DEI, Angelo Martins 2006 ISEP-DEI, António Silva, 2007 Angelo Martins Dep. Eng. Informática - ISEP Aula 2 1 Conteúdo Estruturas de decisão - conceito e aplicação Estrutura If... Then Apresentação das diversas variantes desta estrutura. Expressões lógicas complexas.

Leia mais

Aula 3 Primeiros programas

Aula 3 Primeiros programas Aula 3 Primeiros programas FACOM-UFMS 2012 OBJETIVOS DA AULA Introdução ao CodeBlocks; Criação dos primeiros programas; Esta aula foi baseada nos capítulos 3 e 4 da apostila de Programação de Computadores

Leia mais

CFAC: Programação em FORTRAN - I

CFAC: Programação em FORTRAN - I Programação em FORTRAN - I João Manuel R. S. Tavares Bibliografia FORTRAN ANSI 77 e WATFIV-S Jorge Filho, Caetano Loiola Editora Campus Linguagem de Programação Estruturada FORTRAN 77 Maximilian Emil Hehl

Leia mais

Programação em FORTRAN - I. João Manuel R. S. Tavares

Programação em FORTRAN - I. João Manuel R. S. Tavares Programação em FORTRAN - I João Manuel R. S. Tavares Bibliografia FORTRAN ANSI 77 e WATFIV-S Jorge Filho, Caetano Loiola Editora Campus Linguagem de Programação Estruturada FORTRAN 77 Maximilian Emil Hehl

Leia mais

Fundamentos da Programação

Fundamentos da Programação Fundamentos da Programação Solução da Repescagem do Primeiro Teste 31 de Janeiro de 2013 09:00 10:30 1. De um modo sucinto, (a) (0.5) Diga o que é um processo computacional. Um processo computacional é

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

11 - Estrutura de um programa em C

11 - Estrutura de um programa em C 11 - Estrutura de um programa em C directivas para o compilador { main ( ) declarações instruções } -É possível utilizar comentários, exemplo: /* Comentário */ que não são traduzidos pelo compilador, pois

Leia mais

Programação de Computadores. Primeiro contato

Programação de Computadores. Primeiro contato Programação de Computadores Primeiro contato Sumário Programa O que é um programa? Um conjunto de instruções encadeadas de modo lógico, convertido em uma linguagem que computadores podem interpretar O

Leia mais

Lógica de Programação I. Gilson de Souza Carvalho

Lógica de Programação I. Gilson de Souza Carvalho Gilson de Souza Carvalho gaucho.gilson@hotmail.com 1. Estruturas básicas Apresentaremos um resumo com os comandos estudados para criação de algoritmos. Para utilizar estes comandos, usaremos uma sintaxe

Leia mais

tipoveiculo = (bicicleta, motociclo, motorizada, automovel, autocomreb, camioneta, autocarro, camiao, reboque); veiculo : tipoveiculo;

tipoveiculo = (bicicleta, motociclo, motorizada, automovel, autocomreb, camioneta, autocarro, camiao, reboque); veiculo : tipoveiculo; Métodos de Programação I Departamento de Matemática, FCTUC 38 type var tipoveiculo = (bicicleta, motociclo, motorizada, automovel, autocomreb, camioneta, autocarro, camiao, reboque); veiculo : tipoveiculo;

Leia mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Pseudocódigo e Estruturas Básicas de Controle Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157

Leia mais

Objectivos. Programação I (2010/2011) 2 o Trabalho de Programação

Objectivos. Programação I (2010/2011) 2 o Trabalho de Programação Programação I (2010/2011) 2 o Trabalho de Programação Introdução As progressões aritméticas e geométricas são exemplos de sucessões numéricas onde o elemento n + 1 depende do elemento n e de uma constante.

Leia mais

Fluxogramas e variáveis

Fluxogramas e variáveis Fluxogramas e variáveis Patrícia de Siqueira Ramos UNIFAL-MG, campus Varginha 11 de Março de 2019 Patrícia de Siqueira Ramos Fundamentos da programação 1 / 20 Fases de um algoritmo Patrícia de Siqueira

Leia mais

SEBENTA INTRODUÇÃO Á ALGORITMIA

SEBENTA INTRODUÇÃO Á ALGORITMIA SEBENTA INTRODUÇÃO Á ALGORITMIA O desenvolvimento de programas para computador está sempre baseado na tarefa de programar um computador para seja resolvido um problema ou executada uma função e assim dar

Leia mais

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho Gilson de Souza Carvalho gaucho.gilson@hotmail.com 3.1.3 Condições compostas Linguagem e Técnicas em Programação As condições que vimos até agora sempre foram únicas. Entretanto, conforme aumenta a complexidade

Leia mais

Linguagem C: Ponteiros. Prof. Tiago Alves de Oliveira

Linguagem C: Ponteiros. Prof. Tiago Alves de Oliveira Linguagem C: Ponteiros 1 Sumário Ponteiros; Variáveis ponteiros; Operadores de ponteiros; Expressões com ponteiros; Atribuição de ponteiros; Aritmética de ponteiros; Comparação de ponteiros; Ponteiros

Leia mais

Capítulo VII : A Recorrência

Capítulo VII : A Recorrência Capítulo VII : A Recorrência 1 _ Capítulo VII : A Recorrência Quando algo é definido em termos de si próprio. Ex1: O Tetraedro de Sierpinski Ex2: Fracções Contínuas Ex3: A Carpete de Sierpinski Ex4: A

Leia mais

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008

PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Departamento de Engenharia Electrotécnica PROGRAMAÇÃO DE MICROPROCESSADORES 2007 / 2008 Mestrado Integrado em Engenharia Electrotécnica e Computadores 1º ano 1º semestre Funções e Vectores http://tele1.dee.fct.unl.pt

Leia mais

Programação de Computadores III

Programação de Computadores III Programação de Computadores III Pseudocódigo e Estruturas Básicas de Controle Professor Hugo de Oliveira Barbalho hbarbalho@ic.uff.br Material produzido pelo professor: Leandro Augusto Frata Fernandes

Leia mais

AMBIENTE DE PROGRAMAÇÃO PYTHON II

AMBIENTE DE PROGRAMAÇÃO PYTHON II Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004 FICHA 2 AMBIENTE DE PROGRAMAÇÃO PYTHON II 2.1. Objectivos

Leia mais

Linguagem C: Ponteiros. Prof. Leonardo Barreto Campos 1

Linguagem C: Ponteiros. Prof. Leonardo Barreto Campos 1 Linguagem C: Ponteiros Prof. Leonardo Barreto Campos 1 Sumário Ponteiros; Variáveis ponteiros; Operadores de ponteiros; Expressões com ponteiros; Atribuição de ponteiros; Aritmética de ponteiros; Comparação

Leia mais

Programação estruturada no Fortran 90-1

Programação estruturada no Fortran 90-1 Programação estruturada no Fortran 90-1 Departamento de Física UFPel Programação estruturada: unidades de programa A programação estruturada em Fortran 90 implica no uso de unidades de programa, do tipo:

Leia mais

Comandos e Construtos de Controle de Fluxo

Comandos e Construtos de Controle de Fluxo Capítulo 5 Comandos e Construtos de Controle de Fluxo Nos capítulos anteriores foi descrito como comandos de atribuição devem ser escritos e como estes podem ser ordenados um após o outro para formar uma

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

a) Defina uma função para obter o máximo entre dois números

a) Defina uma função para obter o máximo entre dois números IP, Resoluções comentadas, Semana 2 jrg, vs 002, Out-2012 a) Defina uma função para obter o máximo entre dois números A versão mais imediata talvez seja esta: public static int maior ( int a, int b ) {

Leia mais

Sequencial Estrutura de controlo mais simples. As instruções são executadas sequencialmente.

Sequencial Estrutura de controlo mais simples. As instruções são executadas sequencialmente. Sequencial Estrutura de controlo mais simples. As instruções são executadas sequencialmente. Com base numa condição Estruturas de decisão ou selecção Com base num selector ou de escolha múltipla Com contador

Leia mais

Conhecendo a Linguagem de Programação C

Conhecendo a Linguagem de Programação C Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Conhecendo a Linguagem de Programação C DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Como

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