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

Анализ массива - C++

Восстановить пароль Регистрация
 
357STALKER
0 / 0 / 0
Регистрация: 18.05.2009
Сообщений: 8
01.02.2010, 19:36     Анализ массива #1
Здравствуйте, программисты.
Помогите решить задачу:
"Написать программу, которая вводит значения элементов целочисленного массива, анализирует их и выводит на экран те элементы, которые встречаются в массиве только один раз."
Половину написал, вот набросок:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <cstdlib>
#include <iostream>
 
using namespace std;
int main()
{int n=10;
int a[n];           //инициализация массива
for(int i=0;i<n;i++)
{a[i]=rand()%10;    //заполнение массива
                }
for(int i=0;i<n;i++)   //вывод массива
{cout<<" "<<a[i];}
 
cout<<"\nVelichiny: "; //отсюда не знаю
for(int i=0;i<n;i++)
 for(int j=0;j<n;j++)
{
if(a[j]==a[i])
{cout<<" "<<a[i];
}
}
getchar();
}
Я не знаю, как сделать вторую часть задания "...анализирует их и выводит на экран те элементы, которые встречаются в массиве только один раз". Помогите, пожалуйста.

Добавлено через 5 часов 8 минут
Помогите, кто-нибудь, пожалуйста.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Darky
Быдлокодер
 Аватар для Darky
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
01.02.2010, 19:44     Анализ массива #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
//#include <cstdlib>
#include <iostream>
  #include <stdlib.h>
  #include <time.h>
    #define n 10
 
//using namespace std;
int main()
{
srand((unsigned)time(0));
  int a[n];           //инициализация массива
    for(int i=0;i<n;i++)
    {
      a[i]=rand()%22;    //заполнение массива
      cout<<a[i]<<" ";
    }
      bool flag=false;
      cout<<"\nТолько один раз:\n";
    for (int i=0;i<n;i++)
    {
      for (int j=0;j<n;j++)
        if (a[i]==a[j] && i!=j) flag=true;
      if (flag==false) cout<<a[i]<<" ";
      flag=false;
    }
}
Андрейка
407 / 211 / 22
Регистрация: 25.03.2009
Сообщений: 710
01.02.2010, 19:53     Анализ массива #3
357STALKER,
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
#include <iostream>
#include <algorithm>
 
template <typename T, const size_t N> void _func(T (&arr)[N])
{
    std::cout << "заполните массив:" << std::endl;
 
    for (size_t i = 0 ; i < N ; i++)
        std::cin >> arr[i];
 
    std::cout << "элементы которые встречаются в массиве 1 раз" << std::endl;
 
    for (size_t i = 0 ; i < N ; i++)
        if (std::count(arr, arr+N, arr[i]) == 1) std::cout << arr[i] << std::endl;
}
    
 
int main()
{
    setlocale(LC_ALL,"RUSSIAN");
    const size_t N = 5;
 
    int arr[N];
    _func(arr);
 
    return 0;
}
357STALKER
0 / 0 / 0
Регистрация: 18.05.2009
Сообщений: 8
01.02.2010, 22:53  [ТС]     Анализ массива #4
Спасибо за помощь!
Yandex
Объявления
01.02.2010, 22:53     Анализ массива
Ответ Создать тему
Опции темы

Текущее время: 16:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru