Top.Mail.Ru
Ответы
Аватар пользователя
10лет
Изменено

Программирование JAVA StringBuilder метод Insert()

Не разбираюсь совсем.

Условия задачи: Дано натуральное число. Получить строку, в которой тройки цифр этого числа разделены пробелом,
начиная с правого конца. Например, число 1234567 преобразуется в 1 234 567.

Написала код:
package JavaApplication17;

import java.util.Scanner;

public class JavaApplication17 {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in, "cp1251");
System.out.println("Введите число");
StringBuilder s = new StringBuilder(sc.nextLine());
int n = s.length();
for (int i = 0; i < s.length(); i++) {
s.insert(n-2, " ");
n--;
}
}

System.out.println(s);
}

***
ругается на "System.out.println(s);" почему нельзя вывести объект s?

По дате
По рейтингу
Аватар пользователя
Ученик
10лет

Не там вывод. На скобку выше поднимите вывод результата
}
System.out.println(s);
}
}

Аватар пользователя
10лет

String f(String s){
if(s.length()<=3)
return s;
else
return f(s.substring(0,s.length()-3))+" "+s.substring(s.length()-3);
}

Аватар пользователя
10лет

Вот наклепал. http://ideone.com/6XNLK3

Аватар пользователя
10лет

методом printf производится форматирование вывода, там нужна передать соответствуещие аргументы. Книга Васильев А Н стр 249