introdução à computação - deinf.ufma.brmaria/arqintqu/2013-2/aula01-fortran01.pdf · criação...

25
1 Introdução à Computação Profa. Msc. Maria Auxiliadora Freire [email protected] Linguagem Fortran Universidade Federal do Maranhão Curso de Química Departamento de Informática

Upload: lamnhu

Post on 10-Nov-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

1

Introdução à Computação

Profa. Msc. Maria Auxiliadora Freire [email protected]

Linguagem Fortran

Universidade Federal do Maranhão Curso de Química

Departamento de Informática

2

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.

3

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: conjunto de programas.

SISTEMA: conjunto de software.

4

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.

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

13

Exercícios 1 – Lista 1 (Faça os algoritmos da lista abaixo)

Exerc 1 - Calcular o potencial hidrogeniônico (PH = - log10 [ 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 )

14

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.

15

Linguagem de Programação

Programa-Fonte.

Programa-Objeto.

Programa

executável.

Compilando o programa

16

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.

17

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.

18

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;

19

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

20

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.

21

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

LINGUAGEM FORTRAN

22

INSTRUÇÕES BÁSICAS

ENTRADA Lê Instrução LEIA read(*,*) A

SAÍDA Escreve Instrução ESCREVA write(*,*) A

LINGUAGEM FORTRAN

INICIO ( ) C programa_ler

A,B: INTEIRO integer A,B

LEIA A,B read(*,*) A,B

ESCREVA A,B write(*,*)A,B

stop

FIM end

23

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 STOP

FIM END

24

LINGUAGEM FORTRAN

FUNÇÕES INTRÍNSECAS:

25

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