程序游戏内存不能为read

游戏内存不能为read  时间:2021-01-19  阅读:()

Fortran95简介-全文版By陈鲸太FORTRAN的演进FORTRAN的起源,要追溯到1954年IBM公司的一项计划.
由JOHNBACKUS领导的一个小组,尝试着在IBM704计算机上面发展一套程序,它可以把使用接近数学语言的文字,翻译成机械语言.
这个计划在刚开始并不被大家看好,但他们在1957年交出了成果,也就是第一套FORTRAN编译器,FORTRAN语言也就因此诞生了.
FORTRAN语言的执行效率普遍的令各界满意,它证明了这项计划的可行性,也成为第一个被广泛使用的高级语言.
FORTRAN的名字来自于英文的FORMULATRANSLATOR这两个字,而这两个字恰是数学公式翻译器的意思.
旧版的FORTRAN77是在1978年由美国国家标准局(ANSI)所正式公布的,之后改版有1992年提出的FORTRAN90以及1997年的FORTRAN95,本文是为了FORTRAN95所撰写.
编译器简介1、VISUALFORTRANVISUALFORTRAN一开始是起源于MICROSOFT的FORTRANPOWERSTATION4.
0,这套工具后来卖给DIGITAL公司来继续发展,下一个版本称为DIGITALVISUALFORTRAN5.
0,DIGITAL后来被COMPAQ合并,所以接下来的6.
0及6.
5版就称为COMPAQVISUALFORTRAN.
而COMPAQ目前又跟HP合并,也许下一个版本会称为HPVISUALFORTRAN.
VISUALFORTRAN被整合在一个叫作MICROSOFTVISUALSTUDIO的图形接口开发环境中,VISUALSTUDIO提供一个统一的使用接口,这个接口包括文书编辑功能,PROJECT的管理、除错工具等等,所以在使用上其实跟上学期的VISUALC++满类似的,同学们上课用过VISUALC++,对VISUALFORTRAN应该不会陌生.
VISUALFORTRAN6.
5除了完全支持FORTRAN95的语法外,扩充功能方面提供完整的WINDOWS程序开发工具,专业版还内含IMSL数值链接库.
另外它还可以和VISUALC++直接互相连结使用,也就是把FORTRAN和C语言的程序代码混合编译成同一执行档案.
2、在工作站使用FORTRAN学校计中工作站也提供FORTRANCOMPILER,使用方式很简单,只需要在存放FORTRAN档案的目录下面输入下面叙述即可:ccsun33[u8623033/fortran]%f77filename.
for这个指令使用f77的compiler,其中filename.
for就是我们所编写的FORTRAN程序档案ccsun33[u8623033/fortran]%f90filename.
for这个指令使用f90的compiler而指令按下enter键之后,会把结果COMPILE到a.
out这个档案里面,我们想要执行这个程序,只要在命令提示字符后打a.
out就可以看到执行结果:ccsun33[u8623033/fortran]%a.
out如果在compile的过程中想要把执行档改成别的档名,不要每次都变成a.
out,那我们可以输入下列指令ccsun33[u8623033/fortran]%f77filename1.
for–ofilename2或者ccsun33[u8623033/fortran]%f90filename1.
for–ofilename2则filename2会变成我们的执行档名字在COMPILEFORTRAN的时候,我们必需登入学校计中ccsun26~ccsun35的机器才可以使用(学校规定),并且因为软件总数只有两套,同时间只有两个人能可compile.
FORTRAN基本事项字符集字符集是指使用FORTRAN的时候,所能使用的所有字符有符号.
FORTRAN所能使用的字符集有1、英文26个字母:大小写不分2、数字:0到93、22个特殊符号:有冒号、等号、加号、减号、惊叹号…等等书面格式FORTRAN程序代码的写作格式有两种,FREEFORMAT(自由格式)以及FIXEDFORMAT(固定格式).
简单来说,FIXEDFORMAT是属于旧式的写法,它在写作版面上有很多限制.
FREEFORMAT是FORTRAN90之后的新写法,取消了许多旧的限制.
FORTRAN程序代码附加档名为*.
F或*.
FOR的档案,就是指以FIXEDFORMAT来写作的程序,若以*.
F90为附加档名的档案,就是以FREEFORMAT来写作的程序.
建议现在都应该改用FREEFORMAT来写作程序.
FIXEDFORMAT固定格式之中,规定了程序代码每一行中每个字符字段的意义.
如下表所示:第1个字符如果是字母c,C或*(星号),表示此行是批注第1-5个字符如果这边是数字,表示这一行的代号,否则应为空白第6个字符如果是0以外的字符,表示这一行程序会接续上一行第7-72个字符FORTRAN程序代码的写作区域第73个字符之后不使用,超过部份会被忽略,有的编译器会有错误讯息FIXEDFORMAT是为了配合早期需要使用打洞卡来输入程序才发明出来的格式.
现在都应该要使用FREEFORMAT来写作程序.
早期的计算机,还没有使用显示器作为输出装置,不能像现在一样直接利用键盘来修改程序.
早期的程序是利用打洞卡片一张一张的记录下来,再拿给计算机执行.
有着打洞卡的淘汰,FIXEDFORMAT也没有必要再继续使用下去.
不过同学们还是可以大概了解一下,因为仍有些旧程序是用这种格式来写作.
FREEFORMATFREEFORMAT基本上允许非常自由的写作格式,它没有再去规定每一行的第几个字符有什么作用.
需要注意的事项只有下面几点:1、惊叹号「!
」后面的文字都是批注.
2、每行可以写作132个字符.
(注意!
并不是无限长)3、行号放在每行程序的最前面.
4、一行程序代码的最后如果是符号&,代表下一行程序会和这一行连接.

例子:sample1.
f90!
FreeFormatprogrammainwrite(*,*)"hello"!
打印出hello这个字write(*,*)&"hello"wri&te(*,*)"hello"end输出、输入及宣告输出基本范例输出使用write指令,如下例sample2.
f90programmainwrite(*,*)"hello"stopendFORTRAN程序通常以PROGRAM叙述来开头,PROGRAM后面还要接一个自订的程序名称.
这个名称可以完全自订,不需要和档名有任何的关系,这个名字表示「主程序」的名字.
我在这里取名为MAIN,这个名字可以看个人喜好修改.
FORTRAN程序最后还要有END这个叙述,表示程序代码写到这一行结束.
WRITE指令就是作为输出用,WRITE(*,*)之中两个星号各有各自的意义,前面的星号表示输出的位置使用内定值,也就是屏幕,后面的星号表示不特别设定输出格式.
另外,下面三种输出格式其实会得到一样的结果:WRITE(*,*)"HELLO"WRITE(6,*)"HELLO"WRITE(UNIT=6,FMT=*)"HELLO"关于WRITE还有几点要注意1、每一次执行write指令之后,会自动换到下一行来准备做下一次的输出.
2、因为双引号是用来包装字符串用的,所以想要印出双引号的时候,要连用两个双引号.
例:想要印出MYNAMEIS"CASTER".
就要下达WRITE(*,*)"MYNAMEIS""CASTER"".
"这个叙述3、FORTRAN90可以使用双引号或单引号来包装字符串,FORTRAN77标准中只能使用单引号,不过大部份的FORTRAN77还是可以接受双引号.
范例中还有另一个指令STOP,STOP是终止程序的意思,它可以出现在程序的任何地方,程序执行到这个指令就会中止.
除非必要,不要把STOP指令使用在主程序结束之外的其它地方.
因为一个程序如果有太多的终止点会容易出错.

STOP指令在这个地方可以省略,因为主程序的程序代码执行完毕后,程序会自动终止.
加上这个指令只是为了更明确表示程序到此结束而已.
END是用来包装程序代码使用的,说明程序代码已经写作完毕.
FORTRAN90标准中,可以使用下面三种方法来表示程序代码写作结束,FORTRAN77只能使用第一种方法.
ENDENDPROGRAMENDPROGRAMMAIN!
MAIN是主程序的名字PRINT指令用法大致上和WRITE相同,只是专门针对屏幕作输出,因此少了指定输出的能力,它也具有限定输出格式的功能,其语法如下:PRINT*,"输出字符串"宣告1、整数整数的宣告法很简单,如下:integera!
宣告a为一个整数,内定范围为2^32~-2^322、浮点数reala!
宣告a为一个浮点数,默认值为单精度浮点数real*4a!
宣告a为一个单精度浮点数,大小为4bytereal*8a!
宣告a为一个双精确度浮点数,大小为8byte单精度可记录的数值最大为3.
4*10^38,最小为-3.
4*10^383、复数FORTRAN是少数有提供复数型态的程序语言,宣告方法如下complexa设定复数的方法如下:a=(x,y)!
x为实部,y为虚部例如我们设a=(3,8)就表示a是3+8i范例:sample3.
f90programmaincomplexa,ba=(1.
0,1.
0)b=(3.
0,4.
3)write(*,*)"a+b=",a+bwrite(*,*)"a-b=",a-bwrite(*,*)"a*b=",a*bwrite(*,*)"a/b=",a/bstopend则执行结果如下a+b=(4.
0,5.
3)a-b=(-2.
0,-3.
3000001)a*b=(-1.
3000002,7.
3)a/b=(0.
2655511,-0.
047289926)4、字符及字符串宣告一个字符的方法如下CHARACTERa宣告字符串的方法如下CHARACTER(10)A!
宣告A这个字符串的最大长度为10另外使用下面几种宣告语法也是相同的结果CHARACTER*10CHARACTER(LEN=10)CHARACTER*(10)宣告好之后,我们要给予这个变量一个初始值的方法如下:A="字符串内容"!
双引号在FORTRAN90适用A='字符串内容'!
单引号在部份FORTRAN77及所有FORTRAN90都适用输入指令输入指令的基本语法如下:INTEGERAREAD(*,*)A!
读入一个整数,并存到A内READ(5,*)A!
同上READ(UNIT=5,FMT=*)A!
同上第一个星号表示输入的来源使用内定的装置,第二颗星号来源表示不指定输出格式.
键盘的输入位置是5,也就是预设位置,所以可以用星号代替键盘代码.
格式化输出格式化输出入的控制字符非常丰富,但是常用的并不多,在这里我们只示范几个比较常用的部份.
A.
关于IWRITE(*,"(I5)")100!
用5个字符的字段来输出一个整数OUTPUT:__100WRITE(*,"(I3)")100000OUTPUT:***输出10000需要5个字段,但是输出格式只给三个字的字段,因此印出三颗星号作为警告WRITE(*,"(I5.
4)")3!
输出五个字符字段,至少输出4位,不足补0OUTPUT:_0003B.
关于FWRITE(*,"(F9.
3)")123.
45!
输出9个字符字段,包括小数部份3个位数OUTPUT:__123.
450C.
关于EWRITE(*,"(E15.
7)")123.
45!
用科学计号表示法,输出15个字符字段,小数部份占7位OUTPUT:__0.
1234500E+03D.
关于AWRITE(*,"(A10)")"HELLO"!
用10个字符宽度输出字符串OUTPUT:HELLOWRITE(*,"(A3)")"HELLO"OUTPUT:HELE.
关于BWRITE(*,"(B6.
5)")3!
把3变成二进制输出,字6个字符宽,至少输出5位OUTPUT:_00011F.
关于XWRITE(*,"(3X)")20!
输出前先填3个空格符OUTPUT:___20变量名称的取名原则变量名称的长度限制随着各家编译器而有所不同.
FORTRAN77规定至少要支持到6个字符,FORTRAN90则规定最少要支持到31个字符.
变量的名字最好是取成一个有意义的英文单字,这样可以减少程序写作时出错的机会.
IMPLICIT指令FORTRAN标准中有一项不太好的功能,它的变量并不一定要经过宣告之后才能使用,编译器会依变量名称的第一个字母来自动决定这个变量的型态.

第1个字母若为I,J,K,L,M,N的变量会被视为整数型态,其它的变量则会被当成浮点数来使用.
来看下面范例:SAMPLE4.
f90PROGRAMMAINI=11+22WRITE(*,*)"11+22=",JSTOPEND程序执行结果会得到11+22=0这个结果当然是错误的,错误是出在程序的第3行,原本应该是要输出变量I,却不小心打成J,而J仍未设定任何数值,所以会输出0来.
打错字是写程序的过程当中最容易发生的错误,这一类的错误通常很难查觉出来,尤其是在写作大程序的时候.
所以建议在FORTRAN程序中,开始作宣告之前,都加入下面这个叙述:IMPLICITNONE加入这个叙述之后,会把内定型态的功能关闭,因此这个范例程序若加入这一行,那么在COMPILE的过程中就会发生错误,我们必需事先宣告所有会使用的变量才可以.
IMPLICIT指令要马上接在PROGRAM指令的下一行,不能把它放在其它位置.
常数的宣告常数的宣告有下列两种方式A.
REALPIPARAMETER(PI=3.
14159)这个方式先宣告PI是一个浮点数,再宣告它是一个常数,也就是我们所说的圆周率B.
REAL,PARAMETER::PI=3.
14159这个方式同时宣告PI为浮点数及常数程序结构FORTRAN的程序结构应该如下PROGRAMxxxxIMPLICITNONEINTEGERINT1,INT2宣告区REALREAL1,REAL2READ(*,*)INT1,INT2程序主体WRITE(*,*)INT1+INT2STOPEND其中宣告区不可与程序主体交错.
FLOWCONTROLIF…THEN…ELSE基本语法如下IF(逻辑判断式)THEN执行动作1ELSE执行动作2ENDIFSAMPLE5.
f90PROGRAMMAINIMPLICITNONEREALHIEGHTREALWEIGHTREAD(*,*)HEIGHTREAD(*,*)WEIGHTIF(WEIGHT>HEIGHT-100)THENWRITE(*,*)"TOOFAT!
"ELSEWRITE(*,*)"UNDERCONTROL"ENDIFSTOPEND逻辑表达式FORTRAN90的逻辑运算符号共有下列几种:==相等/=不相等>大于>=大于等于<小于<=小于等于.
AND.
如果两边式子都成立,整个条件就成立.
OR.
两边的式子只要有一个成立,整个条件就成立.
NOT.
如果后面的式子不成立,整个式子就算成立.
EQV.
两边式子的逻辑运算结果相同时,整个式子就成立.
NEQV.
两边式子的逻辑运算结果不同时,整个式子就成立FORTRAN77要用缩写来作判断,不能使用逻辑符号.
EQ.
等于.
NE.
不等于.
GT.
大于.
GE.
大于等于.
LT.
小于.
LE.
小于等于DO循环DO循环基本语法如下:DO起始值,终止值,累加值执行程序代码ENDDO举例如下:DOI=10,5,-1WRITE(*,*)IENDDO在这个程序中,我们设定初始值是I这个变量为10,然后每次减1,一直到I=5为止,因此程序会印出:1098765DOWHILE…DOWHILE的基本语法如下:DOWHILE(逻辑运算)程序代码ENDDO因为跟同学们上学期学过的C语言几乎一样,因此在这里不再多描述.
数组的宣告与使用宣告数组宣告数组有下列几种方法:integera(10)!
宣告a这个数组有10个元素integer,dimension(10)::a!
同上,另一种作法而在FORTRAN77当中,我们必需用下面这种方法integeradimensiona(10)请记住在FORTRAN当中的数组是从1开始算,也就是a(1),a(2)一直到a(10)使用数组我们要使用已经宣告出来的数组,直接利用其index即可,例如:a(1)=18也可以利用DATA这个叙述INTEGERA(3)DATAA/36,24,36/在FORTRAN90中,还可以省略DATA这个叙述INTEGER::A(3)=(/36,26,36/)使用这个方式必需注意,括号跟除号之间不能有空格,并且冒号不能省略.

快云科技:夏季大促销,香港VPS7.5折特惠,CN2 GIA线路; 年付仅不到五折巨惠,续费永久同价

快云科技怎么样?快云科技是一家成立于2020年的新起国内主机商,资质齐全 持有IDC ICP ISP等正规商家。我们秉承着服务于客户服务于大众的理念运营,机器线路优价格低。目前已注册用户达到5000+!主营产品有:香港弹性云服务器,美国vps和日本vps,香港物理机,国内高防物理机以及美国日本高防物理机!产品特色:全配置均20M带宽,架构采用KVM虚拟化技术,全盘SSD硬盘,RAID10阵列, 国...

特网云-新上线香港五区补货资源充足限时抢 虚拟主机6折,低至38元!

官方网站:点击访问特网云官网活动方案:===========================香港云限时购==============================支持Linux和Windows操作系统,配置都是可以自选的,非常的灵活,宽带充足新老客户活动期间新购活动款产品都可以享受续费折扣(只限在活动期间购买活动款产品才可享受续费折扣 优惠码:AADE01),购买折扣与续费折扣不叠加,都是在原价...

织梦DEDECMS即将授权收费和维权模式 站长应对的几个方法

这两天在站长群里看到不少有使用DEDECMS织梦程序的朋友比较着急,因为前两天有看到来自DEDECMS,我们熟悉的织梦程序官方发布的公告,将会在10月25日开始全面商业用途的使用DEDECMS内容管理程序的会采用授权收费模式,如果我们有在个人或者企业商业用途的,需要联系且得到授权才可以使用,否则后面会通过维权的方式。对于这个事情,我们可能有些站长经历过,比如字体、图片的版权。以及有一些国内的CMS...

游戏内存不能为read为你推荐
海外主机租用在哪里可以租用到外国的服务器?网站空间租赁网站空间租用费多少info域名注册淘宝上有的注册info域名十元左右,是不是真的虚拟主机推荐虚拟主机哪个好免费国外空间哪里的国外免费空间好?免费国内空间想做一个网站想找个免费的空间最好是国外的,国内的太多都是骗人的或者不稳定的。谢谢!网站域名一个网站要几个域名域名购买域名购买的流程是什么?空间域名空间域名什么意思台湾主机台湾的电脑硬件比韩国,日本,美国强?
怎样注册域名 5折 site5 美国便宜货网站 56折 gateone 12306抢票攻略 天猫双十一秒杀 web服务器架设 什么是刀片服务器 hinet 网站卫士 免费网页申请 国外视频网站有哪些 石家庄服务器托管 永久免费空间 万网空间 酸酸乳 登陆qq空间 netvigator 更多