Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.09.2021, 19:43   #1
zhadz
 
Регистрация: 20.05.2021
Сообщений: 7
По умолчанию C++ В чём ошибка?

Задание: нужно составить функцию, которая увеличивает четные элементы массива на 10. Используя эту функцию, преобразовать два одномерных массива: n=8 m=14.
Код:
#include <iostream>
using namespace std;
int n;
void b(int *a)
{ for (int i = 0; i < n; i++)
if (a[i] % 2 == 0) a[i] += 10; }
int main()
{ int i, n; while (1) { cout << "n » "; cin >> n;
int *a = new int [n]; cout << "» "; for (i = 0;
i < n; i++) cin >> a[i]; b(a); for (i = 0; i < n;
i++) cout << i + 1 << ") " << a[i] << endl;
delete [] a; } }
zhadz вне форума Ответить с цитированием
Старый 27.09.2021, 20:02   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Ну не считая отсутствия форматирования кода у вас две переменных n (одна глобальная, а вторая локальная). Измените заголовок функции "void b(int n, int *a)" и передавайте считанное значение "b(n, a);".
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В чём ошибка? Zaabaks Помощь студентам 1 25.02.2018 22:15
в чём ошибка? Fagundass PHP 1 28.10.2014 16:52
в чём ошибка? Fagundass PHP 4 08.10.2014 16:30
В чём ошибка? kotaina Общие вопросы Delphi 0 24.06.2011 16:36