задание про масссивы в java

Scanner in  = new Scanner(System.in);
int[] A = new int[20];
int[] B = new int[20];

for(int i = 0; i < 20; i++)
{
    A[i] = 0;
    B[i] = 0;
}

System.out.println("enter small let");
char Small = in.next().charAt(0);
System.out.println("enter big let");
char Big = in.next().charAt(0);

for(int i = 0; i < 20; i++)
{
    int sum = A[i] + Big;
    int sum2 = B[i] + Small;
    A[i] = A[i] + sum;
    B[i] = B[i] + sum2;
    if(A[i] > B[i])
        System.out.println("the sum of the large letters is greater than the small ones, so print out the large ones " +A[i]);

задание-Напишите программу, которая принимает массив символов (char) размером 20. Программа выведет Big, если общее количество заглавных букв больше, чем общее количество строчных букв.

Программа напечатает «Маленький», если общее количество строчных букв больше, чем общее количество прописных букв.

Программа выведет “the sum of the large letters is greater than the small ones, so print out the large ones» Можете показать пожалуйста или исправить ошибки я не могу понять почему не работает


Ответы (1 шт):

Автор решения: Aboba

Вот нормальное решение на твою задачу:

public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        char[] arr = new char[20];
        int uppercaseCount = 0;
        int lowercaseCount = 0;

        System.out.println("Введите массив символов размером 20:");
        for (int i = 0; i < arr.length; i++) {
            arr[i] = scanner.next().charAt(0);
            if (Character.isUpperCase(arr[i])) {
                uppercaseCount++;
            } else if (Character.isLowerCase(arr[i])) {
                lowercaseCount++;
            }
        }

        if (uppercaseCount > lowercaseCount) {
            System.out.println("Big");
        } else {
            System.out.println("Small");
        }
    } 
→ Ссылка