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

Проход матрицы используя указатели - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа работает, не не совсем правильно... http://www.cyberforum.ru/cpp-beginners/thread81853.html
Напечатать вектор первых букв слова, которые начинаются и заканчиваются на указаный символ (т.е. надо вывести адрес строки и адреса первых букв слов, удовлетворяющих условию). В принципе программа...
C++ Выдаёт ошибку... Строчка 32. #include <iostream> #include <conio.h> #include <math.h> #include <stdio.h> using namespace std; bool prime(int n) { bool v; http://www.cyberforum.ru/cpp-beginners/thread81847.html
C++ комбинации чисел
здравствуйте, помогите дауну создать проэкт. visual studio 2005-2008 вот мне данно готовый пакет string ;IntToString(int intValue) // Credits to http://www.techbytes.ca/techbyte100.html { ...
Работа с массивами и списками. Методы сортировки и поиска. C++
помогите написать програму Задачa Написать программу которая выполняет следующие действия: 1) считывает данные из файла и сохраняет их в памяти в виде списока с двойными связями 2) Выводит...
C++ Структурная переменная http://www.cyberforum.ru/cpp-beginners/thread81789.html
Помагите решить плис... Ввести структуру (с полями числитель и знаменатель)для описания понятия рациональное число.Составить и протестировать функции: а)РАВНО (А,В), которая...
C++ двумерный массив помогите решить задачки плиз!!!!! №1. Дана матрица размера M x N (M-четное число).Поменять местами верхнюю и нижнюю половины матрицы. №2. Дана матрица размера M x N(N-четное число).Поменять... подробнее

Показать сообщение отдельно
outoftime
║XLR8║
511 / 433 / 33
Регистрация: 25.07.2009
Сообщений: 2,295

Проход матрицы используя указатели - C++

31.12.2009, 17:48. Просмотров 3015. Ответов 27
Метки (Все метки)

Никогда не любил использовать указатели, а мне сказали мол лабу надо делать еще и на указателях.
Условие: узнать совпадают ли сумы элементов в масиве по строкам и столбцам.
Пыталься что-то сделать, в результати получил следующий код:
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
#include <stdio.h>
#include <stdlib.h>
 
int R(int* a)
{
    //иницыализирую переменные под сумы
    int sc = 0, sb;
    //создаю дополнительный указатель
    int* d = a;
    //считаю суму для 1-ой строчки
    for (int i = 0; i < 17; ++i)
    {
        sc += *d;
        d += sizeof(int);
    }
    //считаю сумы для последующих строк
    //и сверяю их с сумою первой строки
    for (int j = 1; j < 17; ++j)
    {
        sb = 0;
        int* d = a + 17*j*sizeof(int);
        for (int i = 0; i < 17; ++i)
        {
            sb += *d;
            d += sizeof(int);
        }
        //если сумы не совпали вывожу 0
        if (sc != sb) return 0;
    }
    return 1;
}
 
int main()
{
    //завожу масив и рандомно его забиваю
    int a[17][17];
    for (int i = 0; i < 17; ++i)    
    {
        for (int j = 0; j < 17; ++j)    
        {
            a[i][j] = rand() % 100 - 50;
            printf("%4d",a[i][j]);
        }
        printf("\n");
    }
    //вызываю функцию
    if ( R(a) ) printf("Yes\n");
    else printf("No\n");
    return 0;
}
но wxDev-C++ упорно твердит следующее: 46 C:\Documents and Settings\Администратор\Рабочий стол\ОПіАМ\ІІ семестр\lab_3_99\lab_3_99(2).cpp cannot convert `int (*)[17]' to `int*' for argument `1' to `int R(int*)'
может кто-то сказать где ошибка, если можно, немного коментов, или пример верного использования (в моем случае)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru