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

Подсчитать количество нулевых елементов - C++

Восстановить пароль Регистрация
 
Wlad445
65 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 177
05.01.2012, 13:58     Подсчитать количество нулевых елементов #1
Подсчитать количество нулевых елементов в массиве, массив заполнить случайными числами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
05.01.2012, 14:14     Подсчитать количество нулевых елементов #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <vector>
#include <ctime>
 
template <class T> T gen () { return rand () % 10 ; }
 
int main ()
{
   std::vector <int> v (10);
   srand (time(NULL));
   std::generate(v.begin(), v.end(), gen<int>);
   std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
   std::cout << std::endl;
   std::cout << " Count " << count (v.begin(), v.end(), 0) << std::endl;
}
Wlad445
65 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 177
05.01.2012, 14:18  [ТС]     Подсчитать количество нулевых елементов #3
А можно на С?
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
05.01.2012, 14:22     Подсчитать количество нулевых елементов #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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int gen() { return rand() % 21; }
 
void generate(int* first, const int* last, int num())
{
    for( ; first != last; ++first)
        *first = num();
}
 
unsigned count(int* first, const int* last, const int num)
{
    unsigned count = 0;
    for( ; first != last; ++first)
        if(*first == num)
            ++count;
    return count;
}
 
int main(void)
{
    srand(time(0));
    int n;
    int* arr;
    int i;
    scanf("%d", &n);
    arr = (int*)malloc(n * sizeof(int));
    generate(arr, arr + n, gen);
    for(i = 0; i < n; ++i)
        printf("%d ", arr[i]);
    printf("\n");
    printf("%d\n", count(arr, arr + n, 0));
    free(arr);
    return 0;
}
SergeyS
 Аватар для SergeyS
153 / 145 / 6
Регистрация: 12.03.2011
Сообщений: 806
05.01.2012, 14:29     Подсчитать количество нулевых елементов #5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <time.h>
int i,a[25],num=0;
int main()  {
    srand(time(NULL));
    for ( i=0 ; i <26 ; i++)  {
        a[i] = rand() % 10;
        if (a[i] == 0)  {
                 num++;
                 }
         }
    printf("%d",num);
    return 0;
    }
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
05.01.2012, 14:31     Подсчитать количество нулевых елементов #6
Цитата Сообщение от bober94 Посмотреть сообщение
for ( i=0 ; i <26 ; i++)
Выход за границы массива.
SergeyS
 Аватар для SergeyS
153 / 145 / 6
Регистрация: 12.03.2011
Сообщений: 806
05.01.2012, 14:40     Подсчитать количество нулевых елементов #7
Цитата Сообщение от soon Посмотреть сообщение
Выход за границы массива.
Тогда меньше 25 нужно ставить? Тупняк у меня
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
05.01.2012, 14:50     Подсчитать количество нулевых елементов #8
Цитата Сообщение от bober94 Посмотреть сообщение
Тогда меньше 25 нужно ставить?
Да. И выносить переменные в глобальную область видимости не есть хороший стиль. Так делают только при необходимости.

Добавлено через 52 секунды
Ну и rand описан в stdlib.h
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2012, 14:53     Подсчитать количество нулевых елементов
Еще ссылки по теме:

Подсчитать количество нулевых компонентов массива C++
C++ Подсчитать количество нулевых элементов массива и вывести его в обратном порядке
C++ Подсчитать количество нулевых элементов массива, расположенных над и под главной диагональю

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

Или воспользуйтесь поиском по форуму:
SergeyS
 Аватар для SergeyS
153 / 145 / 6
Регистрация: 12.03.2011
Сообщений: 806
05.01.2012, 14:53     Подсчитать количество нулевых елементов #9
Спасибо за советы!
Yandex
Объявления
05.01.2012, 14:53     Подсчитать количество нулевых елементов
Ответ Создать тему
Опции темы

Текущее время: 19:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru