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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
#1

Найти количество четных и нечетных членов последовательности - C++

13.05.2010, 19:56. Просмотров 1302. Ответов 2
Метки нет (Все метки)

Даны натуральные числа n, p, q, a1, a2,.....,an, причем n>=q>p>=1. Найти количество четных и нечетных членов последовательности a, a2,...,an. Определить значения наименьшего четного члена и наибольшего нечетного члена последовательности ap, ap+1,....,an.
Упорядочить члены последовательности ap, ap+1,....,aq по убыванию, используя алгоритм сортировки методом прямого выбора.

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
include <iomanip.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
main()
 
{
int n,//kol-vo el-tov v ishodnom massive
    m;//kol-vo el-tov v rezult massive
int *a,// massiv (ishodnii i rezultiruuchii)
    *temp_a;// vremnnii massiv
int i,j; //schetchik chiklov
int c, nc;//schetchik chetnosti
int imax, //indeks maks. el-ta
    imin; //indeks min el-ta
int temp;//bufer dlya sortirovki
int p,q;//peremenii dlya raboti ciklov
{
 clrscr();
//formirovanie ishodnogo massiva
cout<<"Vvedite P: ",cin>>p;
cout<<"Vvedite Q: ",cin>>q;
cout<<"Vvedite kol-vo elementov massiva: ", cin>>n;
a=new int[n];
cout<<"Vvedite "<<n<<" elementov massiva: ";
for (i=0; i<n; i++) cin>>a[i];
cout<<"Ishodnii massiv:"<<endl;
for (i=0; i<n; i++) cout<<"a["<<i<<"]="<<a[i]<<" ";
cout<<endl;
}
//proverka na chetnost i nechetnost
c=0; nc=0;
for (i=0; i<n; i++){
if (a[i]%2==0) c++;
else nc++;}
cout<<c<<" ";
cout<<nc;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2010, 19:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти количество четных и нечетных членов последовательности (C++):

Найти в каждом числе последовательности количество четных и нечетных цифр - C++
Помогите пожалуйста с задачками. 3. Вводится последовательность целых чисел, 0 – конец последовательности. Найти в каждом числе...

Получить новый массив из всех нечетных/четных членов последовательности по условию - C++
Дано натуральное число n и целые числа a1,...an. Если в данной последовательности ни одно положительное число не расположено после...

Посчитать количество четных и количество нечетных членов массива - C++
Здравствуйте! Прошу помочь в создании одномерного динамического массива с целыми числами. Посчитать кол-во четных и кол-во нечетных. ...

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

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

Определить количество членов последовательности, являющихся квадратами четных чисел - C++
Обьясните пожалуста как решить такую задачу: Даны целые положительные числа N, a1, ..., aN. Используя только элементарные...

2
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
14.05.2010, 00:08 #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
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
75
76
77
78
79
80
81
82
83
84
#include <iostream>
#include <vector>
#include <algorithm>
#include <ctime>
#include <functional>
#include <limits>
#define N 20
#define P 5
#define Q 15
 
using namespace std;
 
class generator
{
public:
    generator() : prev() {}
    generator(int arg) : prev(arg) {}
 
    int operator() ( )
    {
        prev += rand() % 5; 
        return prev;
    }
private:
    int prev;
};
 
class comparator
{
public:
    comparator() : m_even(), m_odd(), m_minEven(numeric_limits<int>::max()), m_maxOdd() 
    {}
 
    void operator() (int& arg)
    {
        if (arg & 1)
        {
            ++m_odd;
            if (m_maxOdd < arg) m_maxOdd = arg;
        }
        else
        {
            ++m_even;
            if(m_minEven > arg) m_minEven = arg;
        }
    }
    void print()
    {
        cout << "Even numbers: " << m_even << "\nOdd numbers: " << m_odd << endl;
    }
    int getMinEven() {return m_minEven;}
    int getMaxOdd() {return m_maxOdd;}
 
private:
    int  m_minEven;
    int  m_maxOdd;
    short m_even;   //Парні числа
    short m_odd;    //Непарні числа
};
 
int main()
{
    vector<int> numbers(N);
    srand(static_cast<unsigned>(time(NULL)));   
 
    generate(numbers.begin(), numbers.end(), generator());
        cout << "Vector's elements:\n";
        copy(numbers.begin(), numbers.end(), ostream_iterator<int>(cout, " "));
 
    comparator first = for_each(numbers.begin(), numbers.end(), comparator());
        cout << "\nReport [A..An]:\n";
            first.print();
    
    comparator second = for_each(numbers.begin() + P, numbers.end(), comparator());
        cout << "Report [Ap..An]:\nminEven number: " << second.getMinEven() << "\nmaxOdd number: "
             << second.getMaxOdd() << endl;
 
    sort(numbers.begin() + P, numbers.begin() + Q, greater<int>());
        cout << "Vector's elements after sort:\n";
            copy(numbers.begin(), numbers.end(), ostream_iterator<int>(cout, " "));
                cout << endl;
    system("pause");
    return 0;
}
Сортировку можно написать нужным алгоритмом
1
CFYZ
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 187
15.05.2010, 00:38  [ТС] #3
А можно это как-то упростить, т.к. почти все что написано в Вашей программе мы еще не проходили и соответственно. будет преподу ясно, что сам я это сделать не смог бы.

Добавлено через 14 часов 22 минуты
Помогите исправить ошибки в этой проге.
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
#include <iomanip.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
main()
 
{
int n,//kol-vo el-tov v ishodnom massive
    m,//kol-vo el-tov v rezult massive
    f,
    g;
int *a,// massiv (ishodnii i rezultiruuchii)
    *b,// vremnnii massiv
    *v;
 
int i,j; //schetchik chiklov
int c, nc;//schetchik chetnosti
int imax, //indeks maks. el-ta
    imin; //indeks min el-ta
int temp;//bufer dlya sortirovki
int p,q;//peremenii dlya raboti ciklov
{
 clrscr();
//formirovanie ishodnogo massiva
cout<<"Vvedite P: ",cin>>p;
cout<<"Vvedite Q: ",cin>>q;
cout<<"Vvedite kol-vo elementov massiva: ", cin>>n;
a=new int[n];
cout<<"Vvedite "<<n<<" elementov massiva: ";
for (i=0; i<n; i++) cin>>a[i];
cout<<"Ishodnii massiv:"<<endl;
for (i=0; i<n; i++) cout<<"a["<<i<<"]="<<a[i]<<" ";
cout<<endl;
}
//proverka na chetnost i nechetnost
c=0; nc=0;
for (i=0; i<n; i++){
if (a[i]%2==0) c++ && a[i]=b[f];
else nc++ && a[i]=v[g];}
cout<<c<<" ";
cout<<nc;
{cout<<"Massiv chetnih:"<<endl;
for (f=0; f<n; f++) cout<<"b["<<f<<"]="<<b[f]<<" ";}
{cout<<"Massiv ne chetnih:"<<endl;
for (g=0; g<n; g++) cout<<"v["<<g<<"]="<<v[g]<<" ";}
return 0;}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2010, 00:38
Привет! Вот еще темы с ответами:

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

Найти количество четных и количество нечетных элементов ряда - C++
Здравствуйте, помогите решить задачу: 1. Найти количество четных и количество нечетных элементов ряда: 2+x 3+x 4+x…10+x 2. Найти...

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

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


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

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

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