1 / 1 / 1
Регистрация: 23.11.2015
Сообщений: 90
|
|
1 | |
Создать массив, который одинаково читается как слева направо, так и справа налево (Палиндром)23.11.2015, 21:18. Показов 6338. Ответов 14
Метки нет (Все метки)
Подскажите алгоритм работы задачи. Нужно создать массив, который одинаково читается как слева направо, так и справа налево.
0
|
23.11.2015, 21:18 | |
Ответы с готовыми решениями:
14
Читается ли строка одинаково справа налево и слева направо (палиндром)? Палиндромом называется строка, которая одинаково читается как слева направо, так и справа налево Написать программу, которая будет составлять число, которое читается одинаково как слева направо, так и справа налево Дан массив А из k символов. Определить, симметричен ли он, т.е. читается ли он одинаково слева направо и справа налево. |
3851 / 3196 / 1343
Регистрация: 01.08.2012
Сообщений: 10,820
|
||||||
23.11.2015, 21:28 | 2 | |||||
2
|
2509 / 1130 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
|
||||||
23.11.2015, 23:07 | 4 | |||||
а чего не
Добавлено через 1 минуту а чем ты его заполнять собрался? Заполняй половину массива, вторую половину дублируй зеркально. Получишь то, что тебе надо.
0
|
GoDr
|
23.11.2015, 23:08
#5
|
0
|
1 / 1 / 1
Регистрация: 23.11.2015
Сообщений: 90
|
|
24.11.2015, 07:54 [ТС] | 6 |
я не хочу создавать тупо массив палиндром)) я хочу чтобы он через цикл заполнялся. Например поменял размер массива и он все равно выводит его как палиндром. Вот как записать чтобы находилась середина массива и от нее заполнялась симметрия не соображу.
0
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|||||||||||
24.11.2015, 12:56 | 7 | ||||||||||
Это условие задания? Если не особо мудрствовать, то можно так:
0
|
1 / 1 / 1
Регистрация: 23.11.2015
Сообщений: 90
|
|
24.11.2015, 13:40 [ТС] | 8 |
Через функцию? интересный примерчик. Спасибо буду изучать дальше)
0
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
24.11.2015, 13:44 | 9 |
А через какое место вы хотели? Можно и без функции. Я просто для удобства так оформил.
0
|
1 / 1 / 1
Регистрация: 23.11.2015
Сообщений: 90
|
|
24.11.2015, 14:12 [ТС] | 10 |
мне интересно можно ли как нибудь через цикл это создать?
Добавлено через 2 минуты мне интересно можно ли как нибудь через цикл это создать?
0
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
24.11.2015, 14:15 | 11 |
А for внутри функции - это разве не цикл? И разве не в нём формируется массив?
0
|
1 / 1 / 1
Регистрация: 23.11.2015
Сообщений: 90
|
|
24.11.2015, 14:31 [ТС] | 12 |
Согласен))
Слушай, а не подскажешь зачем $is_odd = $n % 2; и $output[] = $i < $half ? ++$k : ($is_odd ? --$k : $k--); ??? С остальным вроде понятно. Добавлено через 6 минут $output - это массив пустой. Так? И если $i меньше середины массива то идет заполнение по возрастанию. А вот дальше я не пойму что то. И зачем $is_odd нужно.
0
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
24.11.2015, 14:48 | 13 |
$is_odd - определяем нечетное число. Если нечетное, то префиксный декремент (--$k), а если четное, то постфиксный декремент ($k--).
Теперь "на пальцах". Есть число 5, "середина" - 3. Итерации: 1. ++$k, ($k == 1) 2. ++$k, ($k == 2) 3. ++$k, ($k == 3) Экватор. 5 нечетное, поэтому $k нужно сначала уменьшить на единицу и только потом вернуть результат. $k у нас пока 3, --$k - будет 2. 4. --$k, ($k == 2) 5. --$k, ($k == 1) Теперь, если число четное - 4, середина - 2 1. ++$k, ($k == 1) 2. ++$k, ($k == 2) Экватор. Если бы мы, как с нечетным, сначала уменьшили на единицу, то результат был бы такой: 3. --$k, ($k == 1) 4. --$k, ($k == 0) Поэтому, для четных используем постфиксный декремент, т.е. сначала вернуть результат, а потом увеличить на единицу. В итоге, последние две итерации, выглядят так: 3. $k--, ($k == 2) 4. $k--, ($k == 1) P.S. Ну, вроде бы даже мой кот понял
0
|
1 / 1 / 1
Регистрация: 23.11.2015
Сообщений: 90
|
|
24.11.2015, 14:59 [ТС] | 14 |
Спасибо большое)) я понимал что надо массив пополам делить, но как сделать не втыкал никак. Спасибо за помощь.
Посоветуй литературу по php интересную. Хочу тоже научиться так задачки щелкать
0
|
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
|
|
24.11.2015, 15:08 | 15 |
Я только одной литературой пользуюсь - Официальное руководство по PHP.
Литература тут не особо поможет, если логическое мышление не развито (ИМХО).
0
|
24.11.2015, 15:08 | |
24.11.2015, 15:08 | |
Помогаю со студенческими работами здесь
15
Одинаково ли список читается слева направо и справа налево? Проверить читается ли число одинаково слева направо и справа налево? Данное четырехзначное число читается одинаково слева направо и справа налево Как написать код для данной задачи - четырехзначное число читается одинаково слева направо и справа налево? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |