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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Bleize
0 / 0 / 0
Регистрация: 17.10.2010
Сообщений: 26
#1

Добавить после элемента массива с заданным индексом элемент со значением 100 - C++

26.11.2010, 21:14. Просмотров 1764. Ответов 7
Метки нет (Все метки)

Удалить последний элемент равный 0. Добавить после элемента массива с заданным индексом элемент со значением 100.

Добавлено через 15 минут
P.S. При выполнении работы используются статические массивы. Для организации статических массивов с псевдопеременными границами необходимо объявить массив достаточно большой длины N. Затем пользователь вводит реальную длину массива (не больше N) и работает с массивом той длины, которую он сам указал. Остальные элементы (хотя память под них и будет выделена) не рассматриваются. При уменьшении или увеличении длины массива необходимо изменять его реальную длину.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2010, 21:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Добавить после элемента массива с заданным индексом элемент со значением 100 (C++):

Добавить после первого четного элемента массива элемент с заданным значением - C++
Мне задали лабораторную работу, как всегда на самостоятельное изучение! Первый и второй пункт я сделала! Проблема с 3и4 пунктом. Хотелось...

Добавить после каждого четного элемента массива элемент со значением M - C++
Прошу помочь с решением задачи. 1)Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2)Распечатать...

Добавить в однонаправленный список элемент после элемента с заданным информационным полем - C++
Здравствуйте, помогите пожалуйста, с задачей. 1.Тип информационного поля char*. Добавить в однонаправленный список элемент после...

Удалить первый нулевой элемент массива и добавить после каждого чётного элемента особый элемент - C++
Здравствуйте! Имеется такая задача: 1) Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2) Распечатать...

Добавить в список элемент после элемента с заданным инф.полем [Однонаправленный список] - C++
Вообщем есть: Функция создание списка Функции вывода на экран Функция добавление элемента с номером k А нужно ввести...

Односвязный список (за первым вхождением элемента с заданным значением z добавить все элементы списка В) - C++
Дан непустой лин.односвяз список А в список А за первым вхождением элемента с заданным значением z добавить все элементы списка В.

7
ne6u4u
12 / 12 / 0
Регистрация: 14.11.2010
Сообщений: 29
27.11.2010, 02:53 #2
ну если я правильно понял то сначала введенный массив должен уменьшиться на 1 элемент за счет удаленного 0, а потом этот же массив должен увеличится за счет введенного элемента со значением 100, если так, то примерно так:
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// red_arr.cpp
#include <iostream>
using namespace std;
 
int main()
{
    const int MAX = 100;
    int N;
    setlocale(LC_ALL, "Russian");
    int arr[MAX];
    cout << "Введите число элементов массива: ";
    cin >> N;
    cout << "Заполните массив: ";
    for (int i=0 ; i<N; i++)
    {
        cout << i+1 << " элемент: ";
        cin >> arr[i];
    }
    cout << "\nВы ввели массив: ";
    int ind = 0;
    for (int i=0; i<N; i++)
    {
        cout << arr[i] << " ";
        //определение индекса последнего нулевого элемента
        if (arr[i] == 0)
        {
            ind = i;
        }
    }
    cout << endl;
 
    //удаление последнего нулевого 
    for (int i = ind; i<N; i++)
    {
        arr[i] = arr[i+1];
    }
 
    //Вывод преобразованного массива
    cout << "\nПреобразованный массив: ";
    for (int i=0; i<N-1; i++)
    {
        cout << arr[i] << " ";
    }
    cout << endl;
 
    cout << "Введите номер элемента, после которого вставить элемент со значением 100: ";
    int number;
    cin >> number;
    for (int i=N-1; i > number; i--)
    {
        arr[i] = arr[i-1];
    }
    arr[number] = 100;
    //Вывод преобразованного массива
    cout << "\nПреобразованный массив: ";
    for (int i=0; i<N; i++)
    {
        cout << arr[i] << " ";
    }
    cout << endl;
    return 0;
}
1
NightmareZ
1360 / 568 / 37
Регистрация: 31.03.2009
Сообщений: 1,939
27.11.2010, 04:01 #3
Цитата Сообщение от Bleize Посмотреть сообщение
Для организации статических массивов с псевдопеременными границами необходимо объявить массив достаточно большой длины N.
Вот почему меня тошнит от вузов. Потому что там старые маразматики учат детей быдлокодить.

Спроси у препода (чисто поржать), что подразумевается под "достаточно большой длиной"?
0
afganec
30 / 30 / 4
Регистрация: 30.06.2009
Сообщений: 149
27.11.2010, 04:27 #4
Цитата Сообщение от NightmareZ Посмотреть сообщение
Вот почему меня тошнит от вузов. Потому что там старые маразматики учат детей быдлокодить.

Спроси у препода (чисто поржать), что подразумевается под "достаточно большой длиной"?
"ну элементов такк.... ну соточка хотя бы..." (с) ответил мне доцент однажды...
0
silent_1991
Эксперт С++
4984 / 3041 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
27.11.2010, 12:26 #5
NightmareZ, я всё понимаю, с вашей высоты это быдлокод (я ничего не говорю, это быдлокод и есть), но как вы прикажете делать иначе? Сразу вводить указатели, динамическое выделение памяти, а только потом учить работать с массивами? Несерьёзно (просто потому, что одно всегда цепляется за другое и с чего-то начать всё же надо). Это то же самое, что в школе вместо того, чтобы говорить, что у квадратного уравнения с отрицательным дискриминантом нет корней, сначала вводить комплексные числа, а потом учить решать квадратные уравнения.
0
NightmareZ
1360 / 568 / 37
Регистрация: 31.03.2009
Сообщений: 1,939
27.11.2010, 15:26 #6
Цитата Сообщение от silent_1991 Посмотреть сообщение
NightmareZ, я всё понимаю, с вашей высоты это быдлокод (я ничего не говорю, это быдлокод и есть), но как вы прикажете делать иначе? Сразу вводить указатели, динамическое выделение памяти, а только потом учить работать с массивами?
Нужно ставить задачи, которые корректно ложатся на массивы.
1
silent_1991
Эксперт С++
4984 / 3041 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
27.11.2010, 15:28 #7
Цитата Сообщение от NightmareZ
Нужно ставить задачи, которые корректно ложатся на массивы
Согласен, это верно.
0
Bleize
0 / 0 / 0
Регистрация: 17.10.2010
Сообщений: 26
04.12.2010, 23:27  [ТС] #8
ого, прямо конференцию собрали тут)
0
04.12.2010, 23:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2010, 23:27
Привет! Вот еще темы с ответами:

После каждого четного элемента массива вставить два элемента с тем же значением, после чего полученный массив отсортировать по убыванию - C++
Ребят, помогите с задачкой новичку. После каждого четного элемента массива вставить два элемента с тем же значением, после чего...

Заменить каждый неположительный элемент массива Х абсолютной величиной элемента массива Y с тем же индексом - C++
Добрый день. Нужно решить задачку: Заменить каждый неположительный элемент массива Х абсолютной величиной имеющего тот же номер элемента...

Удалить элементы кратные 7. Добавить после каждого элемента массива элемент со значенем 0. - C++
// Кузя 2.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include &lt;stdlib.h&gt; #include &lt;conio.h&gt; ...

Функции обработки массива (определить произведение элементов массива, заменить модулем все элементы массива, уничтожить элемент с заданным значением) - C++
Вот задания,не могу сделать ни одного из них,буду благодарен за помощь. Написать функции для выполнения операций над одномерным...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru