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

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

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

Найти количество нечетных чисел в n-ой строке треугольника Паскаля - C++

03.07.2015, 13:00. Просмотров 865. Ответов 2
Метки нет (Все метки)

Во входном файле содержится число n (0 ≤ n ≤ 2⋅10^9).
Выходной файл должен содержать одно число — количество нечетных чисел в n-ой строке треугольника Паскаля.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.07.2015, 13:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти количество нечетных чисел в n-ой строке треугольника Паскаля (C++):

Для чисел от -50 до 50 найти количество четных отрицательных и количество положительных нечетных чисел - C++
Ребят,всем привет! Помогите пожалуйста решить данную задачу.Ее нужно написать на я зыке C /C++,каждую из них с постусловием и...

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

В файле с целыми числами найти количество парных, количество удвоенных нечетных, количество квадратов нечетных - C++
Задано файл, компонентами которого являются целые числа. Найти: a) количество парных среди компонент файла; b) количество...

Найти количество нечетных чисел на промежутке - C++
найдите количество нечетных чисел на промежутке {A, B}.(С++) Пожалуйста не используйте операторы сложные, я новичок. Если не сложно,...

Найти количество нечетных чисел в диапазоне [A,B] - C++
Проблему у меня , не получается прописать программу . Помогите лошаре:D

Найти количество нечетных чисел, находящихся между A и B - C++
Можете написать программу Вводятся 2 числа A и B. Нужно найти количество нечетных чисел, находящихся между A и B. Спасибо

2
dvano
132 / 63 / 16
Регистрация: 18.06.2014
Сообщений: 216
Завершенные тесты: 1
03.07.2015, 15:06 #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
#include <cmath>
#include <cstdint>
#include <iostream>
 
inline uint32_t factorial(uint32_t value)
{
   if (value == 0 || value == 1)
      return 1;
   
   uint32_t temp = 1;
   for (uint32_t i = 0; i < value; i++)
      temp *= value - i;
   
   return temp;
}
 
int main()
{
   uint32_t n = 3;
   uint32_t l = 0;
   for (uint32_t k = 0; k < pow(2, n - 1); k++)
   {
      uint32_t c = factorial(n) / factorial(k) / factorial(abs(n - k));
      if (c & 1) l++;
   }
   std::cout << "result: " << l << '\n';
   return 0;
}
0
ture
441 / 334 / 126
Регистрация: 27.11.2014
Сообщений: 1,042
03.07.2015, 16:13 #3
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>
using std::cout;
using std::endl;
using std::cin;
 
 
int main(){
    setlocale(LC_ALL, "rus");
    
    //Инициализация
    unsigned int bitLine = 0;
        
    //Номер строки треугольника Паскаля
    cout << "Укажите номер строки треугольника Паскаля - ";
    int n;
    cin >> n;
 
    //Счетчик нечетных чисел
    int iCnt;
    for(int i = 1; i <= n; i++){
        //Выставляем общее количество чисел в строке
        iCnt = i;   
        
        //Преобразуем последовательность четных (1) и нечетных (0)
        bitLine <<= 1; //двигаем влево
        bool a = bitLine & (0x1 << 1);
        bool b;     
        for(int j = 1; j < i-1; j++){
            //Получить биты
            b = a;
            a = bitLine & (0x1 << (j + 1));                     
            
            if((!a^b) != b) {
                //Замена бита на противоположные
                unsigned int m = 0x1<<j;
                if(b)
                    bitLine &= ~m;
                else
                    bitLine |=  m;
            }
 
            //Четные числа исключаем из общего количества
            iCnt -= !a^b;
        }
    }
 
    cout << "В строке " << n << " имеется " << iCnt << " нечетных чисел" << endl;
    
    system("pause");
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.07.2015, 16:13
Привет! Вот еще темы с ответами:

Найти наибольшее из нечетных и количество четных чисел - C++
В последовательности а1 … аn найти наибольшее из нечетных и количество четных чисел. я в ней затруднился)

Числа. Подсчитать количество четных и нечетных чисел- разрядов. Найти суммы только всех четных и только нечетных, проверить какая из сумм больше - C++
Добрый день, не могу понять как же составить программу для этой задачи без использования массивов. Запросить у пользователя...

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

Найти количество удвоенных нечетных чисел среди компонентов файла - C++
Заполнить файл f целыми числами, полученными с помо*щью генератора случайных чисел. Найти количество удвоенных нечетных чисел среди...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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