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

Исключить из массива все повторяющиеся элементы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Метод Карацубы http://www.cyberforum.ru/cpp-beginners/thread1176992.html
Помогите реализовать метод Карабуцы для длинных чисел. У меня получилось сделать его только для более коротких чисел. Ведь если допустим взять числа длиной в 10000 символов, то проделывать деление...
C++ Перегрузка оператора = Есть некий класс. И два класса-наследника. Надо перегрузить оператор =, к тому же в дочерних классах вызывать перегрузку в базовом классе. Ошибка кода в том, что нельзя перегрузить оператор в классе,... http://www.cyberforum.ru/cpp-beginners/thread1176984.html
Как визуализировать программу C++
Есть полностью готовая консольная программа,которая решает СЛАУ.Как мне визуализировать ее?Как например сделать,чтобы я мышкой тыкал на какое-то поле и вводил значения коэффициентов уравнений?
Вычислить время выполнения C++
Помогите пожалуйста вычислить время выполнения данной программы. Уже что только не вставляла, но программа просто не выводит время, ошибок тоже никаких не выдает. Подскажи, что куда вставлять. ...
C++ Sdl 2.0 Dev-cpp http://www.cyberforum.ru/cpp-beginners/thread1176922.html
Под спойлером лог компилятора, по сути не может найти winapifamily.h, где его брать, куда пихать итд, сдл поставил полностью 25 0 E:\sdl2\x86_64-w64-mingw32\include\SDL2\SDL_config.h In file...
C++ Открытие Ini файла Есть файл в формате ini: bank1=Belarusbank currency1=USD buy1=3050 sell1=3055 bank2=Belinvestbank buy2=3045 sell2=3053 currency2=USD подробнее

Показать сообщение отдельно
Vergil
42 / 36 / 14
Регистрация: 11.11.2009
Сообщений: 243
17.05.2014, 06:43
virtuos553, Это если он вдруг решит осваивать их(не сейчас, так потом). Для того, я и прокомментировал.
Кстати, вот доделанная прога. 0 теперь будет на своем месте.
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <iostream>
//---------------------------------------------------------------------------
 
#pragma argsused
 
using namespace std;
 
int main()
{
 
    int n,i,k,p,j,chet,i1;
    p=0;
    k=0;
    cout<<"vvedite kolvo elementov massiva"<<"\n";
    cin>>n;
    int* mas= new int [n];//заводим массив для первоначального массива который будем считывать
    for(i=0;i<n;i++)//заполняем его
        {
            
        cin>>mas[i];
        if (mas[i]<=0)
        {mas[i]--;}
    }
 
 
    int *new_mas=new int [n];//массив в котором будут хранится элементы без повтора
    for(i=0;i<n;i++)
        new_mas[i]=0;
 
    for(i=0;i<n;i++)//берем каждый элемент массива и проверяем был ли он до него в массиввке, если его не было, тогда записываем его в наш новый массив, если был , то пропускаем.
    {
        for(j=0;j<i;j++)
        {
            if(mas[i]==new_mas[j])
            k=1;//счетчик повтора элемента
        }
 
        if(k==0)
            new_mas[p]=mas[i];
        p++;
        k=0;
    }
 
    for(i=0;i<n;i++)
    {   if (new_mas[i]!=0) {
 
        
        if(new_mas[i]<0)
        {cout<<new_mas[i]+1<<" ";}
        else
        {cout<<new_mas[i]<<" ";} }
 
    }
    cout<<"\n";
 
    system("pause");
 
}
а вот альтернативный вариант использующий только один массив.
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <iostream>
//---------------------------------------------------------------------------
 
#pragma argsused
 
using namespace std;
 
int main()
{  int n,i,k,p,j,chet,i1, tmp;
    p=0;
    k=1;
    cout<<"vvedite kolvo elementov massiva"<<"\n";
    cin>>n;
    int* mas= new int [n];//заводим массив для первоначального массива который будем считывать
    for(i=0;i<n;i++)//заполняем его
        { tmp=0;
    cin>>mas[i];
    if (i!=0) {    
    for (int j = 0; j < k; j++) {
    if(mas[i]==mas[j]){tmp=1;}
    if (j==k-1&&tmp==0) {
     mas[k]=mas[i];k++;}}}}
 
    for(i=0;i<k;i++)
    { cout<<mas[i]<<" "; }
    cout<<"\n";
    system("pause");
    }
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru