Email or username:

Password:

Forgot your password?
stressmanagement

У меня уже голова кругом идет. Нужна помощь.

Нужно создать функцию, которая берет текстовое значение и переделывает его в формат "лесенки", типа "ПрИмЕрНо тАк". При этом мне нужно как-то применить в этом оператор остатка от деления %. Ничего не могу придумать, как это сделать.

Можно было бы просто брать буквы по очереди индекса, проверять на чёт/нечёт, затем чётные в toUpperCase(), а нечётные в toLowerCase(), пока индекс не достигнет text.length, но мне нужно куда-то применить остаток от деления

14 comments
mcstar

@omgitsmishenka это про заданию надо остаток от деления использовать?
Ну так для проверки на чёт и нечет используй. 🙂

stressmanagement

@mcstar вроде не обязательно, но в тексте задания говорится, что оно всё же понадобится.

Недочитал текст задания - "для определения n-ного элемента (буквы) понадобится остаток от деления. Я еще не совсем понимаю, как работает этот остаток - в мою гуманитарскую голову принцип работы вообще не лезет

mcstar

@omgitsmishenka ну если делится на цело, то остаток будет ноль. Нет нет, то это остаток от деления.
Например: 5%2 =1. Потому что на 2 можно поделить только 4. Соответственно 5-4=1.
А, вот 6%2 уже будет 0. Так как шесть делиться на 2.

stressmanagement

@mcstar а как это применить для определения того, какую букву переводить в верхний регистр, а какую в нижний? Хоть убей никакой подходящей закономерности не вижу

mcstar

@omgitsmishenka для определения честного ии нечётного.
Делим индекс буквы в строке на %2. Если 0, значит переводим в верхний регистр, если не ноль - в нижний. Ну или как там надо..
Целочисленное деление - это классика для определения чётности

stressmanagement

@mcstar ага, недавно был урок по определению четности и нечетности, совсем из головы вылетело.

Наверно к индексу еще надо прибавить единицу, чтобы начиналось не с нуля

stressmanagement

@mcstar да не, туплю. С определением чет/нечет разобрался, собираю все остальное

Ворон
Берешь индексы, делишь на 2, если остаток 0, то это четное, если больше 0, нечетное, дальше преобразуешь в upper или lower.
D:\side\

@omgitsmishenka он там действительно не очень-то нужен. Достаточно булеана, который каждую итерацию инвертировать.

stressmanagement

@dside мне теперь нужно понять, как переводить в верхний регистр буквы через n-ное количество, используя инкремент

D:\side\

@omgitsmishenka в смысле, не каждый второй, а каждый N-ый? Ну, по идее тот же метод, что тебе уже рассказывали, остаток от деления равный нулю, просто от деления не на 2, а на N.

Инкремент нужен только если вместо индекса в строке использовать отдельную переменную. Но зачем?

stressmanagement

@dside тема урока "Инкремент и декремент". В обсуждении пишут, что решили задачу, вставив инкремент повсюду. Но поскольку я еще не решил, их варианты я глянуть не могу(

Go Up