Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2018, 13:09   #1
kat-fm
Пользователь
 
Регистрация: 23.01.2018
Сообщений: 17
По умолчанию Вывести слово в обратном порядке

Код:
public static void main(String args[]) {
        String slovo = "слово";
        char i1 = slovo.charAt(5);
        char i2 = slovo.charAt(4);
        char i3 = slovo.charAt(3);
        char i4 = slovo.charAt(2);
        char i5 = slovo.charAt(1);

        System.out.print(i1 + i2 + i3 + i4 + i5);
    }
Вроде все верно и должно слово выводиться в обратном порядке, но почему то не выводит

Последний раз редактировалось Serge_Bliznykov; 23.01.2018 в 13:14.
kat-fm вне форума Ответить с цитированием
Старый 23.01.2018, 13:25   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

нумерация в строках от нуля и собирать надо по другому.
если хотите так, как Вы написали, то:
Код:
        String slovo = "слово";
        char i1 = slovo.charAt(4);
        char i2 = slovo.charAt(3);
        char i3 = slovo.charAt(2);
        char i4 = slovo.charAt(1);
        char i5 = slovo.charAt(0);
        StringBuilder sb = new StringBuilder()
          .append(i1).append(i2).append(i3).append(i4).append(i5);
        System.out.print(sb);
но, честно говоря, это ОЧЕНЬ плохой код.
я бы предложил что-то вроде
Код:
	public static void main (String[] args) 
	{
		String slovo = "слово";
		String obratnoe = new StringBuilder(slovo).reverse().toString();
		System.out.print(obratnoe);
	}
p.s. загляните на SO - https://stackoverflow.com/questions/...string-in-java

Последний раз редактировалось Serge_Bliznykov; 23.01.2018 в 13:28.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 23.01.2018, 13:32   #3
kat-fm
Пользователь
 
Регистрация: 23.01.2018
Сообщений: 17
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
нумерация в строках от нуля и собирать надо по другому.
если хотите так, как Вы написали, то:
Код:
        String slovo = "слово";
        char i1 = slovo.charAt(4);
        char i2 = slovo.charAt(3);
        char i3 = slovo.charAt(2);
        char i4 = slovo.charAt(1);
        char i5 = slovo.charAt(0);
        StringBuilder sb = new StringBuilder()
          .append(i1).append(i2).append(i3).append(i4).append(i5);
        System.out.print(sb);
но, честно говоря, это ОЧЕНЬ плохой код.
я бы предложил что-то вроде
Код:
	public static void main (String[] args) 
	{
		String slovo = "слово";
		String obratnoe = new StringBuilder(slovo).reverse().toString();
		System.out.print(obratnoe);
	}
p.s. загляните на SO - https://stackoverflow.com/questions/...string-in-java
А у меня получился очень громоздкий? или плохо читамый?
kat-fm вне форума Ответить с цитированием
Старый 23.01.2018, 13:38   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от kat-fm Посмотреть сообщение
А у меня получился очень громоздкий? или плохо читамый?
читайте про индусский код

у Вас получилось
1) очень громоздко.
2) не универсально (если слово будет из 9 букв, что делать? а если из 15? Каждый раз переписывать программу?
3) нет проверок на ошибки. Нет, конечно, если слово жёстко прописано прямо в коде, что ошибки можно и не проверять.
но тогда непонятно, чем Ваш вариант с прописанным в коде словом лучше, чем, например, такой
Код:
String slovo = "слово";
String obratnoe = "оволс";
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести строку в обратном порядке(ассемблер) untiy16 Помощь студентам 1 25.12.2013 08:49
слово в обратном порядке (Паскаль АВС) tanya61043 Помощь студентам 1 27.05.2012 23:09
ВЫвести элементы массива в обратном порядке Кристина Н Паскаль, Turbo Pascal, PascalABC.NET 1 01.12.2011 08:25
Составить программу, которая записывает каждое слово в тексте в обратном порядке.Delphi grongost Помощь студентам 4 23.09.2010 20:23
Вывести числа в обратном порядке asmcc Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 14 20.02.2010 11:46