47 / 21 / 11
Регистрация: 01.11.2013
Сообщений: 255
1

Парность и непарность

13.04.2015, 21:11. Показов 3192. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В чём проблема?
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
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "rus");
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    int *Massive = new int[4];
    int *Copy = new int[4];
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    for (int i = 0; i < 4; i++)
    {
        cout << "Введите " << i + 1 << "-e число: ";
        cin >> Massive[i];
    }
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    for (int i = 0; i < 4; i++)
    {
        Copy[i] = Massive[i];
    }
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    for (int i = 0; i > 4; i++)
    {
        if (Massive[i] % Massive[i + 1] == 0)
        {
            int j = 2;
            int Result = (Massive[i] % Massive[i + 1]);
            while (Result != 0)
            {
                if ((i + j) < 4)
                {
                    Massive[i] = Copy[i + j];
                    Massive[i + j] = Copy[i];
                }
                else if ((i - 1) > 0)
                {
                    Massive[i] = Copy[i - 1];
                    Massive[i - 1] = Copy[i];
                }
                else
                {
                    cout << "Неравное количество парных и непарных чисел" << endl; 
                    Result = 0;
                }
                j++;
            }
        }
    }
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    for (int i = 0; i < 4; i++)
    {
        cout << i + 1 << "-е значение: " << Massive[i] << endl;
    }
    delete[] Massive;
    delete[] Copy;
    system("pause");
    return 0;
}
Почему значения остаются на своих местах?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.04.2015, 21:11
Ответы с готовыми решениями:

Парность скобок
Суть заключается в том,чтобы прверить на парность 2 видов скобок(круглых и квадратных) рассмотреть...

Проверить скобки на парность
Не могу понять как сделать....очень срочно надо.....помогитееее мнееее...зачет не аолучу :( .........

Парность значений массива
есть задание где ошибка в коде ? #include &lt;iostream&gt; #include &lt;cmath&gt; #include &lt;locale&gt; using...

Сделать разную парность в масиве
from random import sample class Binary_matrix: set_range = list() a_set_array = list()...

12
Неэпический
17869 / 10634 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
13.04.2015, 21:21 2
Цитата Сообщение от maks242 Посмотреть сообщение
(int i = 0; i > 4; i++)
сколько раз выполнится цикл?
0
47 / 21 / 11
Регистрация: 01.11.2013
Сообщений: 255
13.04.2015, 21:24  [ТС] 3
Croessmah, Всё равно всё осталось на своих местах
0
47 / 21 / 11
Регистрация: 01.11.2013
Сообщений: 255
13.04.2015, 21:26  [ТС] 4
Результат в вложении
Миниатюры
Парность и непарность  
0
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
13.04.2015, 21:30 5
смотря что вы делаете. Если проверяете парное число или нет, то это не верно:
Цитата Сообщение от maks242 Посмотреть сообщение
if (Massive[i] % Massive[i + 1] == 0)

строка 23 и точно больше 4 ??
Цитата Сообщение от maks242 Посмотреть сообщение
for (int i = 0; i > 4; i++)
Добавлено через 2 минуты
Цитата Сообщение от maks242 Посмотреть сообщение
Croessmah, Всё равно всё осталось на своих местах
Какая цель задачи?
0
47 / 21 / 11
Регистрация: 01.11.2013
Сообщений: 255
13.04.2015, 21:33  [ТС] 6
_Valera_, строку 23 я изменил. А вот на проверку парности или не парности с данными которые я ввожу подходит и такой оператор

Добавлено через 53 секунды
_Valera_, Цель чтобы не попадалось число парное с парным и тд. подряд
0
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
13.04.2015, 21:33 7
Цитата Сообщение от maks242 Посмотреть сообщение
подходит и такой оператор
Оператор да, а вот код на первый взгляд странный. Зависит от задачи. Что сделать надо?
0
47 / 21 / 11
Регистрация: 01.11.2013
Сообщений: 255
13.04.2015, 21:34  [ТС] 8
_Valera_, Поменять местами значения массивов чтобы парное не встречалось с парным.
0
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
13.04.2015, 21:36 9
Цитата Сообщение от maks242 Посмотреть сообщение
Цель чтобы не попадалось число парное с парным и тд.
Ну а вы проверили не является ли следующий элемент массива делителем текущего
0
47 / 21 / 11
Регистрация: 01.11.2013
Сообщений: 255
13.04.2015, 21:42  [ТС] 10
_Valera_, С числами 2 и 2 не нужна проверка на делитель.

Добавлено через 1 минуту
C++
1
if (Massive[i] % Massive[i + 1] == 0 || Massive[ i+ 1] % Massive[i] == 0)
0
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
13.04.2015, 21:45 11
Цитата Сообщение от maks242 Посмотреть сообщение
if (Massive[i] % Massive[i + 1] == 0 || Massive[ i+ 1] % Massive[i] == 0)
Ну ок, а если будут числа 2 и 4, то остаток 2, вот и все программа уже тут не работает, а так ошибка где-то в коде
0
47 / 21 / 11
Регистрация: 01.11.2013
Сообщений: 255
13.04.2015, 21:46  [ТС] 12
Если будет 2 и 4 сработает вот эта часть кода
C++
1
|| Massive[ i+ 1] % Massive[i] == 0
0
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
13.04.2015, 21:56 13
Цитата Сообщение от maks242 Посмотреть сообщение
Если будет 2 и 4 сработает вот эта часть кода
ладно, тогда 6 и 4

Добавлено через 3 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    for (int i = 0; i < 4; i++)
    {
        if(Massive[i] & 1 && i%2 == 0 )
        {
            for(int j =1;j<4;j+=2)
                if(Massive[j]%2==0)
                {
                    int c = Massive[i];
                    Massive[i] = Massive[j];
                    Massive [j] = c;
                    break;
                }
                
        }
    }
Вот, вроде боле-мене работает. Но нет проверки если действительно одних элементов больше.
0
13.04.2015, 21:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.04.2015, 21:56
Помогаю со студенческими работами здесь

Множества. Слова. Алфавитный порядок.Парность
Дано: последовательность слов из латинских букв , между соседними словами - промежуток. Вывести в...

Проверить парность расстановки круглых скобок
В заданном предложении проверить парность расстановки круглых скобок. Вложение скобок допускается.

Определить парность цифр двухзначного числа
Помогите, не знаю что уже делать, дебагер выдаёт деление на ноль, перепробовал всё что знал (Где...

Проверить парность блочных скобок begin-end
Привет,форумчане!помогите с задачкой,пожалуйста)) Напишите программу, которая во входной...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru