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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
St93
0 / 0 / 0
Регистрация: 08.07.2012
Сообщений: 13
#1

Работа со строками двумерного массива - C++

10.04.2013, 18:20. Просмотров 286. Ответов 1
Метки нет (Все метки)

Вывести элементы к-ой строки массива, присутствующие только в к-ой строке. к вводится с клавиатуры.
Например дан массив
1 2 3
1 4 5
3 2 1
к вводим равной 2
выводится вторая строка 1 4 5
выводятся элементы 2-ой строки присутствующие только в ней.
это 4 5

помогите доработать программу
вот сама прога
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
#include <iostream>
#include<vector>
#include<ctime>
 
using namespace std;
int main()
{ 
    srand(time(0));
 int  K,t,n;
 cin>>n;
    cin>>t;
vector<vector<int>> v; //задаем массив
    v.resize(n);
    for(int i=0; i<v.size(); i++)
            v[i].resize(t);
    for(int i=0; i<n; i++) //заполняем случайными числами
    { 
        for(int j=0; j<t; j++)
        {
            
            v[i][j]=rand()%11;;
            cout<<v[i][j]<<"\t";
        }
        cout<<"\n";
    } 
    cout<<"\n";
 
  cout << "K = ";  //вывод к-й строки
cin >> K;   
while(K < 1 || K > n)
{
  cout << "error  " <<"\n";  
  cout << "K = "; 
  cin >> K;   
}
for(int i = 0; i < t; i ++) 
  cout << v[K-1][i] << "\t";
return(0);
}
она уже выводит эл к -ой строки
осталось только вывести эл присутствующие только в к-ой строке.
помогите пож
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2013, 18:20     Работа со строками двумерного массива
Посмотрите здесь:

Передача двумерного массива в функцию и работа с ним - C++
Имею вызов: fillSquareArrayRandom(&amp;arr, arrMax, arrMax1); и описание: void fillSquareArrayRandom(short int *arr, short...

Обращение к строке двумерного массива и работа с ней - C++
Собственно задача: Дан двумерный массив целых чисел. а) Составить программу, определяющую, верно ли, что сумма элементов строки массива с...

Работа со строками - C++
У меня есть есть структурные переменные и указатели на них, естественно. предположим struct name() { char b=&quot;Hello!&quot;; ...

Работа со строками - C++
Не могу написать правильно работающую программу для условия: Написать программу, которая к каждому слову в тексте добавляет сочетание...

Работа со строками - C++
Всем доброго времени суток! Я учу С++ (в вузе) вроде всё делал сам но вот столкнулся с проблемой которую уже долго не магу решить:( ...

Работа со строками - C++
Товарищи, такая вот проблема. Есть задача. Прочитать строки из файла, а потом записать их следующим образом. Первую оставить, вторую...

Работа со строками - C++
Вставить после вхождения строки str подстроку str1. Попытался сам сделать, но дальше этого работа не идёт. Нужна помощь. #include...

Работа со строками. - C++
Лишние пробелы. Дана строка, состоящая из слов, разделенных пробелами. Напишите программу, удаляющую лишние пробелы. Пробел считается...

Работа со строками - C++
ммм, в общем задание такое: Если честно чувствую себя тупым, читая это задание... Препод сказал, что строка вводится без пробелов...

Работа со строками - C++
#include &quot;Stdafx.h&quot; #include &quot;conio.h&quot; using namespace std; int main(){ const char* a = {&quot;000&quot;,&quot;111&quot;,&quot;222&quot;,&quot;333&quot;}; const char b...

Работа со строками - C++
Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных (маленьких) латинских букв; между соседними...

Работа со строками - C++
Даны два слова. Для каждой буквы первого слова определить, входит ли она во второе слово. Повторяющиеся буквы первого слова не...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Olivеr
412 / 408 / 13
Регистрация: 06.10.2011
Сообщений: 831
10.04.2013, 23:16     Работа со строками двумерного массива #2
Добавьте функцию перед int main()
C++
1
2
3
4
5
6
7
8
9
10
11
12
bool isUniq (const vector< vector<int> > &vec, int tryVal, unsigned first, unsigned last)
{
    bool uniq(true);
    --first;
    while (++first!=last)
        if ( find(vec[first].begin(), vec[first].end(), tryVal) != vec[first].end() ) {
            uniq = false;
            break;
        }
    
    return uniq;
}
И в конце главной функции (main):
C++
1
2
3
4
5
    for (size_t i = 0; i != v[K-1].size(); i++)
    {
        if (isUniq(v, v[K-1][i], 0, K-1) && isUniq(v, v[K-1][i], K, v.size()))
        cout << v[K-1][i] << "\t";
    }
+ добавьте #include <algorithm>
Ответ Создать тему
Опции темы

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