Форум программистов, компьютерный форум CyberForum.ru

Требуется описание кода - C++

Восстановить пароль Регистрация
 
Mr. Wolf^^
 Аватар для Mr. Wolf^^
-32 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 38
29.03.2011, 14:04     Требуется описание кода #1
1. Что делает следующий фрагмент кода?

2. В чем состоит логическая ошибка, если она есть?

C++
1
2
3
4
5
6
7
8
9
int *pi = new int(10);
int *pia = new int[10];
while ( *pi < 10 )
{
    pia[*pi] = *pi;
    *pi = *pi + 1;
}
delete pi;
delete[] pia;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2011, 14:04     Требуется описание кода
Посмотрите здесь:

Если описание не является определением, напишите для него определение. Если описание является определением, напишите для него описание C++
C++ не могу понять описание, требуеться пояснение кода
Участок B кода выполняется позже, чем участок A кода, но почему-то B влияет на работоспособность A! Почему? C++
C++ Нужно описание кода!
Описание функций C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
m0nax
 Аватар для m0nax
1081 / 845 / 53
Регистрация: 12.01.2010
Сообщений: 1,772
Завершенные тесты: 3
29.03.2011, 14:16     Требуется описание кода #2
Либо я совсем забыл плюсанутого...либо каждая строка кроме 2, 6 и 8 полная чушь
Mr. Wolf^^
 Аватар для Mr. Wolf^^
-32 / 0 / 0
Регистрация: 16.10.2010
Сообщений: 38
29.03.2011, 14:39  [ТС]     Требуется описание кода #3
Так что неверно ?
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
29.03.2011, 15:15     Требуется описание кода #4
Вообще-то с точки зрения языка вроде всё верно:
1. Выделяем память под переменную типа int и инициализируем её значением 10
2. Выделяем память под массив из 10 целых элементов
3. В цикле движемся, пока значение по адресу pi меньше 10
4. No comments
5. Записываем в элемент массива pia с индексом по адресу pi само значение по адресу pi
6. Увеличиваем значение в ячейке по адресу pi на 1
7. No comments
8. Освобождаем память, выделенную под pi
9. Освобождаем память, выделенную под массив pia

Логическая же ошибка в том, что либо память по pi надо было изначально инициализировать нулём, либо девяткой, но в цикле двигаться, пока *pi >= 0 и переменную *pi уменьшать.
Yandex
Объявления
29.03.2011, 15:15     Требуется описание кода
Ответ Создать тему
Опции темы

Текущее время: 09:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru