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

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

Войти
Регистрация
Восстановить пароль
 
кверти
4 / 4 / 1
Регистрация: 22.09.2013
Сообщений: 154
Завершенные тесты: 2
#1

Программа про массив - C++

22.12.2013, 23:04. Просмотров 221. Ответов 1
Метки нет (Все метки)

В заданной целочисленной матрице NxM найти номер последней из её строк , содержащих максимальное количество одинаковых элементов. Собственно у меня несколько проблем .
1) Не правильно выделяется память(как думаю я)
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <iostream>
 
int main(int argc, char *argv[])
{
        int i=0,j=0,h=0,N=5,M=5,i_stroki=0;
        setlocale(0, "");
        int  n=0, handle=0; //объявляю переменные типа integer
        char *a_storage;
        char **A;
 
        printf("Введите размерность N/M \n");
        scanf("%i %i",&N,&M);
    
        a_storage = (char*)malloc(N*M); //выделяем память для массива размером N*M байт
        A = (char**)malloc(N*sizeof(char*)); //массив указателей на строки матрицы
 
        for (i = 0; i < N; ++i)
            A[i] = a_storage + i*M; //инициализируем строки
 
        printf("введите элементы матрицы:\n");
        for (i = 0; i<N; i++)
        for (j = 0; j<M; j++)
        {
            printf("A[%d][%d]=", i, j);
            scanf("%d", &A[i][j]);
        }
        printf("Исходная матрица:\n");
 
        for (i = 0; i<N; i++)
        {
            for (j = 0; j<M; j++)
                printf("%d ", A[i][j]);
                printf("\n");
        }
 
       /*Не могу понять как доработать фрагмент*/
 
        printf("наибольшая повторяющаяся строка %d\n", i_stroki);
        system("pause");
 
        free(A); //освобождаем память
        free(a_storage); //освобождаем память
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2013, 23:04     Программа про массив
Посмотрите здесь:

Программа в С про студентов - C++
Помогите) пожалуйста =_= мучаюсь третюю неделю =_= Написать программу позволяющую заносить информациу о студентах( Фамилия,...

Программа про карты - C++
Дана программа #include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std; enum Suit { clubs, diamonds,...

Программа про игроков - C++
Игрок А объявляет двузначное число от 01 до 99. Игрок В меняет местами его цифры и полученное число прибавляет к сумме его цифр. Полученный...

Программа про Stack - C++
Помогите пожалуйста, решить программу про Stack. The input file should be HomeworkSixInput.txt, provided by the assignment. This file...

Программа про денежки. - C++
Доброго времени суток. =] Учусь на матфаке, программирование у нас уже 2 семестра, 1й семестр был Java, у меня с ним проблем не было,...

программа про последовательность - C++
Найти сумму элементов , которая больше 10^-5 с последовательностью 1,1,5/7,7/15

Программа про пиликающий процессор - C++
Недавно писал легкую программу(т.к новичок)про пиликающий процессор.Суть в чем,когда активируется прога требуется ввести число,какое число...

Программа про динамические массивы - C++
Нужна программа, объявляющая динамический двухмерный массив с заданным вторым параметром(к примеру, 3). И затем(после обьявления массива)...

Программа про счастливые билеты. Не работает. - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;clocale&gt; using namespace std; void Input(int &amp;N1, int &amp;N2) { cout &lt;&lt;...

Простая программа про площади прямоугольников - C++
Требуется написать программу. Условия: 1. Исходное данное - натуральное число K, выражающее площадь. Написать программу для...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ZeR_0
117 / 109 / 37
Регистрация: 30.01.2013
Сообщений: 297
22.12.2013, 23:05     Программа про массив #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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <iostream>
 
int main(){
    setlocale(LC_ALL,"rus");
 
    int n, m;
    int max = 0, buf = 0, maxStr = 0;
    int **array;
 
    std::cout << "Введите размер матрицы: ";
    std::cin >> n >> m;
 
    array = new int*[n];
    for(int i = 0; i < n; i++)
        array[i] = new int[m];
 
    std::cout << "Заполните матрицу" << std::endl;
 
    for(int i = 0; i < n; i++)
        for(int j = 0; j < m; j++)
            std::cin >> array[i][j];
 
    std::cout << "Матрица:" << std::endl;
    for(int i = 0; i < n; i++){
        for(int j = 0; j < m; j++){
            std::cout << array[i][j] << " ";
        }
        std::cout << std::endl;
    }
 
    for(int i = 0; i < n; i++){
        for(int j = 0; j < m; j++){
            buf = 0;
            for(int k = 0; k < m; k++){
                if(array[i][j] == array[i][k])
                    buf ++;
            }
            if(buf > max){
                max = buf;
                maxStr = i;
            }
        }
    }
 
    std::cout << "Строка: " << maxStr << " Максимальное значение: " << max << std::endl;
    return 0;
}
Ответ Создать тему
Опции темы

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