package com.javarush.task.task06.task0606;
import java.io.*;
import java.util.Scanner;
/*
Чётные и нечётные циферки
*/
public class Solution {
public static int even;
public static int odd;
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader((new InputStreamReader(System.in)));
String s = reader.readLine();
int n = Integer.parseInt(s);
int a;
int length = s.length();
for(int i=0; i<length; i++){
a = s.charAt(i)%10;// Ребят почему здесь %10? Можно же просто a = s.charAt(i) - т.е. i-ый символ в строке.
if(a%2 == 0){
even++;
}
else if(a%2!=0){
odd++;
}
}
System.out.println("Even: "+even+ " Odd: "+odd);
}
}
DarkTemplar
9 уровень
Я хоть и решил но в одном месте терзает сомнение.
Обсуждается
%10
ни холодно, ни жарко: на деление попадает в любом случае число меньше 10 и оно же уходит в остаток. Так же абсолютна бессмысленна строкаint n = Integer.parseInt(s);
- n нигде не используется. И условие после elseif(a%2!=0)
излишне.