LINGUAGEM DE PROGRAMAÇÃO FORTRAN LENZI, Orlando

Transcrição

LINGUAGEM DE PROGRAMAÇÃO FORTRAN LENZI, Orlando
LINGUAGEM DE PROGRAMAÇÃO FORTRAN
LENZI, Orlando
TREINAMENTO - EXEMPLO
INTERCOMUNICAÇÃO
1
01) Gerar o gráfico de uma parábola cujos coeficientes serão digitados, com formato livre, por meio do arquivo "data.txt".
No vídeo mostre a equação da parábola, as raízes reais, a data, a hora inicial e o tempo de processamento em
segundos. Quando as raízes não forem reais escreva "raizes imaginárias".
!Especificacao de variaveis
implicit none
integer*2 ver,a,b,c,dh(8),i,j
real*4 delta,r1,r2,x,y
!Procedimentos
ver=system("notepad data.txt")
call date_and_time (VALUES=DH)
write (*,'("Processado em: ",I2.2,"/",I2.2,"/",I4," as ",I2.2,":",I2.2)') dh(3:1:-1),dh(5:6)
open (41,file="data.txt")
read (41,*) a,b,c
open(42,file="coordparabola.txt")
do i = -199,201
x=(i-1.)/10
y=a*x**2+b*x+c
write (42,*) x,y
end do
close(42)
ver=system ("C:\gnuplot\wgnuplot.exe comandoparabola.txt")
delta=b**2-4*a*c
if (delta >= 0) then
r1=(-b+sqrt(delta))/(2*a)
r2=(-b-sqrt(delta))/(2*a)
write (*,'("Equacao:",I0,"(x^2)",SP,I0,"x",I0,SS,"=0 --> Raizes: ",F0.2," e "F0.2)') &
a,b,c,r1,r2
else
write (*,'("Equacao:",I0,"(x^2)",SP,I0,"x",I0,SS,"=0 --> Raizes imaginarias")') a,b,c
end if
COMENTÁRIOS E SUGESTÕES:
A primeira instrução após o comentário !Procedimentos, informa ao sistema operacional que ele deverá abrir o arquivo
"data.txt" com o programa "notepad" (bloco de notas).
Na janela aberta para o arquivo, digitaremos os valores dos coeficientes da equação que serão lidos em formato livre pelo
comando "read (41,*) a,b,c". Após a digitação devemos fechar a janela no ícone correspondente para continuar o
processamento do programa. Observamos que este arquivo é somente para entrada de dados, logo podemos omitir o
comando fortran para fechá-lo.
As coordenadas do gráfico serão geradas no arquivo "coordparabola.txt", variando "x" no intervalo [-20,20] com
incremento de 0,1. Para trabalharmos com valores inteiros no "do", definidos os valores -199 e 201. E no cálculo
efetuamos a variação (1/10) e efetuamos a divisão por 10 para retornar ao intervalo desejado. Para o FORTRAN utilizar
valores reais nos índices de um comando "do" será necessário efetuar a compilação do programa com um parâmetro
adicional, que dependerá do seu ambiente computacional.
O comando, ver=system ("C:\gnuplot\wgnuplot.exe comandoparabola.txt"), informa ao sistema operacional para executar
o programa "wgnuplot.exe" usando o arquivo "comandoparabola.txt". Este arquivo contém os comandos do GNUPLOT
para definir os parâmetros do gráfico (exemplo: eixos, escalas, cores, dados do arquivo que serão usados, etc). Estas
informações são dependentes do traçador de gráfico utilizado. Consultar domínio do GNUPLOT para ver a sintaxe dos
comandos deste traçador de gráficos.
A sub-rotina "DATE_AND_TIME" obtém a data e hora do sistema operacional. As formas desta data é dependente do
sistema. Usamos o parâmetro "VALUES=" que retorna um vetor do tipo inteiro, que chamamos "DH", com oito valores. Por
posição e em ordem crescente teremos: 1) ano; 2) mês; 3) dia; 4) fuso horário (diferença em minutos a Greenwich); 5)
hora; 6) minuto; 7) segundo; 8) milissegundos. Outros parâmetros consultar documentação indicada.
ATUALIZADO: jan/2013
REFERÊNCIA: Fortran-95
1
olenzi @ orlandolenzi . eng. br
O APRENDIZADO É O RESULTADO DA AÇÃO DO EDUCANDO.
PDF GERADO POR: Microsoft Word 2010