保存局部变量 - Java

时间:2015-03-29 01:19:58

标签: variables methods save local numerical

这是一个程序,用于确定数字序列是否与数学公式a [n + 1] = a [n] * b + c匹配,适用于整数范围内b和c的任意组合-9 :9

import java.util.Scanner;


public class Nastaord{

    private static int[] lasTal(){
        int[] tallista; //Det vi ska ha talföljden i

        int i = 0;  //räknare för tallista
        while(true){
            System.out.print("Ange tal, eller tryck enter om du är klar: ");
            int nytt_tal = scanner.nextLine();
            if(nytt_tal == ""){
                return tallista;}
            tallista[i] = nytt_tal;
            i++;
        }

    }
    private static boolean bcFinns(int[] tallista){
        boolean OK = true;
        for(int b = -9; b <= 9; b++){
            for(int c = -9; c <= 9; c++){
                for(int i = tallista.length; i > 0;i--){
                    OK = tallista[i] == tallista[i-1]*b+c;
                    if(OK == false){
                        break;}

                    }
                if(OK == true){
                    public int b = b;
                    public int c = c;
                    return true;}
                }
            }
        return false;
        }

    public static void main(String[] args){
        boolean OK = bcFinns(lasTal());
        if (OK == true){
            System.out.print(tallista[tallista.length-1]*b+c);
        }
        if (OK == false){
            System.out.print("No");
        }
    }
}

该计划在主要层面上有效。唯一的问题是,一旦找到序列,我就不知道如何为序列保存正确的数字b和c。我尝试创建两个公共变量,以便我可以在main方法中访问它们,但是我收到以下错误:

Nastaord.java:30: error: illegal start of expression
                    public int b = b;
                    ^
Nastaord.java:31: error: illegal start of expression
                    public int c = c;

你能帮助我以某种方式保存这些变量b和c吗?

1 个答案:

答案 0 :(得分:0)

public class Nastaord{
    public static int bFinal,cFinal;

然后是:

bFinal = b;
cFinal = c;