package com.javarush.task.task06.task0606;
/*
Чётные и нечётные циферки
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Solution {
public static int even;
public static int odd;
public static void main(String[] args) throws IOException {
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
String s = buffer.readLine();
int c = Integer.parseInt(s);
if (c < 0) c = -c;
int d = c;
int million = c / 1000000;
int hundredth = (d - million * 1000000) / 100000;
int tenth = (d - million * 1000000 - hundredth * 100000) / 10000;
int thousen = (d - million * 1000000 - hundredth * 100000 - tenth * 10000) / 1000;
int hundred = (d - million * 1000000 - hundredth * 100000 - tenth * 10000 - thousen * 1000) / 100;
int ten = (d - million * 1000000 - hundredth * 100000 - tenth * 10000 - thousen * 1000 - hundred * 100) / 10;
int one = (d - million * 1000000 - hundredth * 100000 - tenth * 10000 - thousen * 1000 - hundred * 100 - ten * 10);
if (million > 0) {//если больше миллиона
if (million % 2 == 0) {
even++;
} else odd++;
if (hundredth % 2 == 0) {
even++;
} else odd++;
if (tenth % 2 == 0) {
even++;
} else odd++;
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (hundredth>0){//если больше ста тысяч
if (hundredth % 2 == 0) {
even++;
} else odd++;
if (tenth % 2 == 0) {
even++;
} else odd++;
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (tenth>0){//если больше десяти тысяч
if (tenth % 2 == 0) {
even++;
} else odd++;
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (thousen>0){//если больше тысячи
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (hundred>0){//если больше сотни
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (ten>0){//если больше десяти
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (one>0){//если больше единицы
if (one % 2 == 0) {
even++;
} else odd++;
}else even++;
int a=even;
int b=odd;
/* System.out.println(million);
System.out.println(hundredth);
System.out.println(tenth);
System.out.println(thousen);
System.out.println(hundred);
System.out.println(ten);
System.out.println(one);
System.out.println("");
System.out.println(0%2);
*/
System.out.println("Even: "+a+" Odd:"+b);
//напишите тут ваш код
}
}
Особенно удручает, что не проходит проверку на форму вывода: "Выведенный текст должен соответствовать заданию."
Час потратил уже и так и эдак. Не хочет принимать
package com.javarush.task.task06.task0606;
/*
Чётные и нечётные циферки
*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Solution {
//static int a = 4900/1000; 2 147 483 647
public static int even;
public static int odd;
public static void main(String[] args) throws IOException {
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
String s = buffer.readLine();
int c = Integer.parseInt(s);
if (c < 0) c = -c;
int d = c;
int million = c / 1000000;
int hundredth = (d - million * 1000000) / 100000;
int tenth = (d - million * 1000000 - hundredth * 100000) / 10000;
int thousen = (d - million * 1000000 - hundredth * 100000 - tenth * 10000) / 1000;
int hundred = (d - million * 1000000 - hundredth * 100000 - tenth * 10000 - thousen * 1000) / 100;
int ten = (d - million * 1000000 - hundredth * 100000 - tenth * 10000 - thousen * 1000 - hundred * 100) / 10;
int one = (d - million * 1000000 - hundredth * 100000 - tenth * 10000 - thousen * 1000 - hundred * 100 - ten * 10);
if (million > 0) {//если больше миллиона
if (million % 2 == 0) {
even++;
} else odd++;
if (hundredth % 2 == 0) {
even++;
} else odd++;
if (tenth % 2 == 0) {
even++;
} else odd++;
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (hundredth>0){//если больше ста тысяч
if (hundredth % 2 == 0) {
even++;
} else odd++;
if (tenth % 2 == 0) {
even++;
} else odd++;
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (tenth>0){//если больше десяти тысяч
if (tenth % 2 == 0) {
even++;
} else odd++;
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (thousen>0){//если больше тысячи
if (thousen % 2 == 0) {
even++;
} else odd++;
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (hundred>0){//если больше сотни
if (hundred % 2 == 0) {
even++;
} else odd++;
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (ten>0){//если больше десяти
if (ten % 2 == 0) {
even++;
} else odd++;
if (one % 2 == 0) {
even++;
} else odd++;
} else if (one>0){//если больше единицы
if (one % 2 == 0) {
even++;
} else odd++;
}else even++;
int a=even;
int b=odd;
/* System.out.println(million);
System.out.println(hundredth);
System.out.println(tenth);
System.out.println(thousen);
System.out.println(hundred);
System.out.println(ten);
System.out.println(one);
System.out.println("");
System.out.println(0%2);
*/
System.out.println("Even: "+a+" Odd:"+b);
//напишите тут ваш код
}
}