我正在创建一个Android应用程序,这是我的最后一年项目。我实际上是电气工程师。但我有编写程序的知识。在电气方面有一个问题(总和)名为ADMITTANCE BUS MATRIX。对于这个问题,我已经完成了JAVA PROGRAM完全。我知道在ANDROID中实现相同的JAVA PROGRAM是不可能的。那么如何在ANDROID中实现我的程序。 请帮帮我!!。我只有2天时间完成这个...下面是我的代码,它也使用用户定义的库名为" Flanagan" ...如果有人不能理解我的问题,请回复这里!!
import java.util.Scanner;
import flanagan.complex.Complex;
import flanagan.io.PrintToScreen;
import flanagan.math.*;
import flanagan.complex.ComplexMatrix;
public class Admittance
{
public static void main(String[] args)
{
int r,c=4,x=1;
Scanner in=new Scanner(System.in);
System.out.println("Enter the numbers of linedata:::");
r=in.nextInt();
double[][] ydata=new double[r][c];
System.out.println("Enter LineData:::");
for(int i=0;i<r;i++)
for(int j=0;j<c;j++)
ydata[i][j]=in.nextDouble();
//Storing From bus and To bus
double[][] fb=new double[r][x];
double[][] tb=new double[r][x];
for(int i=0;i<r;i++)
{
for(int j=0;j<x;j++)
{
fb[i][j]=ydata[i][j];
tb[i][j]=ydata[i][j+1];
}
}
double m[]=new double[1];
Matrix ff=new Matrix(fb);
m=ff.maximumElement();
System.out.println("The maxima of from bus is:::");
System.out.println(+m[0]);
double m1[]=new double[3];
Matrix tt=new Matrix(tb);
m1=tt.maximumElement();
System.out.println("The maxima of to bus is:::");
System.out.println(+m1[0]);
int ft;
int mb;
ft=(int)m[0];
int dt;
dt=(int)m1[0];
if(ft>dt)
mb=ft;
else
mb=dt;
System.out.println("The maxmum no. of bus is:::");
System.out.print(+mb);
Complex[][] aa = Complex.twoDarray(r,x);
Complex[][] ab = Complex.twoDarray(r,x);
Complex[][] zbus = Complex.twoDarray(r,x);
//Impedance
for ( int e = 0 ; e < r ; e++ )
{
for ( int d = 0 ; d < x ; d++ )
{
aa[e][d] = new Complex(ydata[e][2], ydata[e][3]);
}
}
System.out.println();
PrintToScreen.print(aa);
//Admittance
for ( int e = 0 ; e < r ; e++ )
{
for ( int d = 0 ; d < x ; d++ )
{
ab[e][d] = aa[e][d].inverse();
}
}
PrintToScreen.print(ab);
Complex[][] ybus = Complex.twoDarray(mb,mb);
PrintToScreen.print(ybus);
int[][] ffb=new int[r][x];
int[][] ttb=new int[r][x];
for(int i=0;i<r;i++)
for(int j=0;j<x;j++)
{
ffb[i][j]=(int)fb[i][j];
ttb[i][j]=(int)tb[i][j];
}
for(int i=0;i<r;i++)
{
for(int j=0;j<x;j++)
{
System.out.print(+ffb[i][j]);
}
System.out.println();
}
for(int i=0;i<r;i++)
{
for(int j=0;j<x;j++)
{
System.out.print(+ttb[i][j]);
}
System.out.println();
}
//Off Diagonal
for(int k=0;k<r;k++)
if(ffb[k][0]>0&&ttb[k][0]>0)
{
ybus[ffb[k][0]-1][ttb[k][0]-1]=Complex.plus(ybus[ffb[k][0]-1][ttb[k] [0]-1],ab[k][0].negate());
ybus[ttb[k][0]-1][ffb[k][0]-1]=ybus[ffb[k][0]-1][ttb[k][0]-1];
}
//Main diagonal
for(int i=0;i<mb;i++)
for(int k=0;k<r;k++)
if(((ffb[k][0]-1)==i)||((ttb[k][0]-1)==i))
ybus[i][i]=Complex.plus(ybus[i][i],ab[k][0]);
System.out.println();
System.out.println("The Admittance Bus of given data is : \n");
PrintToScreen.print(ybus);
ComplexMatrix yb = new ComplexMatrix(ybus);
ComplexMatrix zb = new ComplexMatrix(mb,mb);
zb=yb.inverse();
zbus=zb.getArrayCopy();
System.out.println();
System.out.println("The Impedance Bus of given data is : \n ");
PrintToScreen.print(zbus);
in.close();
}
}
答案 0 :(得分:2)
鉴于大多数Android应用程序都是用Java编写的,您实际上并不需要做太多工作。在大多数情况下,您只需下载并安装Android SDK(如果您使用Linux,甚至还有一个插件),然后创建Activity
。
此外,您可以查看Android's tutorial页面以获取基本应用程序,并基本上创建一个EditText
字段,以及TextView
来显示结果。您可以在前面提到的Android documentation
答案 1 :(得分:0)
您可以尝试http://jbed.en.malavida.com/android/。
它是一个在Android上运行java应用程序的应用程序。