15.07.2010, 05:53 | |
Ответы с готовыми решениями:
1272
Элементарные программы, для лучшего понимания языка... Задачи для тренировки и лучшего понимания языка Литература для лучшего понимания сути программирования Набор задачь для тренировки и улучшения понимания программирования |
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||||||||||||||||||||||||||||||
16.07.2010, 19:03 | 21 | ||||||||||||||||||||||||||||||
Сообщение было отмечено как решение
Решение
Lavroff, Быстро вы сдались ...
Ну так и быть, попробую обьяснить. Самый лучший способ понять результат - это последовательно, строчка за строчкой прокрутить её у себя в голове. Итак, поехали... Первое и второе действия - тривиальны.
Массивы инициализированы текстом. Третие действие:
Для наглядности убираем из buf1 два символа и видим, что ptr1 указывает на первую букву "l" в слове "Hello". Четвёртое действие аналогично третьему:
Пятое действие:
Копировать в ptr1 (который указывает на первую букву "l" в слове "Hello") из buf2 (buf2 мы не трогали, потому там есть слово "World"). Следовательно, в ptr1 у нас будет просто слово "World". Вот здесь не нужно забывать, что ptr1 всего лишь указывает на адрес buf1 со смещением в две единицы. Именно поэтому buf1 теперь содержит результат: "HeWorld". Указатель ptr1, в свою очередь будет указывать на "World" (которое мы только что скопировали из buf2) Шестое действие:
Указатель ptr2 указывает на букву "l" в слове "World". В предыдущем действии мы выяснили, что в buf1 хранится "HeWorld". После выполнения данной операции buf2 будет содержать "WorHeWorld" А указетель ptr2 так и будет указывать на начало текста "HeWorld". Седьмое действие:
Указатель ptr1 указывает на "World". А Указатель ptr2 указывает на "HeWorld" Их и выводим на экран.
25
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
16.07.2010, 19:11 [ТС] | 22 |
MikeSoft, Ну да. Значит в итоге я понял примерно правильно. Спасибо!
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
16.07.2010, 19:15 | 23 |
1
|
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||||||||||
16.07.2010, 19:29 | 24 | ||||||||||
Lavroff, вот вам ещё задачка ... здесь больше на логику.
Даны две переменных:
У задачи существует как минимум три решения (может и больше, но мне в голову пришли три)
2
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
16.07.2010, 19:30 [ТС] | 25 |
MikeSoft, Я читал это не так давно в какой-то теме. Задачки из Кнута кидаете?)
...
Ради шутки.
int a=10+15; int b=25-10;
0
|
nikkka
|
16.07.2010, 19:31
#26
|
Не по теме: а нельзя прописать в коде a=25; b=10;
0
|
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
16.07.2010, 19:32 | 27 |
Lavroff, Нет. Эта задачка когда-то была у меня на олимпиаде ... А предыдущую год назад прислал знакомый.
Конечно нельзя Это ж жульничество. Переменные может вводить пользователь. Подумайте в сторону математических действий.
0
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
|
16.07.2010, 19:33 | 28 |
a=a+b;
b=a-b; a=a-b; так?
2
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
16.07.2010, 19:33 [ТС] | 29 |
MikeSoft, Окей. Ща подумаю над решением. На логику или все же на знание синтаксиса языка?
0
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
|
16.07.2010, 19:34 | 30 |
0
|
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||
16.07.2010, 19:35 | 31 | |||||
Сообщение было отмечено как решение
Решение
nikkka, да, именно так ...
Одно решение есть ... Ну а на остальные выйти уже несложно:
6
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
|
16.07.2010, 19:37 | 32 |
MikeSoft, а ну да))
вместо + и - везде * и /, да? Не по теме: ещё, ещё!...
0
|
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||
16.07.2010, 19:43 | 33 | |||||
nikkka, вот вам ещё одна задачка ... опять же, задачка на честность!
Не открывая IDE, попробуйте найти решение:
Eсли да, то чему равен х и сколько раз выполнится цикл? Решение прокомментируйте.
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
16.07.2010, 19:52 [ТС] | 34 |
Such?
MikeSoft, Работать будет...
Второе условие цикла не выполнится никогда. Цикл выполнится 4 раза видимо. Всмысле пройдет полностью. x=10. Изменено
0
|
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
16.07.2010, 19:53 | 35 |
Lavroff, нет, ответ неправильный.
И не забывайте указывать, сколько раз выполнится цикл.
0
|
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
|
|
16.07.2010, 19:53 | 36 |
А я думаю x будет равен 10, это префиксная операция.
1
|
3953 / 1808 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
16.07.2010, 19:54 | 37 |
neske, прокомментируйте ваше решение
И сколько раз выполнится цикл?
0
|
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
|
|
16.07.2010, 19:55 | 38 |
Цикл выполнится 9 раз.
2
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
16.07.2010, 19:55 | 39 |
0
|
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
|
|
16.07.2010, 19:57 | 40 |
После 9 инерции цикла x=9. Далее провряется условие, но т.к. операция префиксная, х становится равный 10. Но т.к. условие не соблюдается, цикл заканчивается.
0
|
16.07.2010, 19:57 | |
16.07.2010, 19:57 | |
Помогаю со студенческими работами здесь
40
Проверить на правильность и закомментировать весь код для лучшего понимания Нужны задачи для тренировки Нужны задачи для тренировки Нужны задачи для тренировки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |