Programação estruturada no Fortran 90-2
|
|
|
- Brian Klettenberg
- 6 Há anos
- Visualizações:
Transcrição
1 Programação estruturada no Fortran 90-2 Departamento de Física UFPel
2 Faça um programa em Fortran 90 que calcule o valor do cos-seno de x através da série abaixo, co-seno(x) = 1 x2 2! + x4 4! x6 6! + x8 8!... Calcule a diferença entre o valor calculado pela série acima e o valor fornecido pela função intrínseca cos(x) do Fortran 90, para um ângulo x fornecido pelo usuário, para 4, 8 e 16 termos da série.
3 program s e r i e _ c o s s e n o i m p l i c i t none r e a l ( 8 ) : : x, pi, cosseno i n t e g e r ( 8 ) : : i, ntermos read, x read, ntermos pi = 4. d0 datan ( 1. d0 ) x = x pi / d0 cosseno = 1. d0 do i = 1, ntermos 1 cosseno = cosseno + ( 1 ) ( i ) x ( 2 i ) / f a t o r i a l ( 2 i ) end do p r i n t, cosseno, cos ( x ) CONTAINS i n t e g e r ( 8 ) function f a t o r i a l (N) [... ] end function f a t o r i a l end program s e r i e _ c o s s e n o
4 program s e r i e _ c o s s e n o [... ] CONTAINS i n t e g e r ( 8 ) function f a t o r i a l (N) i m p l i c i t none i n t e g e r ( 8 ) : : j, N f a t o r i a l = 1 do j = 1,N f a t o r i a l = f a t o r i a l j end do end function f a t o r i a l end program s e r i e _ c o s s e n o
5 Comandos de especificação em Funções usados para designar variáveis com características comuns, particularmente com relação à maneira como as mesmas serão alocadas na memória do computador. Comando COMMON: especifica que variáveis declaradas em diferentes blocos, possivelmente com nomes diferentes, ocupam os mesmos endereços de memória do computador. permite que dados declarados no Programa Principal sejam acessados e/ou modificados por uma Função. COMMON [/ <nome-do-bloco> /] <nome-1>... <nome-n> <nome-do-bloco>: é um nome opcional, associado a uma lista de variáveis do bloco COMMON. <nome-1>... <nome-n>: são os nomes das variáveis, as quais serão armazenadas em uma mesma área de memória do que outras variáveis, declaradas em outro bloco e que também, por sua vez, deverão ser listadas em comando COMMON no bloco em que foram declaradas.
6 Comando COMMON: um exemplo simples program testa_common i m p l i c i t none r e a l : : a = 1. 0, B = 2. 0, C r e a l : : FUNC COMMON /BLOCO1/ A, B p r i n t,func( ) end program testa_common r e a l FUNCTION func ( ) i m p l i c i t none r e a l : : u, v COMMON /BLOCO1/ u, v p r i n t, u=,u, v=, v FUNC = u + v end FUNCTION func As variáveis A e u são nomes distintos para o mesmo endereço de memória. As variáveis B e v são nomes distintos para o mesmo endereço de memória. Como não usamos CONTAINS, as variáveis declaradas no Programa Principal são válidas apenas neste escopo.
7 Recursividade em Funções Uma Função A é dita recursiva quando invoca (ou chama) a si mesma, ou seja, A invoca A diretamente. Esta recursividade é dita direta. Devemos usar o atributo RECURSIVE e a palavra-chave RESULT na definição da Função: RECURSIVE [tipo] FUNCTION nome-da-função (...) RESULT (var) O atributo RECURSIVE indica que a Função é recursiva. A palavra-chave RESULT especifica o nome de uma variável var à qual o valor do resultado do desenvolvimento da Função deve ser atribuído, em lugar do nome da Função propriamente dito. Se omitirmos a palavra-chave, quando do uso do atributo RECURSIVE, um erro de compilação será gerado. A palavra-chave RESULT pode ser usada também em Funções não-recursivas.
8 Recursividade em Funções: fatorial de n (n!) i n t e g e r : : f, n p r i n t, n? read, n i f ( n >= 0) then f = f a t o r i a l ( n ) write (, ( " FATORIAL ( ", I12, " ) = ", I12 ) ) n, f e l s e p r i n t, Valor i n valido para n. end i f CONTAINS RECURSIVE i n t e g e r FUNCTION FATORIAL( n ) RESULT( f ) i m p l i c i t none integer, i n t e n t ( in ) : : n i f ( n > 0) then f = FATORIAL( n 1) n p r i n t, n =,n, F =, f e l s e i f ( n == 0) then f = 1 p r i n t, n =,n, f =, f end i f end FUNCTION FATORIAL end
9 Recursividade em Funções: fatorial de n (n!) Teste os valores até n = 12. O que acontece quando n > 12? Como resolver o problema numérico?
10 Recursividade em Funções: fatorial de n (n!) Erro de compilação: declaração da Função sem o atributo RECURSIVE integer FUNCTION FATORIAL(n) RESULT(f)
11 Recursividade em Funções: fatorial de n (n!) Erro de compilação: declaração da Função sem a palavra-chave RESULT RECURSIVE integer FUNCTION FATORIAL(n)
12 Considere a função x(t), definida como x(t) = t 2, que descreve o movimento de uma partícula em movimento uniformemente variado. Faça um programa em Fortran 90 que calcule as velocidades médias entre os instantes t = 5 segundos e t = 5 + t segundos e t = 5 segundos e t = 5 t segundos. Compare estas duas velocidades para valores sucessivos de t, t = 1, 0.1, 0.01, 0.001, ,... Use um subprograma do tipo FUNCTION para calcular a velocidade média entre os dois instantes de tempo.
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
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
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:
Existem dois tipos básicos de subrotinas: a) Procedimentos; b) Funções.
ESTRUTURAÇÃO DOS MÓDULOS DE UM ALGORITMO Uma subrotina é um algoritmo hierarquicamente subordinado a um outro algoritmo geralmente chamado de módulo principal. Da mesma forma, uma subrotina pode conter
Programação de Computadores III
Programação de Computadores III Introdução ao FORTRAN Professor Leandro Augusto Frata Fernandes [email protected] Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.1/tcc-00.157
Lógica de Programação I. Gilson de Souza Carvalho
Gilson de Souza Carvalho [email protected] 1. Estruturas básicas Apresentaremos um resumo com os comandos estudados para criação de algoritmos. Para utilizar estes comandos, usaremos uma sintaxe
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
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
Programação de Computadores III
Programação de Computadores III Introdução ao FORTRAN Professor Hugo de Oliveira Barbalho [email protected] Material produzido pelo professor: Leandro Augusto Frata Fernandes ([email protected])
Programação de Computadores:
Instituto de C Programação de Computadores: Introdução ao FORTRAN Luis Martí Instituto de Computação Universidade Federal Fluminense [email protected] - http://lmarti.com Introdução ao FORTRAN Cinco aspectos
Modularidade. Objetivos: Introduzir noções básicas de modularidade. Funções e procedimentos
Modularidade Objetivos: Introduzir noções básicas de modularidade Funções e procedimentos Motivação É muito difícil manter um código quando ele tende a ser grande (com muitas linhas) É preciso organizar
1º Exame de INTRODUÇÃO À PROGRAMAÇÃO Licenciatura em Engenharia Mecânica 30 de Junho de º Semestre
º Exame de INTRODUÇÃO À PROGRAMAÇÃO Licenciatura em Engenharia Mecânica de Junho de 6 º Semestre Exame sem consulta : 6: h Nome: Número: Escreva o seu número e nome em todas as folhas de exame. O exame
Revisão: Tipo Abstrato de Dados Recursividade
Algoritmos e Estrutura de Dados II Revisão: Tipo Abstrato de Dados Recursividade Prof a Karina Oliveira [email protected] Introdução Estudo das estruturas de dados envolve dois objetivos complementares:
Aulas Anteriores. Detalhes da linguagem de programação
Aulas Anteriores Detalhes da linguagem de programação Elementos básicos (identificadores, constantes, símbolos gráficos) Estrutura básica de um programa (cabeçalho, parte declarativa, parte de execução)
Linguagens de Programação Aula 11
Linguagens de Programação Aula 11 Celso Olivete Júnior [email protected] Na aula passada Uma definição de subprograma descreve as ações representadas pelo subprograma Subprogramas podem ser funções
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:
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
Linguagens de Programação Conceitos e Técnicas. Amarrações
Linguagens de Programação Conceitos e Técnicas Amarrações Conceituação Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável e seu valor ou entre um identificador
Introdução ao Fortran 90-7
Introdução ao Fortran 90-7 Departamento de Física UFPel O Fortran 90 permite que a entrada (E) e a saída (S) de dados seja feita a partir de um (ou vários) arquivo externo ao programa. Para o acesso E/S
Algoritmos - 2. Alexandre Diehl. Departamento de Física - UFPel
Algoritmos - 2 Alexandre Diehl Departamento de Física - UFPel Pseudocódigo Também chamada de de linguagem estruturada, reune um conjunto de de ações (ou comandos), usando uma linguagem simples e genérica,
Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM
Exercício 1 PROGRAMAÇÃO DE COMPUTADORES I BCC701 2014-2 Aula Prática 09 - Segunda Valor de uma Série O valor aproximado de uma série com n termos é calculado pelo somatório: S = onde i é o número da parcela
ao paradigma imperativo
PARADIGMA FUNCIONAL PARADIGMA FUNCIONAL: INTRODUÇÃO G Exemplos de linguagens funcionais LISP - Início: LP puramente funcional - Depois: acréscimo de alguns recursos imperativos (aumentaram eficiência de
Recursividade. Estrutura de Dados. Prof. Kleber Rezende
Recursividade Estrutura de Dados Prof. Kleber Rezende Considerações Iniciais Em aulas anteriores fizemos uma função que permite calcular o fatorial de um número. Naquela função, a cada nova iteração o
Programação de Computadores:
Instituto de C Programação de Computadores: Introdução a Linguagens de Programação Luis Martí Instituto de Computação Universidade Federal Fluminense [email protected] - http://lmarti.com Seis Camadas Problema
Introdução ao fortran 90 - Aula 1
Introdução ao fortran 90 - Aula 1 Departamento de Física UFPel 1954-1957: The IBM Mathematical Formula Translating System John W. Backus da IBM: Fortran I: alternativa à linguagem assembler para a programação
Professor: Domingos Equipe Haskell: Lucas Montesuma, Francisco Leonardo CONCEITOS DA LINGUAGEM DE PROGRAMAÇÃO CÁLCULADORA EM HASKELL
Professor: Domingos Equipe Haskell: Lucas Montesuma, Francisco Leonardo CONCEITOS DA LINGUAGEM DE PROGRAMAÇÃO CÁLCULADORA EM HASKELL Sobre a Linguagem Haskell Inicialmente temos no trabalho o uso da versão
Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa?
Funções Suponha um conjunto habitacional, com várias famílias...... imagina se todas elas morassem em uma única casa? Funções Programação de Computadores 1 de 28 Funções Na Programação, funções são conjuntos
Linguagem de programação: Pascal
Aula 04 Linguagem de programação: Pascal Prof. Tecgº Flávio Murilo 26/03/2013 1 Pascal Introdução Pascal é uma linguagem de programação estruturada, criada em 1970 pelo suíço Niklaus Wirth, dando este
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
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 04 Programa Recursivo e Máquinas Prof.ª Danielle Casillo Funções recursivas Alguma função é recursiva quando
Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1
Programação de Computadores IV Introdução a Linguagens de Programação Simone Martins [email protected] SLIDES CEDIDOS POR BRUNO MARQUES 1 Arquitetura de programação 2 O Que é um Dado? Dado é o elemento
Programação de Computadores I BCC 701 Lista de Exercícios Módulo
Programação de Computadores I BCC 701 Lista de Eercícios Módulo 02 2013-2 Eercícios de Séries Eercício 29 Seja a seguinte série: 1, 4, 9, 16, 25, 36, Escreva um programa que gere esta série até o N-ésimo
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)
Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes
Fundamentos de Programação Linguagem C++ aula II - Variáveis e constantes Prof.: Bruno Gomes 1 Variáveis Representa uma porção da memória que pode ser utilizada pelo programa para armazenar informações
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 [email protected] 1 Lógica de Programação
Implementando subprogramas
Implementando subprogramas Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. http://github.com/malbarbo/na-lp-copl
Pascal. -Cabeçalho do programa. - label - const - type - var - procedure - function. - integer - real - byte - boolean - char - string
Pascal -Cabeçalho do programa Áreas do programa -Área de declarações -Corpo do programa - label - const - type - var - procedure - function - integer - real - byte - boolean - char - string Program
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
Subprogramação. Subprogramação. Subprogramação. A subprogramação é uma ferramenta que contribui com a tarefa de programar:
Universidade Estadual de Maringá- UEM Centro de Tecnologia - CTC Departamento de Informática - DIN Fundamentos da Computação Prof. Yandre Maldonado- 1 Prof. Yandre Maldonado e Gomes da Costa [email protected]
Funções. Funções constituem ferramenta essencial para a modularização de código.
Funções Funções constituem ferramenta essencial para a modularização de código. Vantagens: Permitem reaproveitamento de código. Permitem divisão de tarefas. Tornam código mais legível. 1 Programa: número
Linguagem C: funções e ponteiros. Prof. Críston Algoritmos e Programação
Linguagem C: funções e ponteiros Prof. Críston Algoritmos e Programação Funções Recurso das linguagens de programação que permite dar um nome para um conjunto de instruções Facilita a reutilização de algoritmos
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
Compiladores Ambiente de Execução
Compiladores Ambiente de Execução Fabio Mascarenhas 2015.2 http://www.dcc.ufrj.br/~fabiom/comp O Back-end Até agora vimos as fases do front-end do compilador: Análise Léxica Análise Sintática Análise Semântica
1.1 o que é um algoritmo... 6
sumário introdução 1 1 fundamentos 5 1.1 o que é um algoritmo... 6 1.1.1 algoritmos executados por um computador...7 1.1.2 comandos básicos executados por um computador...11 1.1.3 da necessidade do desenvolvimento
Desenvolvimento de programas. Análise do problema. Análise do problema. Análise do problema. Desenvolvimento do algoritmo. Codificação do programa
Desenvolvimento de programas 1 Análise do problema Desenvolvimento do algoritmo Codificação do programa Compilação e execução Teste e depuração Análise do problema 2 Conhecer exatamente o que o problema
Compiladores Ambiente de Execução
Compiladores Ambiente de Execução Fabio Mascarenhas 2015.1 http://www.dcc.ufrj.br/~fabiom/comp O Back-end Até agora vimos as fases do front-end do compilador: Análise Léxica Análise Sintática Análise Semântica
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
Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação
1 Algoritmo Prof. Anderson Almeida Ferreira Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação Desenvolvimento de programas 2 Análise do problema Desenvolvimento
Algoritmos e Técnicas de Programação
Algoritmos e Técnicas de Programação Estrutura, Visualg e Variáveis [email protected] Programação Estruturada A programação estruturada (Top-Down) estabelece uma disciplina de desenvolvimento
Aula Anterior. Decomposição algorítmica (continuação)
Aula Anterior Decomposição algorítmica (continuação) Degenerescência da decomposição básica da solução em três etapas Método de decomposição modificado à entrada Associação de diferentes valores de entrada
11 ª Lista de Exercícios
1 UEM UNIVERSIDADE ESTADUAL DE MARINGÁ 208 Fundamentos da Computação Professor: Dr. Wesley Romão 11 ª Lista de Exercícios 1) Dados três valores a, b e c, correspondentes aos lados de um triângulo. Faça
Capacitação em Linguagem C Parte 1
Capacitação em Linguagem C Parte 1 Andrey Souto Maior Giuseppe Portolese Universidade Estadual de Maringá - Centro de Tecnologia Departamento de Informática 21 de outubro de 2015 Sumário I Definição e
Programação I Apresentação
Programação I Apresentação Prof. Carlos Alberto [email protected] [email protected] Referências JUNIOR, D. P.; NAKAMITI, G. S.; ENGELBRECHT, A. de M. E.; BIANCHI, F. Algoritmos e Programação
Suponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa?
Funções Suponha um conjunto habitacional, com várias famílias...... imagina se todas elas morassem em uma única casa? Funções Introdução à Computação 1 de 28 Funções Na Programação, funções são conjuntos
Implementação de subprogramas
Implementação de subprogramas Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual
