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
Lógica de Programação Algoritmo: são regras formais para obtenção de um resultado ou da solução de um problema, englobando fórmulas de expressões aritméticas. Português Estruturado: tem como finalidade mostrar uma notação para elaborações futuras de algoritmos, os quais serão utilizados na definição, criação e desenvolvimento de uma linguagem computacional ( Fortran, Clipper, C, pascal, Delphi, Visual-Objects) e sua documentação. 2
Lógica de Programação INSTRUÇÕES ALGORÍTMOS PROGRAMAS SOFTWARE SISTEMAS INSTRUÇÕES: informação que indica uma ação. ALGORÍTMO: série de instruções ( linguagem humana). PROGRAMAS: série de instruções legíveis ( lógica). Linguagem específica. SOFTWARE: SISTEMA: conjunto de programas. conjunto de software. 3
Exemplo de Algoritmo Exem1 - DESCREVER A TROCA DE UMA LÂMPADA 1- Pegue uma escada 2- Posicione-a embaixo da lâmpada 3- Busque uma lâmpada nova 4- Suba a escada 5- Retire a lâmpada velha 6- Coloque a lâmpada nova CADA LINHA INSTRUÇÃO CONJUNTO ALGORÍTMO. 4
Algoritmo PROCESSANDO UM ALGORITMO 10 8 Algoritmo para calcular a média de duas notas A média das notas é: 9
Algoritmo algoritmo SOMA_NOTA var N1,N2,MEDIA: real Inicio_algoritmo escreva( Entre com as notas") leia(n1,n2) MEDIA= (N1+N2)/2 escreva( A MEDIA =, MEDIA) Fim_algoritmo
Conceitos Básicos VARIÁVEIS - É um local (endereço) na memória principal utilizado pelo programa para armazenar um determinado conteúdo. Declaração de variáveis - devem ser declaradas no início do algoritmo Sintaxe: nome da variável: Tipo da variável. Ex: Idade: inteiro Raio: real
Conceitos Básicos VARIÁVEIS Tipos de Variáveis: INTEIRO A; ( Inteiro: 5, 10, -5) REAL B; (Décimais, Fracionários: 5.4, -7.34) STRING NOME; (Caractere, Literal, Alfanumérica: maria, A ) LOGICO R; (booleano: Verdadeiro e Falso) CONSTANTES - São valores que não sofrem nenhuma variação no decorrer da execução do algoritmo PI = 3.14
Conceitos Básicos EXPRESSÃO Tipos de expressões: Aritméticas - São aquelas que usam operadores aritméticos e os operandos são constantes ou variáveis numéricas.» Soma (+) Ex. (a + b)» Subtração (-) Ex. (a - b)» Mutiplicação (*) Ex. (a*b)» Divisão (/) Ex. (a/b)» Exponenciação (** ) Ex. (a**b)» Resto (%) Ex. (a%b) (ou mod)
Conceitos Básicos ATRIBUIÇÃO Maneira de armazenar um dado em uma variável leia abstrai o que vem da entrada padrão e armazena na variável LEIA X Outra forma de atribuir valores: X <- 10 Nome <- Antonio Idade <- 20 Pi <- 3.14
Conceitos Básicos Exemplo SOMA DE DOIS NÚMEROS INTEIROS Algoritmo SomaDeInteiros var x, y soma: inteiro inicio escreva Primeiro Numero: leia x escreva Segundo Numero: leia y soma <- x + y escreva( A soma é:, soma) fimalgoritmo
Conceitos Básicos Exemplo CÁLCULO DA ÁREA DE UM CIRCULO algoritmo CalculaArea var r: real pi: real Inicio pi <- 3.14159265 escreva Calculo da area escreva Informe o raio: leia r A = pi * R ** 2 escreva( A area da circunferencia eh:, A) fimalgoritmo
Exercícios 1 Lista 1 (Faça os algoritmos da lista abaixo) Exerc 1 - Calcular o potencial hidrogeniônico (PH = - log 10 [ H + ] ) Exerc 2 - Dado a massa do soluto (m1) e a massa do solvente (m2), calcular o título ( T=m1/(m1+m2) Exerc 3 - Dado a massa ( em g) e o volume (em cm³ ). Calcular a densidade e a concentração de uma solução. ( D=massa/volume) Exerc 4 - Calcular o volume V2, sendo dado as pressões: P1,P2 e o volume V1. ( P1V1=P2V2). Exerc 5 - A pressão em um líquido varia com a profundidade de acordo com a fórmula : p= 0,03 H, onde H é a profundidade. Dado o valor da profundidade H; calcule a pressão e imprima H, p Exerc 6 - Leia uma temperatura em graus centígrados e apresentá-las convertida em graus Fahrenheit. ( F <- (9 C + 160)/5 ) 13
Linguagem de Programação A primeira geração de códigos para programação de computadores, era chamada de linguagem de máquina ou código de máquina, que na verdade, é a única linguagem que o computador entende, uma seqüência de 0s e 1s, interpretadas como instruções. A segunda geração de códigos foi chamada de linguagem Assembly (montagem). Esta linguagem torna a seqüência de 0s e 1s em palavras compreensíveis, como ADD. Na verdade, esta linguagem é traduzida para código de máquina por programas chamados Assemblers (montadoras). A terceira geração de códigos foi chamada de High level language ou HLL, na qual existem palavras e sintaxe de acordo com a linguagem humana (como palavras em uma sentença). Para que um computador entenda uma HLL, é necessário um compilador que traduza o código para Assembly ou para código de máquina. 14
Linguagem de Programação Compilando o programa Programa-Fonte. Programa-Objeto. Programa executável. 15
Linguagem de Programação Programa-Fonte - Trata-se do programa escritos pelo programador, usando algum tipo de editor de texto, de acordo com as regras definidas pela linguagem de programação de alto nível. Programa-Objeto - É a transcrição do programa-fonte para uma linguagem de baixo nível, como Assembler ou outro código diretamente interpretável pela CPU. O programa-objeto não pode ainda ser executado; é necessário ainda passar-se pela fase do linking (linkagem). Programa executável - Após a fase de compilação, onde os programas objetos são criados, o agente de compilação aciona o linker, o qual consiste em um programa especial que agrupa os programas objetos de forma a criar um arquivo final, o programa executável, o qual pode ser então executado pelo usuário. 16
Linguagem Fortran - FORmula TRANslation Histórico Uma das linguagens de programação mais antiga, o FORTRAN foi desenvolvido por uma equipe de programadores conduzida por John Backus na IBM, e foi primeiramente publicada em 1957. O nome FORTRAN é uma fusão de "FORmula TRANslation", porque foi projetado para permitir tradução fácil de fórmulas de matemática em código. FORTRAN I traduzir um código, por mais de 20 anos. FORTRAN II surgiu com o advento da 2ª geração de computadores (1958), como o IBM 1401 - Capacidade de compilar módulos de programas, não executáveis, para serem link editados com outros programas. 17
Linguagem Fortran - FORmula TRANslation Histórico FORTRAN IV ou FORTRAN 66-3ª geração em 1964, como IBM/360 e o IBM 1130 - implementação dos comandos que permitiram o compartilhamento de código entre outros programas e sub-rotinas. FORTRAN 77 ou FORTRAN ANSI 77 padronização do fortran pela ANSI - padronizado utilizando o conceito de programação estruturada. FORTRAN 90 / HPF (1990) - High Performance Fortran Fortran90 para ambientes com memória distribuida dar origem A FORMA LIVRE. Uso de ponteiro; Estrutura de dados; 18
Linguagem Fortran Ambiente Formato 1 2 3 4 5 6 7 72 C Coluna 1 comentário Coluna 2-5 reservado para enderaçamento Coluna 6 continuação de instrução Coluna 7-71 comandos (instruções) Coluna 72-80 sem utilização 19
Linguagem Fortran Elementos da Linguagem FORTRAN Brancos no interior do nome são ignorados; Número máximo de caracteres é de 6 (seis) até FORTRAN 77; A 1ª letra indicará o tipo (implícito) da mesma, i.e., se for, I, J, K, L, M ou N é do tipo inteiro, caso contrário será real. Exemplo: N=32 / O=32. 20
LINGUAGEM FORTRAN Declaração de Variáveis: inteiro / real REAL v1, v2, v3,, vn INTEGER v1, v2, v3,, vn Exemplos: REAL NOTA, MEDIA INTEGER N1,N2,N3 Cadeias alfanuméricas: Devemos indicar o comprimento da cadeia. CHARACTER v1*comp1, v2*comp2, v3*comp3,, vn*compn Exemplos: CHARACTER BRANCO*1, RELAT*9, TITUL*22 21
LINGUAGEM FORTRAN INSTRUÇÕES BÁSICAS ENTRADA Lê Instrução LEIA read(*,*) A SAÍDA Escreve Instrução ESCREVA write(*,*) A INICIO ( ) A,B: INTEIRO LEIA A,B ESCREVA A,B FIM C programa_ler integer A,B read(*,*) A,B write(*,*)a,b stop end 22
LINGUAGEM FORTRAN Exemplo1 - Calcule a área de uma circunferência ( A = R 2 ) ALGORITMO FORTRAN Programa Area_Círculo C Programa Area_Círculo VAR A, R : REAL REAL A,R,PI INICIO PI = 3.14159 ESCREVA entre com o valor do raio WRITE(*,*) entre com o valor do raio LEIA R READ (*,*) R A 3.14159 * R 2 A = PI * R ** 2 ESCREVA A WRITE(*,*)A PARE FIM STOP END 23
LINGUAGEM FORTRAN FUNÇÕES INTRÍNSECAS: 24
Exercícios 2 Passe a lista do slide 13 para o fortran Compilador Fortran force 3.0 http://www.lepsch.com/2009/05/downloads.html Force3beta2Setup.exe 25