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

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

Войти
Регистрация
Восстановить пароль
 
Miza01
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 44
#1

Особый элемент - C++

03.12.2013, 21:33. Просмотров 241. Ответов 8
Метки нет (Все метки)

Здравствуйте. Пожалуйста помогите. Нужно осуществить поиск особого элемента в массиве. Это последняя моя функция в коде. Что я делаю не так?


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
63
64
65
66
67
68
69
70
71
72
#include <iostream>
#include <cstdlib>
#include <fstream>
using namespace std;
/*Дан целочисленный массив M*N. Разработать программу нахождения суммы особых элементов 
массива. Особым считается элемент массива наименьший в своем столбце и наибольший в своей строке.  */
 
int *form_duo (int ,int );
void out_duo (int*,int,int);
int search (int*,int,int);
 
int main()
{
 int n=3,m=3,i=0;
 cout<<"Vvedite razmer massiva:\n";
 cin>> n>>m;
 int *arr=new int[100];
 for (int i=0;i<25;i++)
 arr=form_duo(n,m);
 out_duo(arr,n,m);
 cout<<search(arr,n,m);
 delete arr;
 return 0;
}
 
int *form_duo(int mm,int nn) //formirovanie 2mernoga massiva
{
int *p=new int [mm*nn];
for (int i=0;i<mm;i++)
for (int j=0;j<nn;j++)
    {
    cin>>*(p+mm*i+j);
    }
return p;
delete[]p;
}
 
void out_duo(int *p, int mm, int nn) //vivod massiva
{
for(int i=0;i<mm;i++ )
{
for (int j=0;j<nn;j++)
    cout<<*(p+mm*i+j)<<' ';
    cout<<'\n';
}
}
 
//nn-кол-во строк, mm-кол-во столбцов
int search(int *p, int nn, int mm) // поиск особых элементов. ВОТ ЗДЕСЬ НУЖНА ПОМОЩЬ
{
 int u,stu,d=10000,sum=0,i=0,j=0;
 u=*p;
 for(j=0;j<mm;j++)
    {
     if(*(p+j*mm+i)<u)
       *(p+j*mm+i)=u;
     for(j=0;j<mm;j++)
        if(*(p+j*mm+i)==u)
          {  
          stu=*(p+j*mm+i);
          for(i=0;i<nn;i++)
             {if(stu>*(p+j+i*nn))
                stu=*(p+j+i*nn);
              if(stu==u)
                sum+=stu;
             }
          }
    }
       
for(i=0;i<nn;i++)
return sum;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2013, 21:33     Особый элемент
Посмотрите здесь:

Определить скалярное произведение строки и столбца, где расположен максимальный особый элемент - C++
Дан двумерный массив А(N,N) натуральных чисел. Элемент A(I,J) назовем особым , если число, записанное из цифр первой половины (в порядке...

Массив: Удалить строки заданного массива, в которых есть хотя бы один особый элемент - C++
Здравствуйте. Я только начал постигать язык С++ и остановился на одной задачи и не могу сдвинуться с места... Прочёл в 2-х книгах про...

Задача на "особый" элемент матрицы - C++
Задача: Делаю так: #include &lt;iostream&gt; int main() { using namespace std; int N, M, SEQ = 0;

Перед каждым положительным элемент массива вставить элемент с нулевым значением - C++
6)Дан массив размера N. Перед каждым положительным элемент массива вставить элемент с нулевым значением.

Массивы. Заменить 3ий элемент в 1ой строке матрицы А на max элемент - C++
Помогите пож Матрица А цифры любые заменить 3ий элемент в 1ой строке матрицы А на max элемент

Из положительных элементов массива вычесть первый элемент, из остальных - второй элемент - C++
Дан массив L(7). Из положительных элементов вычесть первый элемент, из остальных - второй элемент. Вывести новый массив на печать.2 3 -4 ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
5602 / 2636 / 242
Регистрация: 01.11.2011
Сообщений: 6,495
Завершенные тесты: 1
03.12.2013, 21:53     Особый элемент #2
Цитата Сообщение от Miza01 Посмотреть сообщение
Что я делаю не так?
Не пользуетесь пошаговой отладкой.
Miza01
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 44
03.12.2013, 22:26  [ТС]     Особый элемент #3
При чем здесь пошаговая отладка?

PS Извините я новичок...
max_besheniy
25 / 25 / 1
Регистрация: 21.11.2013
Сообщений: 208
03.12.2013, 22:35     Особый элемент #4
При том, что при отладке можо смотреть значения переменных и понять, где не так. А какой вы элемент ищите?
Dani
1278 / 636 / 56
Регистрация: 11.08.2011
Сообщений: 2,277
Записей в блоге: 2
Завершенные тесты: 1
03.12.2013, 22:36     Особый элемент #5
max_besheniy, комментарии к коду прочти.
max_besheniy
25 / 25 / 1
Регистрация: 21.11.2013
Сообщений: 208
03.12.2013, 23:13     Особый элемент #6
Да, простите, не увидел
Miza01
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 44
03.12.2013, 23:30  [ТС]     Особый элемент #7
Глупый вопрос, но как пользоваться отладчиком в dev c++? =)
max_besheniy
25 / 25 / 1
Регистрация: 21.11.2013
Сообщений: 208
03.12.2013, 23:37     Особый элемент #8
Не смог найти ошибку в вашем коде, нашел свой, задача была 1 в 1, только массив не m*n, а n*n. Ну думаю, переделаете
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
#include <iostream>
using namespace std;
int main()
{
    int a[100][100];
    int s, max, n, k, max1, h;
    cin >> n;
    for (int i = 1; i <= n; i++)
    for (int j = 1; j <= n; j++)
        cin >> a[i][j];
    s = 0;
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= n; j++)
        {
            max = 100000;
            max1 = 100000;
            for (int m = 1; m <= n; m++)
            if (a[i][m]<max) max = a[i][m];
            for (int m = 1; m <= n; m++)
            if (a[m][j]<max1) max1 = a[m][j];
            if (a[i][j] == max&&a[i][j] == max1) s += a[i][j];
        }
    }
    cout << s << endl;
    return 0;
}
Добавлено через 2 минуты
Извините, у меня нахождение наименьшего и в строке и в столбике. Разница не особо большая
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2013, 23:41     Особый элемент
Еще ссылки по теме:

Есть ли элемент который возвращает инфу на какой элемент иерархии - C++
... Поинтор сейчас поинтит ??? Допустим есть Абстрактный папа я делаю в мейне поинтор этого папы заряжаю его на какого ниб...

Как удалить нужный элемент из списка или заменить этот элемент на другой? - C++
Доброго времени суток, господа! Есть список: list&lt;double&gt; list1; Есть возможность добавить в начало или в конец списка елементы:...

Построить матрицу В, каждый элемент которой - минимальный элемент матрицы А из указанной области - C++
Дана матрица A (NxN размер). Нужно построить матрицу В, каждый элемент которой - минимальный элемент матрицы А из указанной области(внизу...

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


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

Или воспользуйтесь поиском по форуму:
Miza01
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 44
03.12.2013, 23:41  [ТС]     Особый элемент #9
Спасибо =), так я и сам написал уже, но мне нужно в динамической памяти оформить =)
Yandex
Объявления
03.12.2013, 23:41     Особый элемент
Ответ Создать тему
Опции темы

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