Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 22.02.2017
Сообщений: 103
1

Последовательность чисел, которые не повторяются

08.02.2018, 22:57. Просмотров 610. Ответов 4
Метки нет (Все метки)

Как разработать программу, которая читает с клавиатуры последовательность чисел, ни одно из которых не повторяется?
В программе я заполняю массив числами с клавы и дальше делаю разные манипуляции.
Но вот сами числа надо ввести в определенном диапазоне (от 2 до 255) и так, чтобы они не повторялись.

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
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    int peredMIN, chetw;
    int size;
    bool p,f;
    double sred=0;
    cout << "Enter the number of elements in the array:";
    cin >> size;
    int *a = new int[size];
 
    for (int i = 0; i < 1; i++)
    {
        cin >> a[i];
    }
    sred = a[0];
    int min = a[0];
    int max = a[0];
    
    for (int i = 1; i < size; i++)
    {
        int j = 2;
        cin >> a[i];
        sred = (a[i] + sred) / j;
        if (min > a[i])
        {
            min = a[i];
            if (a[i] == min)
            {
                peredMIN = a[i - 1];
            }
        }
        if (max < a[i])
        {
            max = a[i];
        }
        if (i == 3)
        {
            chetw = a[i];
        }
        j++;
    }
    cout << '\n';
    cout <<"size:"<< size << endl;
    cout <<"sred:"<< sred << endl;
    cout << "min:"<< min << endl;
    cout << "max:"<< max << endl;
    cout << "chetw:"<<chetw << endl;
    cout << "peredMIN:"<<peredMIN << endl;
 
    delete[]a;
 
    system("pause");
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.02.2018, 22:57
Ответы с готовыми решениями:

Найти количество чисел , которые повторяются в массиве, а также сколько именно раз они повторяются
Помогите, пожалуйста, Пользователь определяет размер массива, заполняет его и программа считает...

Генерация массива целых случайных чисел, которые не повторяются
Нужно получить числа от 0 до 15 в рандомном порядке, делаю так: BOOL...

Пользователь вводит 8 чисел, вывести числа которые повторяются 2 или больше раз
Я понимаю, в средние века за такой код сжигали на костре. Но я только учусь. Подскажите как...

Найти и вывести на экран все элементы, которые которые повторяются более N/2 раз
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int _tmain() {...

4
565 / 348 / 132
Регистрация: 15.09.2017
Сообщений: 1,230
08.02.2018, 23:10 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream> 
#include <set>
 
using namespace std;
 
int main() {
    int n, a;
    cin >> n;
    set<unsigned char> arr;
    for (int i(0); i < n; i++) {
        cin >> a;
        arr.insert(a);
    }
    for (const int &i : arr) cout << i << ' ';
    cout << endl;
 
    return 0;
}
0
1462 / 1170 / 551
Регистрация: 08.01.2012
Сообщений: 4,509
08.02.2018, 23:10 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for (int i = 0; i < size;)
    {
        cout<<"a["<<i<<"]=";
        int x;
        cin >>x;
        if(x>=2 && x<=255)
        {
           int j;
           for(j=0; j<i; j++)
             if(a[j]==x) break;
           if(j==i) a[i++]=x;
        }
    }
0
1731 / 1326 / 1405
Регистрация: 28.10.2016
Сообщений: 4,265
08.02.2018, 23:11 4
Цитата Сообщение от Iridze Посмотреть сообщение
я заполняю массив числами с клавы...надо ввести...так, чтобы они не повторялись
ну так и вводите разные числа *profit*
0
1455 / 921 / 807
Регистрация: 30.04.2016
Сообщений: 3,139
09.02.2018, 21:08 5
Iridze, здравствуйте! Я бы сделал так:

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
#include <iostream>
#include <set>
#include <algorithm>
 
using namespace std;
 
int main()
{
    int n;
    set<int> x;
    cout << "Enter an array size:\n";
    cout << "n = ";
    cin >> n;
    int* arr = new int[n];
    cout << "Enter some unrepeated elements:\n";
    for (int i = 0; i < n; i++)
    {
    again:
        cout << i + 1 << " -> ";
        cin >> arr[i];
        if (x.find(arr[i]) == x.end() && arr[i] >= 2 && arr[i] <= 255)
            x.insert(arr[i]);
        else
        {
            cout << "Error! Enter again, please!\n";
            goto again;
        }
    }
    cout << "Target array:\n";
    for (int i = 0; i < n; i++)
    {
        cout << arr[i] << " ";
    }
    delete [] arr;
    system("pause");
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.02.2018, 21:08

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Дана последовательность из М чисел. Вычислить сумму и количество чисел, которые меньше 5
1.Дана последовательность из М чисел. Вычислить сумму и количество чисел, которые меньше 5.

Ввести некоторую последовательность чисел и создать динамический массив из чисел, которые завершаются цифрой 1
Ввести некоторую последовательность чисел и создать динамический массив из чисел, которые...

Ввести некоторую последовательность чисел и создать динамический массив из чисел, которые завершаются цифрой5
Ввести некоторую последовательность чисел и создать динамический массив из чисел, которые...

С клавиатуры вводится последовательность 8 или чисел. Найти среднее арифметическое тех чисел, которые являются простыми
Помогите пожалуйста написать программу. С клавиатуры вводится последовательность 8 или чисел. Найти...


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

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

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