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

Указатели . Удалить из одномерного массива элемент с заданным номером, добавить К элементов, начиная с заданного номера - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Заполнить одномерный массив элементами, отвечающими следующему соотношению: http://www.cyberforum.ru/cpp-beginners/thread898757.html
Заполнить одномерный массив элементами, отвечающими следующему соотношению: a1=1; a2=1; ai=ai-2+ai-1 (i = 3, 4, ..., n). cin >> N; /*Ввод количества элементов*/ A = 1; A = 1; for(int i=2; i<n; i++) A = A + A;
C++ Файлы. С файла нужно удалить слово, в котором самое большое количество РАЗНЫХ букв С файла нужно удалить слово, в котором самое большое количество РАЗНЫХ букв. То есть со слов "aab" и "abc" нужно удалить "abc". Помогите, а то никак не выходит... http://www.cyberforum.ru/cpp-beginners/thread898750.html
C++ Вывести на экран таблицу значений функции
Очень срочно нужна помощь!!! Надо получить 4 по программированию, никак без вашей помощи!
C++ Сформировать массив строк. Удалить из него строку начинающуюся и заканчивающуюся на одну и ту же букву
Сформировать массив строк. Удалить из него строку начинающуюся и заканчивающуюся на одну и ту же букву
C++ Как перегружать оператор -> ? http://www.cyberforum.ru/cpp-beginners/thread898729.html
Доброго времени суток. Есть класс: template<class T> class Auto_ptr { public: Auto_ptr(T* p) : pointer(p) { } ~Auto_ptr() { delete pointer; } T& operator*() { return *pointer; }
C++ Программы написанные на c++ Программы написанные на c++ подробнее

Показать сообщение отдельно
Vourhey
Почетный модератор
6469 / 2244 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
11.06.2013, 19:40     Указатели . Удалить из одномерного массива элемент с заданным номером, добавить К элементов, начиная с заданного номера
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
void print_array(int *a, int count)
{
    std::cout<<std::endl<<"Array: "<<std::endl;
    for(int i = 0; i < count; ++i)
        std::cout<<a[i]<<" ";
    std::cout<<std::endl;
}
 
int main()
{
    int *a, size, index, i, count;
    std::cout<<"Elements count: ";
    std::cin>>size;
    a = new int[size];
    std::cout<<"Input elements: ";
    for(i = 0; i < size; ++i) std::cin>>a[i];
    print_array(a, size);
 
    std::cout<<"Input index to remove: ";
    std::cin>>index;
    for(i = index+1; i < size; ++i) a[i-1] = a[i];
    print_array(a, size-1);
 
    std::cout<<"Input start index to add elements: ";
    std::cin>>index;
    std::cout<<"Input elements count to add: ";
    std::cin>>count;
    size += count-1;
    int *b = new int[size];
    for(i = 0; i <= index; ++i) b[i] = a[i];
    std::cout<<"Input elements count to add: ";
    for(; i <= (count+index); ++i) std::cin>>b[i];
    for(; i < size; ++i) b[i] = a[i-count];
 
    delete[] a;
    a = b;
    print_array(a, size);
    delete[] a;
Как-нибудь так, например, можно. Проверок на выход за границу, на размер, индекс и выделение памяти в коде нет.
 
Текущее время: 09:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru