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

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

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

Дан двумерный массив целых чисел. Вычислить количество четных чисел среди элементов, встречающихся в массиве ровно 3 раза - C++

18.12.2013, 23:13. Просмотров 786. Ответов 11
Метки нет (Все метки)

Кто может, помогите пожалуйста
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2013, 23:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дан двумерный массив целых чисел. Вычислить количество четных чисел среди элементов, встречающихся в массиве ровно 3 раза (C++):

Дан массив целых чисел. Определить количество четных элементов и количество элементов, оканчивающихся на цифру 5 - C++
Дан массив целых чисел. Определить количество четных элементов и количество элементов, оканчивающихся на цифру 5 с++

Дан двумерный массив целых чисел, найти количество чисел, кратных N - C++
Дан двумерный массив целых чисел, найти количество чисел, кратных N. Как это можна записать в С++?? хотя бы условие...

Дан массив целых чисел, заполненный случайными числами. Вычислить количество элементов кратных пяти и заменить - C++
Дан массив целых чисел, заполненный случайными числами. Вычислить количество элементов кратных пяти и заменить их на минимальный

Двумерный массив. Найти: максимальное из чисел, встречающихся в заданной матрице более одного раза - C++
Найти: максимальное из чисел, встречающихся в заданной матрице более одного раза Матрица: 2 4 7 6 5 8 9 34 43 4 34 53 45 345 3 6 5 56...

Дан файл целых чисел. айти среди этих чисел те, что больше за среднее арифметическое суммы всех элементов - C++
дано файл целых чисел A1,....,An, которые упорядочены за спаданием. Найти среди этих чисел те , что больше за среднее арифметическое...

Массив из 20 целых чисел. Подсчитать количество четных чисел - C++
вот такая задача: в массиве а из 20 целых чисел. подсчитать количество четных чисел

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ev_Hyper
Заблокирован
18.12.2013, 23:23 #2
Можно создать массив элементов встречающихся три раза, а потом искать количество четных чисел.
0
Анатолииий
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 15
18.12.2013, 23:32  [ТС] #3
Массивы должны быть заполнены некоторыми случайными
значениями.
0
MicM
822 / 489 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
18.12.2013, 23:40 #4
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>
 
struct mas
{
    int a;
    int c;
};
 
int main()
{
    srand (time(NULL));
    int a[5][5],k = 0;
    mas tmp[25];
    for (int i=0; i<5; i++)
    {
        for (int j=0; j<5; j++)
        {
            a[i][j]=rand()%16+1;
            tmp[k].a = a[i][j];
            tmp[k].c = 1;
            ++k;
            std::cout <<std::setw(4) <<a[i][j];
        }
        std::cout <<std::endl;
    }
    k = 0;
    for (int i=0; i<24; i++)
    {
        for (int j=i+1; j<25; j++)
            if (tmp[i].a==tmp[j].a)
                tmp[i].c++;
        if (tmp[i].c==3 && tmp[i].a%2==0)
            ++k;
    }
    std::cout <<k <<'\n';
    return 0;
}
1
Ev_Hyper
Заблокирован
18.12.2013, 23:42 #5
Цитата Сообщение от Анатолииий Посмотреть сообщение
Массивы должны быть заполнены некоторыми случайными
значениями.
Вот так например:
C++
1
2
3
4
  srand((time(NULL)));
    for(int i=0; i<n;i++)
        for(int j=0; j<n;j++)
           a[i][j]=rand()%100;
1
MicM
822 / 489 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
18.12.2013, 23:47 #6
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>
 
struct mas
{
    int a;
    int c;
};
 
int main()
{
    srand (time(NULL));
    int a[5][5],k = 0;
    mas tmp[25];
    for (int i=0; i<5; i++)
    {
        for (int j=0; j<5; j++)
        {
            a[i][j]=rand()%16+1;
            tmp[k].a = a[i][j];
            tmp[k].c = 1;
            ++k;
            std::cout <<std::setw(4) <<a[i][j];
        }
        std::cout <<std::endl;
    }
    k = 0;
    bool f;
    for (int i=0; i<24; i++)
    {
        f = true;
        for (int k=0; k<i; k++)
            if (a[i]==a[k])
            {
                f = false;
                break;
            }
        if (f)
        {
            for (int j=i+1; j<25; j++)
                if (tmp[i].a==tmp[j].a)
                    tmp[i].c++;
            if (tmp[i].c==3 && tmp[i].a%2==0)
                ++k;
        }
    }
    std::cout <<k <<'\n';
    return 0;
}
1
Анатолииий
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 15
18.12.2013, 23:49  [ТС] #7
тут ещё один нюанс,, программа должна запрашивать число строк и число столбцов
0
Ev_Hyper
Заблокирован
18.12.2013, 23:55 #8
Как-то так тогда задавайте:
C++
1
2
3
4
5
6
7
cout << "Vvedite razmer n m" << endl;
cin >> n >> m;
// Выделение памяти под массив
double  **umas2;
umas2=new double*[n];  
for(i=0; i<n; i++) 
umas2[i]=new double[m];
P.S Код скопировал с чьей-то программы на форуме
1
Анатолииий
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 15
18.12.2013, 23:57  [ТС] #9
понятно, но всё равно спасибо
0
MicM
822 / 489 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
18.12.2013, 23:58 #10
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>
 
struct mas
{
    int a;
    int c;
};
 
const int nmax = 10;
const int mmax = 10;
 
int main()
{
    srand (time(NULL));
    int a[nmax][mmax],k = 0;
    mas tmp[nmax*mmax];
    int n,m;
    do
    {
        std::cout <<"lines: ";
        std::cin >> n;
    }
    while (n<0 || n>nmax);
    do
    {
        std::cout <<"Columns: ";
        std::cin >> m;
    }
    while (m<0 || m>mmax);
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            a[i][j]=rand()%16+1;
            tmp[k].a = a[i][j];
            tmp[k].c = 1;
            ++k;
            std::cout <<std::setw(4) <<a[i][j];
        }
        std::cout <<std::endl;
    }
    k = 0;
    bool f;
    for (int i=0; i<n*m-1; i++)
    {
        f = true;
        for (int k=0; k<i; k++)
            if (a[i]==a[k])
            {
                f = false;
                break;
            }
        if (f)
        {
            for (int j=i+1; j<n*m; j++)
                if (tmp[i].a==tmp[j].a)
                    tmp[i].c++;
            if (tmp[i].c==3 && tmp[i].a%2==0)
                ++k;
        }
    }
    std::cout <<k <<'\n';
    return 0;
}
1
Анатолииий
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 15
19.12.2013, 17:57  [ТС] #11
Спасибо огромноеМожет вы мне ещё подскажете, я тут пытался написать программу, которая должна вывести наименьшее натуральное число, которое можно представить двумя разными способами в виде суммы кубов двух натуральных чисел. Но так и не разобрался, как сделать, чтобы программа оставила только одно наименьшее значение, а не всё что она выводит

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
int i,j,l,k,n;
 
{
for (i=1; i*i*i<n; i++)
for (j=i+1; j*j*j<n; j++)
for (l=1; l*l*l<n; l++)
if (l!=i && l!=j)
for (k=l+1; k*k*k<n; k++)
if (k!=i && k!=j)
if ((i*i*i+j*j*j)==(l*l*l+k*k*k))
{printf("Naimenshee natur chislo: %d: ",(i*i*i+j*j*j));
printf("%d^3+%d^3=%d^3+%d^3\n ",i,j,l,k);
 
}
return 0;
}
}
Добавлено через 7 минут
Спасибо огромноеМожет вы мне ещё можете помочь, я пробовал написать программу которая выводит наименьшее натуральное число, которое можно представить двумя разными способами в виде суммы кубов двух натуральных чисел, но она выводит множество этих значение, а надо именно наименьшее. Подскажите пожалуйста,что исправить
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
int i,j,l,k,n;
 
{
for (i=1; i*i*i<n; i++)
for (j=i+1; j*j*j<n; j++)
for (l=1; l*l*l<n; l++)
if (l!=i && l!=j)
for (k=l+1; k*k*k<n; k++)
if (k!=i && k!=j)
if ((i*i*i+j*j*j)==(l*l*l+k*k*k))
{printf("Naimenshee natur chislo: %d: ",(i*i*i+j*j*j));
printf("%d^3+%d^3=%d^3+%d^3\n ",i,j,l,k);
 
}
return 0;
}
}
Добавлено через 17 часов 43 минуты
Не могли бы вы мне объяснить, что такое
Цитата Сообщение от MicM Посмотреть сообщение
srand (time(NULL));
?
почему самый большой размер матрицы 10 на 10?
И почему генератор случайных чисел выдаёт число именно до 16?
Буду очень благодарен
0
MicM
822 / 489 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
19.12.2013, 18:08 #12
Цитата Сообщение от Анатолииий Посмотреть сообщение
почему самый большой размер матрицы 10 на 10?
Это не принципиально, просто мне так захотелось
Цитата Сообщение от Анатолииий Посмотреть сообщение
И почему генератор случайных чисел выдаёт число именно до 16?
Потому что вот
C++
1
a[i][j]=rand()%16+1;
Можете задать любой диапозон, какой хотите
Цитата Сообщение от Анатолииий Посмотреть сообщение
srand (time(NULL));
Это надо, чтобы каждый раз генерировались разные числа
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2013, 18:08
Привет! Вот еще темы с ответами:

Дан массив целых чисел. Найти среднее арифметическое, количество отрицательных элементов - C++
нужно решить задачу в С++ Дан массив целых чисел.Найти -среднее арифметическое -кол-во отрицательных элементов -номер минимального...

Дан файл целых чисел которые упорядочены по убыванию. Среди этих чисел найти те что больше среднего арифметического суммы всех элементов - C++
Всем привет, можете доделать прогу, а то сортирует на оборот ( как сделать чтоб виводило числа больше среднего?) Дан файл целых чисел...

Дано двумерный массив целых чисел. В каждом столбце найти сумму и количество чисел.(исправить) - C++
Исправить программу: Дано двумерный массив целых чисел. В каждом столбце найти сумму и количество чисел. #include &lt;iostream.h&gt; ...

Записать в массив N целых чисел. Подсчитать количество пар противоположных чисел среди компонентов этого массива - C++
Записать в массив N целых чисел. Подсчитать количество пар противоположных чисел среди компонентов этого массива


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.12.2013, 18:08
Ответ Создать тему
Опции темы

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