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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Lollipo
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 36
#1

Замена всех элементов массива, кроме крайних на полусумму соседей - C++

03.10.2010, 20:06. Просмотров 1564. Ответов 4
Метки нет (Все метки)

9.Напишите программу, которая вводит с клавиатуры непустой массив целых чисел, заменяет все элементы массива, кроме крайних на полусумму соседей, и печатает результат.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2010, 20:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Замена всех элементов массива, кроме крайних на полусумму соседей (C++):

Найти сумму всех элементов массива, кроме элементов с номерами от K до L - C++
Дан массив размера N и целые числа K и L (1 < K ≤ L ≤ N). Найти сумму всех элементов массива, кроме элементов с номерами от K до L...

найти среднее арифметическое всех элементов массива, кроме элементов... - C++
Дан массив размера N и целые числа K и L (1 < K ≤ L ≤ N). Найти среднее арифметическое всех элементов массива, кроме элементов с номе-рами...

Каждый элемент массива, кроме первого, заменить суммой всех его предыдущих элементов - C++
Дан массив А. Каждый его элемент, кроме первого, заменить суммой всех его предыдущих элементов. Создавайте темы с осмысленными и...

Каждый элемент заданного массива заменить на полусумму соседних элементов - C++
Дано натуральное число N и массив из N действительных чисел. Не используя дополнительных массивов требуется каждый элемент заданного...

Найти позиции крайних отрицательных элементов массива - C++
Кто знает, как решается задача на С++, при помощи сортировки? Дан массив случайных чисел в диапазоне от -20 до +20. Необходимо найти ...

Из массива случайных чисел найти позиции крайних отрицательных элементов - C++
Дан массив случайных чисел в диапазоне от -20 до +20. Необходимо найти позиции крайних отрицательных элементов (самого левого...

4
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
04.10.2010, 13:41 #2
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
int main()
{
    int i, temp = 0;
    cout << "Enter size massiv: ";
    cin >> temp;
    int *mass = new int [temp];
    cout << "zapolnite massiv: \n";
    for(i=0; i<temp; i++)
        cin >> mass[i];
    int a = 1;
    int *mas2 = new int [temp-2];
    for(i = 0; (i<temp-2);i++, a++)
        mas2[i] = (mass[a-1]+mass[a+1])/2;
    for(i = 0; i<(temp-2);i++)
        mass[i+1] = mas2[i];
    cout <<endl;
    for(i = 0; i<temp;i++)
        cout <<mass[i]<< " ";
 
    delete [] mas2;
    delete [] mass;
    _getch();
    return 0;
}
0
Day
1158 / 963 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
04.10.2010, 13:50 #3
Можно обойтись без вспомогательного массива mas2
C
1
2
3
4
5
6
7
int x, y;
for(i=1; i<temp-1;i++) {
   x = (mass[i-1]+mass[i+1]) / 2;
   if (i>1) mass[i-1] = y;
   y = x;
}
mass[temp-2] = y;
0
M128K145
Эксперт С++
8297 / 3517 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
04.10.2010, 13:54 #4
Цитата Сообщение от Day Посмотреть сообщение
Можно обойтись без вспомогательного массива mas2
Ну допустим вы посчитаете второй элемент так, но как вы после этого посчитаете 3 элемент, если второй у вас будет отличаться от исходного?
0
Day
1158 / 963 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
04.10.2010, 14:23 #5
Цитата Сообщение от M128K145 Посмотреть сообщение
Ну допустим вы посчитаете второй элемент так, но как вы после этого посчитаете 3 элемент, если второй у вас будет отличаться от исходного?
Чегой-то не понял.
Я ж не сразу его заменяю, а сохраняю до той поры, когда он уже быдет не нужен.
Как ты думаешь -зачем я ввел x, y?
Ладно, попробуем прокрутить.
Массив 1 2 5 8 16
i = 1, x = 3, y= x = 3
i = 2, x = 5, m[1] = y = 3, y=x=5
i = 3, x = 10(16+5)/2, m[2] = y = 5, y =x = 10
i = 4, break, m[3] = y = 10
Как-будто все получается?
Иль на меня затмение нашло какое ?
0
04.10.2010, 14:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.10.2010, 14:23
Привет! Вот еще темы с ответами:

Найти позиции крайних отрицательных элементов и отсортировать элементы массива - C++
1.Дан массив случайных чисел в диапазоне от -20 до +20. Необходимо найти позиции крайних отрицательных элементов (самого левого...

Каждый элемент вектора А(п) (кроме двух крайних) заменить выражением - C++
Задачу и формулы надо переписывать! Редактор формул внизу страницы.

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

Найти позиции крайних отрицательных элементов массива и отсортировать элементы межды ними - C++
Дан массив случайных чисел в диапазоне от -20 до +20. Необходимо найти позиции крайних отрицательных элементов (самого левого...


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

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

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