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

Подсчет нечетных элементов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить количество слов в тексте http://www.cyberforum.ru/cpp-beginners/thread896676.html
Разработать алгоритм и программу для определения количества слов в тексте
C++ работа с системами счисления У меня в файле число: 0x00000000 Мне нужно его прочиатать да ещё и занести в переменную. Пожно с помошью char или std::string, а как ещё? Кто знает пишите) http://www.cyberforum.ru/cpp-beginners/thread896673.html
C++ Определить самое длинное слово
Разработать алгоритм и программу для определения в тексте самого длинного слова, в котором нет цифр.
C++ Найти в массиве количество простых чисел,больших суммы цифр первого числа
Учусь на 1 курсе,стараюсь,но пока очень туго понимаю С++, по шаблону что-то написать могу, а какое-то другое условие - и я в ступоре. На зачет нужны такие задачки: Общее задание "Создать и...
C++ Алгоритм шифрования А5/1 http://www.cyberforum.ru/cpp-beginners/thread896656.html
Нашла исходник алгоритма Нужно переделать так, чтобы пользователь мог вводить ключ и текст для шифрования. Помогите пожалуйста. //Source : http://www.scard.org/gsm /* * A pedagogical...
C++ Составить программу по решению системы уравнений при указанных условиях Добрый Вечер. Помогите с решением задачи. 1. Разветвляющийся алгоритм Составить программу по решению системы уравнений при указанных условиях. Все неизвестные переменные вводятся с клавиатуры.... подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт CЭксперт С++
9695 / 5645 / 963
Регистрация: 25.07.2009
Сообщений: 10,848
10.06.2013, 00:09
Цитата Сообщение от ann333 Посмотреть сообщение
используя функцию для обработки массива
Сейчас угадаю - сплошь "велосипеды", никаких std::generate(), std::accumulate(), etc... ?
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
73
74
#include <iostream>
#include <cstdlib>
#include <ctime>
 
void fill_row(int * row, int count, const int minValue, const int maxValue) {
    while ( count-- )
        *row++ = rand() % (maxValue - minValue + 1) + minValue;
}
 
void fill_matrix(int ** matrix, int rows, int columns, const int minValue, const int maxValue) {
    while ( rows-- )
        fill_row(*matrix++, columns, minValue, maxValue);
}
 
void dump_row(const int * row, int count) {
    while ( count-- )
        std::cout << *row++ << ( ( count ) ? ' ' : '\n' );
}
 
void dump_matrix(const int ** matrix, int rows, int columns) {
    while ( rows-- )
        dump_row(*matrix++, columns);
}
 
long int row_odds_product(const int * row, int count) {
    long int ret = 1L;
    
    while ( count-- ) {
        if ( *row & 1 )
            ret *= *row;
        ++row;
    }
    
    return ret;
}
 
long long int matrix_odds_product(const int ** matrix, int rows, int columns) {
    long long int ret = 1LL;
    
    while ( rows-- )
        ret *= row_odds_product(*matrix++, columns);
    
    return ret;
}
 
int main() {
    const int minVal = 0;
    const int maxVal = 9;
    
    int ** matrix, rows, columns;
    
    srand(time(NULL));
    
    std::cout << "Rows: ";
    std::cin >> rows;
    std::cout << "Columns: ";
    std::cin >> columns;
    
    matrix = new int* [ rows ];
    for ( int i = 0; i < rows; ++i )
        matrix[i] = new int [ columns ];
    
    fill_matrix(matrix, rows, columns, minVal, maxVal);
    
    std::cout << "Matrix:" << std::endl;
    dump_matrix((const int**)matrix, rows, columns);
    std::cout << "Product of odd elements: " << matrix_odds_product((const int**)matrix, rows, columns) << std::endl;
    
    for ( int i = 0; i < rows; ++i )
        delete [] matrix[i];
    delete [] matrix;
    
    return 0;
}
Код
$ ./matrix_odds_product
Rows: 4
Columns: 5
Matrix:
4 5 7 3 8
8 3 4 3 1
6 7 4 1 2
1 8 1 1 5
Product of odd elements: 33075
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru