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

Вывести элементы массива, которые повторяются ровно два раза - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выдает ошибку при компиляции. Не могу понять почему http://www.cyberforum.ru/cpp-beginners/thread1020245.html
Помогите с кодом. Я вижу что ошибка уровня самых низов но не могу понять все равно что тут не так. Вот эта ошибка: // error C2601: 's_2' : local function definitions are illegal // /////////////////////////////////////////////////////////////////////////////////////// Программа для перевода введенных чисел в другую систему исчисления///...
C++ Структура общежитие, сделать комплексную сортировку по наличию балкона + по площади припадающей на 1 жителя Такое задание: дана структура общежитие, сделать комплексную сортировку по наличию балкона + по площади припадающей на 1 жителя! Подкоректируйте код void sort2(){ for(int i=0; i<size;i++){ for(int j = i + 1; j<size; j++) { if (ar.ploscha/ar.meshk>ar.ploscha/ar.meshk&&ar.balk==true){ gurt x = ar; ar = ar; ar = x; ... http://www.cyberforum.ru/cpp-beginners/thread1020242.html
Преобразовать массив цифр в строку для вывода на cout<< C++
Реализую класс длинных чисел (только+). Числа представляю в виде массиве, где каждый элемент это цифра. Но не могу понять, как его вывести. Я делал так: Внутри класса перегрузил оператор operator char*() const { char res; for (int i=0;i<Size;i++) {
C++ Генерирование подмножеств в лексикографическом порядке
Всем привет...Дали задание по лабе: Имеется универсальное множество U = {a,b,c,d,e,f}; 1)Генерация всех подмножеств U с помощью +1 к двоичному числу 2)Пользователь вводит 1<k<6. Сгенерировать все k элементы подмножества множества U в лексикографическом порядке Я сделал пункт 1)а со 2-м проблемы,код в интернете вроде найти не проблема,но понять его не могу,а препод сильно спрашивает по коду:(...
C++ Удаление произвольного символа из динамической строки http://www.cyberforum.ru/cpp-beginners/thread1020229.html
Здравствуйте. Посоветуйте способ удаления заданного символа из динамической строки. Спасибо.
C++ Не могу найти ошибку Написал программу, которая генерирует размещение с n по k в лексикографическом порядке. Работает впринципе правильно, но некоторые размещения выводит цыклично несколько раз подряд. Помогите найти ошибку. #include <iostream> #include <math.h> #include <stdio.h> #include <conio.h> using namespace std; подробнее

Показать сообщение отдельно
Liden
19 / 19 / 2
Регистрация: 19.11.2013
Сообщений: 83
27.11.2013, 14:57     Вывести элементы массива, которые повторяются ровно два раза
luigration, бился с задачей целый день) проблема у меня была в том, что выводилось повторяющее число 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
#include "stdafx.h"
#include <iostream>
#include <cstdlib>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "rus");
    int size, index=0, sum=0;
    cout<<"Введите размер массива: "; cin>>size;
 
    int *massive=new int [size];
    int *array=new int [255];
    for(int i=0; i<=size-1; i++){
        cout<<"Введите "<<i<<" элемент массива: "; 
        cin>>massive[i];
        }
 
    cout<<"Числа, повторяющееся ровно два раза: ";
 
    for (int k=0; k<=size-1; k++){ //запускаем цыкл на сравнение чисел в массиве
        int counter=0;
        for (int j=0; j<=size-1; j++) { 
            if(massive[j]==massive[k]){ 
                
                counter++;
                index=massive[j];//если (massive[j]==massive[k]) выполняется, то присваиваем index значение элемента массива
                }
            }
        
        if(counter==2){ //если число совпадений=2, то 
            array[sum]=index; //заносим значение index последовательно в массив array
            sum++;
 
    }
}
    for(int a=0; a<=sum-1; a++){ //запускаем пузырьковую сортировку из повторяющихся элементов массива
                for(int b=(sum-1);b>=a;b--){
                    if(array[b-1]>array[b]){
                        int t=array[b-1];
                        array[b-1]=array[b];
                        array[b]=t;
                    }
                }
            }
        for(int c=0; c<=sum-2; c++){ //сравниваем эелемент массива с последующем элементов (для того чтобы выводилась лишь одна цыфра)
                if(array[c]!=array[c+1]) cout<<array[c]<<", ";
        
      }
        cout<<(array[sum-1])<<".";
    delete [] massive;
    delete [] array;
    cout<<endl;
 
    system ("pause");
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru