Какую тему прочитать, чтобы понять, что эту задачку можно сделать другим способом?
Попробовал написать код, которая выводит слово "Hello" как на картинке.
Посмотрев на "чудо-код", понимаю, что можно эту же задачу как то лаконично расписать.
Так вот, какую тему прочитать, чтобы понять, что на экран я это же слово, могу вывести другим способом?
public class Hello {
public static void main(String[] args) {
System.out.println("*" + " *" + " *****" + " *" + " *" + " ***");
System.out.println("*" + " *" + " *" + " *" + " *" + " *" + " *");
System.out.println("******" + " *****" + " *" + " *" + " *" + " *");
System.out.println("*" + " *" + " *" + " *" + " *" + " *" + " *");
System.out.println("*" + " *" + " *****" + " *****" + " *****" + " ***");
}
}
Ответы (1 шт):
Автор решения: Alexander Chernin
→ Ссылка
Это приходит с опытом, то есть ответом является - надо больше программировать и читать, читать и программировать.
Изучить работу с циклами, со строками, с массивами, с разными видами делений и так далее.
И тогда вы сможете решить эту задачу, например, так:
public class HelloWorld {
public static void main(String[] args) {
String basis = "* ";
String s = "12114114144041231414121012114141414";
for(int i = 0; i < s.length(); i++) {
char ch = basis.charAt(i % 2);
int count = Character.getNumericValue( s.charAt(i) );
if( count == 0 ) {
System.out.println();
} else {
for(int c = 0; c < count; c++) {
System.out.print(ch);
}
}
}
}
}
Для разных задач нужен разный опыт, иногда хватит и пары прочитанных глав в каком-нибудь простеньком учебнике.
