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

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

Войти
Регистрация
Восстановить пароль
 
KeyGen
384 / 291 / 6
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
#1

Алгоритм объединение. - C++

19.10.2011, 19:35. Просмотров 552. Ответов 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
58
59
60
61
62
63
///////////////////////////////////////
//
///////////////////////////////////////
#include <iostream>
 
using std::cout;
using std::cin;
using std::endl;
    
    
    //0-2, 1-4, 2-5, 3-6, 0-4, 6-0, 1-3. 
int main()
{
    char ch;
    char chm[40];
    int id[7][10]={};
    int p,q;
    
    int i=0;
    int j=0;
    int schet=0;
    
    do{
        ch=cin.get();
        chm[i]=ch;
        i++;}
    while (ch!='\n');
    
    for (int i=0; chm[i]!='\0'; i++){
    if(int(chm[i])>47&&int(chm[i])<58)
    {id[j][schet]=chm[i]-48; schet++;}
    if(schet==2)
    {j++; schet=0;}
    }
    
    //............Àëãîðèòì..............//
    /*
    for (int i=0; i<7; i++)
        for (int j=0; j<2; j++)
            for (int l=0; l<2; l++)
            if(id[i][j]==id[i+1][l])
            continue;
            else{
            for (int k=0; k<10; k++)
            if(id[i][k]==0){
            id[i][k]=id[i+1][l];
            break;
            }
            }
 
      *///ГЌГі Г*ГҐ ïîëó÷Г*ГҐГІГјГ±Гї.... :)      
    
        cout << endl;    
        for(int i=0; i<6; i++){
                for(int j=0; j<10; j++)
                cout << id[i][j] << " ";
                cout << endl;
                }
    
    cout << "\n\n\n";
    system("PAUSE");
    return 0;
}
Не могу написать алгоритм объединения. Думаю надо в каждый массив записать цифры с которыми имеет связь, потом одинаковые удалить... Но у меня не получается помогите пожалуйста.
И так как в задании 0 тоже присутствует в объединении надо массив заполнить не 0 а -1, но пока не стал этого делать.
0
Миниатюры
Алгоритм объединение.   Алгоритм объединение.  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.10.2011, 19:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Алгоритм объединение. (C++):

Нужен алгоритм поиска пути в этом лабиринте (будь то волновой алгоритм или алгоритм правой/левой руки ) - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; void lab () { int s1 = 0; int s2 =...

Волновой алгоритм поиска (Алгоритм A* / Алгоритм А стар) - C++
Хочу разработать алгоритм для решения головоломки с подвижными дисками (перестановочная головоломка). Определение. Перестано́вочные...

Помогите алгоритм для char переделать в алгоритм для float - C++
char* DecToBin(char x, char* str) { int i; for (i = sizeof(x)*8-1; i&gt;=0; i--) { str = (x&amp;1 == 1) ? '1' : '0'; x = x &gt;&gt;...

объединение case-ов - C++
case 2: { int n=input_pos(); printf(&quot;Внутреннее представление:%s\n&quot;,DecToBin(var,str)); printf(&quot;Сдвиг...

объединение множеств - C++
template&lt;class ValType, class FwdIt&gt; FwdIt copy ( FwdIt first, FwdIt last, FwdIt result ) { while (first!=last) *result++ =...

объединение массива - C++
Из данного массива и другого массива того же типа, но другой размерности сформируйте общий массив и найдите его минимальный элемент,...

2
KeyGen
384 / 291 / 6
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
19.10.2011, 23:52  [ТС] #2
Ну кто-нибудь помогите.
0
KeyGen
384 / 291 / 6
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
22.10.2011, 00:19  [ТС] #3
Я решил! Связи работают):
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
#include <iostream>
#include <cctype>
 
using std::cout;
using std::cin;
using std::endl;
 
static const int N=7;
 
int main()
{
    setlocale(LC_ALL, "rus");
    
    cout << "Введите числа:\n";
    
    char ch;
    int mas[N];
    
    for(int i=0; i<N; i++) mas[i]=i;
    
    
    int schet=3;
    int p,q;
    while(ch!='.'){
    cin.get(ch);
    if(isdigit(ch)&&(schet%2))
    p=ch-48;
    else if(isdigit(ch)){
    q=ch-48;
    int t=mas[p];
    if(t!=mas[q]){
                  cout << "\nМодификация массива:\n";
                  for(int i=0; i<N; i++)
                  if(mas[i]==t)
                  mas[i]=mas[q];
                  for(int i=0; i<N; i++)
                  cout << mas[i] << " ";
                  }
    }
    if(isdigit(ch))
    schet++;
    }
    
    
    
    
    cout << "\n\n\n";
    system("PAUSE");
    return 0;
}
0
Миниатюры
Алгоритм объединение.  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2011, 00:19
Привет! Вот еще темы с ответами:

Объединение массивов - C++
Нужно из двух массивов составить третий который будет являться их объединением как числовых множеств, без повторения элементов, подскажите...

Объединение строк С++ - C++
Заданы две строки. Построить новую строку, состоящую из символов, которые входят как в одну, так и в другую строку. Вот пробовал...

Объединение массивов - C++
Здравствуйте! Помогите пожалуйста... Заданы два одномерных массива действительных чисел различных размеров.Объединить их в один...

Объединение функций - C++
Здравствуйте, подскажите пожалуйста как мне каждый элемент массива функции void mass() обработать в функции void sov() все что написал...


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

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

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