Что я пробовал: сравнивать цвета через "equals", писать 10 вместо создания переменной screenHeight/screenWidth, в объявлении циклов просто вставлять геттеры вместо переменных или числовых значений. И всё это в разных комбинациях, но ничего валидатор не принимал (хотя программа на первый взгляд работает нормально).
package com.javarush.games.minigames.mini04;
import com.javarush.engine.cell.Color;
import com.javarush.engine.cell.Game;
/*
Считаем клетки
*/
public class CountGame extends Game {
@Override
public void initialize() {
setScreenSize(10, 10);
showGrid(false);
for (int j = 0; j < 50; j++) {
int x = getRandomNumber(10);
int y = getRandomNumber(10);
setCellColor(x, y, Color.GREEN);
setCellNumber(x, y, getRandomNumber(100));
}
showResult();
}
public void showResult() {
int greenCellCount = 0;
int sumOfGreenCellNumbers = 0;
int screenHeight = getScreenHeight();
int screenWidth = getScreenWidth();
for (int i = 0; i < screenHeight; i++) {
for (int j = 0; j < screenWidth; j++) {
greenCellCount += getCellColor(i, j) == Color.GREEN ? 1 : 0;
sumOfGreenCellNumbers += getCellColor(i, j) == Color.GREEN ? getCellNumber(i, j) : 0;
}
}
printSum(sumOfGreenCellNumbers);
printCountOfGreenCells(greenCellCount);
}
private void printSum(int sum) {
System.out.println("Сумма всех чисел = " + sum);
}
private void printCountOfGreenCells(int count) {
System.out.println("Количество зеленых клеток = " + count);
}
}