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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ упростить http://www.cyberforum.ru/cpp-beginners/thread899903.html
помогите упростить часть листинга #include <iostream> #include <math.h> #include <conio.h> using namespace std; int main() {
C++ Известны данные о зарплате каждого работника бригады, в бригаде 25 человек Известны данные о зарплате каждого работника бригады, в бригаде 25 человек. Определить суммарную заработную плату бригады и количество работников, получавших зарплату выше средней. http://www.cyberforum.ru/cpp-beginners/thread899893.html
Сортировка в таблице C++
Как сделать сортировку по алфавиту или по возрастанию или убыванию чисел в столбике в таблице StringGrid, если можно то с примером.
Написать через функции пользователя. Найти в тексте для каждого слова букву, наиболее часто встречается C++
Суть задания: Текст вводится с клавиатуры. Исходный текст и результаты должен быть выведен на экран. Найти в тексте для каждого слова букву, наиболее часто встречается. #include <iostream> #include <string> #include <sstream> #include <algorithm> #include <iterator> #include <unordered_map>
C++ С клавиатуры вводится массив из 10 чисел http://www.cyberforum.ru/cpp-beginners/thread899872.html
С клавиатуры вводится массив из 10 чисел. Определить количество положительных элементов этого массива.
C++ Массив и функции пользователя (замена элементов по принадлежности к промежутку) Помогите плз написать прогу на одномерный динамический массив. Массив может заполнятся рандомом, но главное, это чтобы в программе были использованы функции пользователя.Если в заданном массиве хотя бы одно значение элементов принадлежит промежутку , то все элементы, которые не принадлежат этому промежутку, заменить на z. Значение x,y,z пользователь вводит с клавиатуры. Спасибо подробнее

Показать сообщение отдельно
Kuzia domovenok
1888 / 1743 / 117
Регистрация: 25.03.2012
Сообщений: 5,916
Записей в блоге: 1
12.06.2013, 21:03     Дана матрица. Вычислите сумму и произведение нечётных отрицательных элементов матрицы, удовлетворяющих условию
Цитата Сообщение от Nikolai699 Посмотреть сообщение
Kuzia domovenok, поясните пожалуйста что значит эта запись
C++
1
(a[i][j]&1)
Особая проверка числа на нечётность.
Нечётное число это число, которое не делится без остатка на 2.
Оператор получения остатка от деления в языке Си это %
Поэтому аналогично вместо этой записи можно было б написать
C++
1
(a[i][j]%2!=0) //если остаток от деления на 2 не равен 0
Однако есть более оптимальный способ проверки нечётности.
По двоичному представлению числа, его чётность/нечётность можно определить без операции деления.
Достаточно посмотреть, чему равен младший разряд.
Как в десятичной системе ноль в младшем разряде числа является признаком делимости на 10. (550 делится на 10)
Так и аналогично в двоичной системе ноль в младшем разряде числа является признаком делимости на 2! (110(дв.) делится на 2)
Проверить отсутствие нуля во младшем разряде можно операцией побитового "И" с числом "один".
Так как в числе один в двоичной системе все разряды нули, кроме одного младшего. То результат операции "И" будет равен единице, если число нечётное и нулю, если число чётное.
6&1 равно 0
7&1 равно 1
Операция справедлива и для отрицательных чисел, представляемых в дополнительном коде.
Поэтому if (a[i][j]&1) означает "если a[i][j] нечётное"
 
Текущее время: 02:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru