java basic类似的地方_郁闷啊~!有没有会BASIC和JAVA的!帮帮忙呀!

郁闷啊~!有没有会BASIC和JAVA的!帮帮忙呀!

最近挺郁闷!!刚找到工作!经理让我一段BASIC代码改写成JAVA程序,我没学过BASIC!麻烦高手们帮忙把下面的程序改成JAVA程序!不用什么窗体界面,只要在DOS下运行和这程序一样的效果就可以!!

QQ:262993424

MSN:huangshuo_lw@hotmail.com

10 CLS

20 '******************************************************

30 '

40 ' 单一肥料施用效应方程计算程序

50 ' CREG1

60 '******************************************************

70 PRINT " 单一肥料施用效应方程计算程序"

80 PRINT " CREG1 "

90 PRINT :PRINT

100 DIM X(40,2),A(2,2),L(2),B(2),AB(2),AC(2),C(2),FMAX(2),FMIN(2),A$(12),E(40,6),D$(30),F(6),COST(3)

110 INPUT " 用哪种模型计算 ? 用多项式请输入 Q 用平方根请输入 R ";MODEL$

120 INPUT " 试验结果是否同时打印 (Y/N) ";PR$

130 INPUT " 是否继续算最佳施肥量 (Y/N) ";PO$

140 IF LEFT$(PO$,1)="N" OR LEFT$(PO$,1)="n" THEN 190

150 INPUT " 请键入输出文件名 : ";OTF$

160 OPEN "O",#2,OTF$

170 INPUT " 请键入谷物价格 (元/公斤) ";VALU

180 INPUT " 请键入肥料价格 (元/公斤) ";COST(1)

190 INPUT " 输入文件名 ( K 表示键盘输入)? "; IPF$

200 DEFDBL A : NU=1

210 IF LEFT$(IPF$,1)="K" OR LEFT$(IPF$,1)="k" THEN 290

220 OPEN"I",1,IPF$

230 ON ERROR GOTO 980 : GOSUB 1000

240 N=N-1 : PRINT " 计 算 第 ";NU;" 个 试 验 结 果"

250 FOR I=0 TO N

260 PRINT X(I,0),X(I,1):X(I,2)=X(I,1)

270 X(I,1)=X(I,0)*X(I,0)

280 NEXT I : GOTO 420

290 INPUT " 试验地点 : ";SITE$

300 INPUT " 试验编号 : ";NUMB$

310 T1$= "施N量" :T2$="产 量"

320 INPUT " 因素 1 是否是 N 素 ? 是,请按 Y 不是,请输入 :";TN$

330 IF LEFT$(TN$,1)="Y" OR LEFT$(TN$,1)="y" THEN 340 ELSE T1$=TN$

340 INPUT " 试验结果是否是产量 ? 是,请按 Y 不是,请输入 :";TK$

350 IF LEFT$(TK$,1)="Y" OR LEFT$(TK$,1)="y" THEN 360 ELSE T2$=TK$

360 INPUT " 试验的处理数 :";N:N=N-1

370 FOR I=0 TO N

380 PRINT " 处 理 (";I+1;") ";T1$;:INPUT X(I,0)

390 PRINT " 处 理 (";I+1;") ";T2$;:INPUT X(I,2)

400 X(I,1)=X(I,0)*X(I,0)

410 NEXT I

420 FMAX(1)=0 : FMIN(1)=100 : FOR I=0 TO N

430 IF X(I,0)>FMAX(1) THEN FMAX(1)=X(I,0)

440 IF X(I,0)

450 NEXT I

460 IF MODEL$="Q" OR MODEL$="q" GOTO 480

470 FOR I=0 TO N : FOR J=0 TO 1 : X(I,J)=SQR(X(I,J)) : NEXT J : NEXT I

480 FOR I=0 TO 2 : L(I)=0 : FOR J=0 TO 2 : A(I,J)=0 :NEXT J : NEXT I

490 FOR K=0 TO N : FOR I=0 TO 2 : L(I)=L(I)+X(K,I)

500 FOR J=0 TO I : A(J,I)=A(J,I)+X(K,I)*X(K,J) : NEXT J : NEXT I : NEXT K

510 FOR I=0 TO 2 : L(I)=L(I)/(N+1) :NEXT I

520 FOR I=1 TO 2 : FOR J=0 TO I-1 : A(I,J)=A(J,I) : NEXT J : NEXT I

530 FOR I=0 TO 2 : FOR J=0 TO 2

540 A(I,J)=(A(I,J)-(N+1)*L(I)*L(J))/N : NEXT J : NEXT I

550 FOR I=0 TO 2 : C(I)=A(I,I) : NEXT I

560 FOR I=0 TO 2 : FOR J=0 TO 2 : A(I,J)=A(I,J)/SQR(C(I)*C(J)) : NEXT J : NEXT I

570 FOR I=0 TO 1 : AC(I)=0

580 FOR J=0 TO 1 : AC(I)=AC(I)+A(I,J) : NEXT J

590 A(I,I)=A(I,I)-1 : NEXT I

600 FOR K=0 TO 1 : FOR J=0 TO 1 : AB(J)=A(K,J) : A(K,J)=0 : NEXT J

610 A(K,K)=1 : W=AB(K)+1

620 IF ABS(W)<.000001 then end>

630 FOR I=0 TO 1 : Y=A(I,K)/W : FOR J=0 TO 1

640 A(I,J)=A(I,J)-AB(J)*Y :NEXT J : NEXT I : NEXT K

650 FOR J=0 TO 1 : C=0 : FOR I=0 TO 1 : C=C+A(I,J)*A(I,2)

660 NEXT I : B(J+1)=C*SQR(C(2)/C(J)) : NEXT J

670 C=0 : FOR I=0 TO 1 : C=C+B(I+1)*L(I) : NEXT I

680 B(0)=L(2)-C : LPRINT " " : LPRINT " "

690 LPRINT "试验地点 :";SITE$;" 试验编号 :";NUMB$

700 IF LEFT$(PR$,1)="N" OR LEFT$(PR$,1)="n" THEN 750

710 LPRINT "处理编号 ";T1$;" ";T2$

720 IF MODEL$="R" OR MODEL$="r" GOTO 740

730 FOR I=0 TO N :LPRINT USING "########";I+1;:LPRINT USING "######.##";X(I,0);X(I,2):NEXT I :GOTO 750

740 FOR I=0 TO N :LPRINT USING "########";I+1;:LPRINT USING "######.##";X(I,0)^2;X(I,2):NEXT I :GOTO 750

750 IF LEFT$(PR$,1)="N" OR LEFT$(PR$,1)="n" THEN 770

760 LPRINT "施肥效应方程 Y=B0+B1*X1+B2*X1*X1" :GOTO 780

770 LPRINT "施肥效应方程 Y=B0+B1*SQR(X1)+B2*X1 "

780 LPRINT "回 归 系 数 :"

790 FOR I=0 TO 2 : LPRINT " B("+STR$(I)+")="; : LPRINT USING "#####.########";B(I),: NEXT I : LPRINT

800 S=C(2)*N : C=0

810 C=0 : FOR I=0 TO 1

820 C=C+B(I+1)*A(I,2)*N*SQR (C(2)*C(I))

830 NEXT I : Q=S-C

840 R=SQR(C/S) : ZR=SQR(Q/(N-2)) : F=(C/2)/(Q/(N-2))

850 D1=2 :D2=N-2 : VR=F : GOSUB 1100

860 IF PR<.5 then f else if pr>

870 LPRINT " " : LPRINT " 多元回归方差分析表"

880 LPRINT "来源 自由度 平方和 方差 F检验值 "

890 LPRINT "回归 ";:LPRINT USING"####";2;:LPRINT " ";:LPRINT USING "########.##";C;C/2;F;:LPRINT F$

900 LPRINT "剩余 ";:LPRINT USING"####";N-2;:LPRINT " ";:LPRINT USING "########.##";Q;Q/(N-2)

910 LPRINT "总计 ";:LPRINT USING"####";N;:LPRINT " ";:LPRINT USING "########.##";S

920 LPRINT " *置信度90%显著 **置信度95%显著"

930 LPRINT "复相关系数 R= ";R;" 回归值标准差 = ";ZR

940 IF LEFT$(PO$,1)="N" OR LEFT$(PO$,1)="n" THEN 970

950 WRITE #2,SITE$,NUMB$,VALU,T1$,COST(1),FMAX(1),FMIN(1)

960 FOR I=0 TO 2 : PRINT #2,B(I) : NEXT I

970 NU=NU+1 : GOTO 230

980 CLOSE

990 END

1000 INPUT #1,SITE$,NUMB$,TY

1010 FOR I=1 TO 6 :INPUT #1,F(I) :NEXT I

1020 FOR I=7 TO 12 :INPUT #1,A$(I) :NEXT I

1030 FOR I=0 TO F(5)-1 :FOR J=0 TO F(3) :INPUT #1,X(I,J) :NEXT J:NEXT I

1040 N=F(5) : T1$=A$(8) : T2$=A$(12)

1090 CLOSE #1 : RETURN

1100 PR=1

1110 IF (D1*D2*VR)<0 THEN PRINT "ERROR":STOP

1120 IF VR-1<0 GOTO 1140

1130 A=D1 :B=D2 :F=VR :GOTO 1150

1140 A=D2:B=D1:F=1/VR

1150 AA=2/(9*A) :BB=2/(9*B)

1160 Z=ABS (((1-BB)*F^.333333-1+AA)/SQR (BB*F^.666667+AA))

1170 IF B>=4 GOTO 1190

1180 Z=Z*(1+.08*Z^4/B^3)

1190 PR=.5/(1+Z*(.196854+Z*(.115194+Z*(.000344+Z*.019527))))^4

1200 IF (VR-1)>=0 GOTO 1220

1210 PR=1-PR

1220 SG=PR

1230 RETURN

PR=.5/(1+Z*(.196854+Z*(.115194+Z*(.000344+Z*.019527))))^4

1200 IF (VR-1)>=0 GOTO 1220

1210----------------解决方案--------------------------------------------------------

楼上既然会JAVA了,那么花上半个小时看看BASIC的基本语法应该就可以看懂这些BASIC代码了。

看一段代码只要对语法基本了解就可以搞定了,何况是BASIC~

----------------解决方案--------------------------------------------------------

虽然不会basic

但感觉应该挺简单的吧 用java来写这些真是不合适哦 用c也许效率更高些

----------------解决方案--------------------------------------------------------

应该是一些基本的if,for加上写文件的操作。。

如果你会VB应该很简单的了~

----------------解决方案--------------------------------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 话管理: SQLAlchemy 使用话(Session)来管理对象的持久化状态。 话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 话管理: SQLAlchemy 使用话(Session)来管理对象的持久化状态。 话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
GeoPandas是一个开源的Python库,旨在简化地理空间数据的处理和分析。它结合了Pandas和Shapely的能力,为Python用户提供了一个强大而灵活的工具来处理地理空间数据。以下是关于GeoPandas的详细介绍: 一、GeoPandas的基本概念 1. 定义 GeoPandas是建立在Pandas和Shapely之上的一个Python库,用于处理和分析地理空间数据。 它扩展了Pandas的DataFrame和Series数据结构,允许在其中存储和操作地理空间几何图形。 2. 核心数据结构 GeoDataFrame:GeoPandas的核心数据结构,是Pandas DataFrame的扩展。它包含一个或多个列,其中至少一列是几何列(geometry column),用于存储地理空间几何图形(如点、线、多边形等)。 GeoSeries:GeoPandas中的另一个重要数据结构,类似于Pandas的Series,但用于存储几何图形序列。 二、GeoPandas的功能特性 1. 读取和写入多种地理空间数据格式 GeoPandas支持读取和写入多种常见的地理空间数据格式,包括Shapefile、GeoJSON、PostGIS、KML等。这使得用户可以轻松地从各种数据源中加载地理空间数据,并将处理后的数据保存为所需的格式。 2. 地理空间几何图形的创建、编辑和分析 GeoPandas允许用户创建、编辑和分析地理空间几何图形,包括点、线、多边形等。它提供了丰富的空间操作函数,如缓冲区分析、交集、并集、差集等,使得用户可以方便地进行地理空间数据分析。 3. 数据可视化 GeoPandas内置了数据可视化功能,可以绘制地理空间数据的地图。用户可以使用matplotlib等库来进一步定制地图的样式和布局。 4. 空间连接和空间索引 GeoPandas支持空间连接操作,可以将两个GeoDataFrame按照空间关系(如相交、包含等)进行连接。此外,它还支持空间索引,可以提高地理空间数据查询的效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值