当前位置:网站首页>FORTRAN 77 reads some data from the file and uses the heron iteration formula to solve the problem
FORTRAN 77 reads some data from the file and uses the heron iteration formula to solve the problem
2020-11-08 01:33:00 【wangxuwei】
Required :
1. There is no limit to the number of data , Automatically count and print serial numbers
2. When you encounter a negative number , Skip the recipe , Print directly and mark
3. encounter 0.0, The program to stop
Heron Iterative method .
- initialization (X0 = A);(x1 =1/2*{x0+A/ x0});
- Calculation (Delta_k = |x1 - x0|;
- if (Delta_k < epsilon), return (x), The algorithm ends ;
- (x1 =1/2*{x0+A/ x0});
- Back to page 2 Step ;
C
C heronus1.f
C
C Unlimited number of data, automatic counting and printing serial number
C When negative numbers are encountered,skip square root, print them directly and mark them
C Encountered 0.0, the program stopped
PROGRAM heronus1
EPS=.1 E-4
I=0
OPEN(11,file='fheronus.dat')
10 READ(11,*)A
I=I+1
IF (A) 1,2,30
1 WRITE(6,100) I,A
100 FORMAT(1X, I6,10X,F10.6,' NEGATIVE NUMBER')
GO TO 10
2 STOP 'END OF JOB'
30 X0=A
20 X1=.5*(X0+A/X0)
IF (ABS(X1-X0).LT.EPS) GO TO 40
X0=X1
GO TO 20
40 WRITE(6,110) I,A,X1
110 FORMAT(1X, I6,2F10.6)
3 CONTINUE
GO TO 10
END
Data should be divided into rows , Not spaces , And use 0.0 end :
$ cat fheronus.dat
1
2
3
4
5
6
7
8
9
10
11
12
12
13
13
14
16
21
22
13
25
22
13
21
52
32
-23
121
12
0.0
function :
$ f77 heronus1.f
$ a.out
1 1.000000 1.000000
2 2.000000 1.414214
3 3.000000 1.732051
4 4.000000 2.000000
5 5.000000 2.236068
6 6.000000 2.449490
7 7.000000 2.645751
8 8.000000 2.828427
9 9.000000 3.000000
10 10.000000 3.162278
11 11.000000 3.316625
12 12.000000 3.464102
13 12.000000 3.464102
14 13.000000 3.605551
15 13.000000 3.605551
16 14.000000 3.741657
17 16.000000 4.000000
18 21.000000 4.582576
19 22.000000 4.690416
20 13.000000 3.605551
21 25.000000 5.000000
22 22.000000 4.690416
23 13.000000 3.605551
24 21.000000 4.582576
25 52.000000 7.211102
26 32.000000 5.656854
27 -23.000000 NEGATIVE NUMBER
28121.000000 11.000000
29 12.000000 3.464102
STOP END OF JOB
ubutnu18.04 Next gfortran-10 Compile and pass (vax780 Of f77 Also tested )
版权声明
本文为[wangxuwei]所创,转载请带上原文链接,感谢
边栏推荐
- 14000 word distributed transaction principle analysis, master all of them, are you afraid of being asked in the interview?
- Python image recognition OCR
- Go之发送钉钉和邮箱
- delphi10的rest.json与system.json的踩坑
- Writing method of field and field comparison condition in where condition in thinkphpp6
- C语言I博客作业03
- Introduction to ucgui
- Windows下子系统Ubuntu安装
- GET,POST,PUT,DELETE,OPTIONS用法与说明
- What? Your computer is too bad? You can handle these moves! (win10 optimization tutorial)
猜你喜欢
随机推荐
Web Security (1) -- browser homology strategy
Data structure and sorting algorithm
Lay UI left tree Dtree right list table
The real-time display of CPU and memory utilization rate by Ubuntu
On the concurrency of update operation
iOS上传App Store报错:this action cannot be completed -22421 解决方案
Codeforce算法题 | 你能想出解法,让你的基友少氪金吗?
获取树形菜单列表
Awk implements SQL like join operation
Static + code block + polymorphism + exception
QT hybrid Python development technology: Python introduction, hybrid process and demo
Get tree menu list
LadonGo开源全平台渗透扫描器框架
Hand tearing algorithm - handwritten singleton mode
wanxin金融
easyui dialog“缓存问题”
Web安全(一)---浏览器同源策略
虚拟DOM中给同一层级的元素设置固定且唯一的key为什么能提高性能
Qt混合Python开发技术:Python介绍、混合过程和Demo
C/C++编程笔记:C语言相比其他编程语言,有什么不一样的优势?




