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