我在理解如何绕过此任务的概念时遇到困难,有人能帮助我吗?

thtygnil  于 2021-08-20  发布在  Java
关注(0)|答案(0)|浏览(146)

我已经看了大约30分钟了,我找不到一个方法来解决这个问题。
如果数字控制系统的极点位于单位圆内,则认为该系统是稳定的。极点是指控制系统传递函数中分母的根。另一方面,单位圆是复平面中的圆,其中心位于原点,半径为一(1)。如果传递函数的分母为,az^2+bz+c,则在用户输入系数后确定其是否为stalbe。您的程序应该显示根(矩形或极形,取决于您的偏好)和稳定性条件。假设系数是实数。
这是我到目前为止所做的。。。

import java.text.DecimalFormat;
import java.util.Scanner;

public static void main(String[] args) {
        // Problem # 1
        Scanner scan = new Scanner(System.in);
        DecimalFormat df = new DecimalFormat("###.##");
        int a,b,c;
        double d;

        System.out.println("Given the equation: ax^2 + bx + c");
        System.out.print("Input value for a: ");
        a = scan.nextInt();
        System.out.print("Input value for b: ");
        b = scan.nextInt();
        System.out.print("Input value for c: ");
        c = scan.nextInt();
        scan.close();

        d = ((Math.pow(b, 2))-(4*a*c));
        double real = (-b) / (2*a);
        double imaginary = Math.sqrt(-d)/(2*a);

        System.out.print("The complex conjugates are " + df.format(real) + " + " + df.format(imaginary) +"i");
        System.out.print(" and " + df.format(real) + " - " + df.format(imaginary) +"i");
        if(d <= 0) {

                System.out.println("\nThe Stability condition is stable");
                }
                else {

                    System.out.println("\nThe Stability Condition is unstable");
        }
        int zero=0,neg=0,pos=0;
        if (a < 0 ) {
            neg = neg + 1;
            }
            else if (a> 0 ) {
                pos = pos + 1;
            }
            else if (a == 0) {
                zero = zero + 1;
            }
        if ( b < 0 ) {
            neg = neg + 1;
            }
            else if ( b > 0 ) {
                pos = pos + 1;
            }
            else if (b ==0){
                zero = zero + 1;
            }
        if ( c < 0 ) {
            neg = neg + 1;
            }
            else if ( c > 0 ) {
                pos = pos + 1;
            }
            else if (c ==0){
                zero = zero + 1;
            }
        System.out.println("the number of zero is " + zero);
        System.out.println("the number of Positive is " + pos);
        System.out.println("the number of Negative is " + neg);

            }

        }

注意:我对这方面还不太熟悉,如果有人能帮助一个新手,那将是一个很大的帮助:))

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题