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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2022, 19:14   #1
Usish
Новичок
Джуниор
 
Регистрация: 02.12.2022
Сообщений: 1
По умолчанию Задача на C++

Всем доброго времени суток!
Создал проект, написал код, выдает ошибку "invalid types 'int[int]' for array subscript".
Задача: Составить функцию подсчета суммы значений элементов в одномерном
массиве. С помощью этой функции подсчитать суммы элементов побочной
диагонали двумерной матрицы.
Код:
main.cpp

Код:
#include <iostream>
#include "ioarray.h"

using namespace std;

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
    int A[2][2]; int sum;
    for (int i=0; i<2; i++) {
       cout << endl << "Start " << i << " row";
       input_array( A[i], 2);
    }
    for (int i=0; i<2; i++) {
        print_array( A[i], 2);
    }
     for (int i=0; i<2; i++) {
        sum_array( A[i], 2);
    }
return 0;
}
ioarray.h

Код:
#ifndef IOARRAY_H
#define IOARRAY_H
void input_array(int m[], int count);
void print_array(int m[], int count);
void sum_array(int m[], int count);
#endif // IOARRAY_H
ioarray.cpp

Код:
#include <iostream>
#include "ioarray.h"
using namespace std;
void input_array(int m[], int length) {
	for (int i = 0; i<length; i++) {
		cout << endl << "Enter [" << i << "] = ";
		cin >> m[i];
	}
	return;
	}
	
void print_array(int m[], int length) {
	for (int i = 0; i<length; i++) {
		cout << ' ' << m[i];
	}
	cout << endl;
	return;
	}
	
void sum_array(int m[], int N) {
	double sum = 0;
	int i, j;
	i = (N-1);
	for (int j =0; j<N; j++) {
		 sum += m[i][N-1-j];
	}
	printf("%d",sum);
	return;
}
Изображения
Тип файла: jpg Ошибка.jpg (70.8 Кб, 1 просмотров)

Последний раз редактировалось BDA; 03.12.2022 в 00:41.
Usish вне форума Ответить с цитированием
Старый 02.12.2022, 19:28   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,830
По умолчанию

Ну даже думать не надо, только смотреть глазами:
Код:
void sum_array(int m[], int N) {
сколько скобочек []?
Код:
m[i][N-1-j];
А вы сколько указываете?
p51x вне форума Ответить с цитированием
Старый 03.12.2022, 07:28   #3
Алексей1153
фрилансер, препод.
Участник клуба
 
Регистрация: 11.10.2019
Сообщений: 1,044
По умолчанию

Цитата:
Сообщение от Usish Посмотреть сообщение
void sum_array(int m[], int count);
а ещё лучше не путать самого себя и использовать звёздочку для аргумента-указателя
Код:
void sum_array(int* m, int count);
Алексей1153 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача по подсчёту статистики использования букв. Другая задача - по длинной арифметике Pascal ABC kimberly Паскаль, Turbo Pascal, PascalABC.NET 3 24.12.2012 17:03
задача на структуру(struct)/задача на работу с файлом SevenArth Помощь студентам 0 26.04.2012 19:06
Задача на оптимальный расчет маршрута (задача в презентации) в табличном процессоре Excel Toofed Помощь студентам 0 30.11.2011 01:12
Задача минимизации дисбаланса на линии сборки (задача минимакса) LenZab Microsoft Office Excel 13 13.03.2011 22:51