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

Оператор if. Указатели на массивы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Результат функций при работе со строками http://www.cyberforum.ru/cpp-beginners/thread706852.html
Прохожу изучение языка по учебнику Павловской. Хотелось бы узнать о работе поиска подстроки. Дан код: int main(){ const int len=81; char word, line; cout<<"Введите слово для поиска";cin>>word;...
C++ Функция возвращает непонятно что(Калькулятор) Надо сделать ф-цию "скобки" в калькуляторе. Сделал ввод даных, обчисление в отдельной функцие, когда будет введене "(" то вызываеться таже сама ф-ция калькулятора и обчиляет даные в дужках, после... http://www.cyberforum.ru/cpp-beginners/thread706846.html
C++ перегрузка ввода
class LONG { int a; public: friend istream& operator >>(istream& input, LONG& m); }; istream& operator >> (istream& input, LONG& m) { input>>(LONG&)m.a; return input;
Заданы три вектора a(n), b(m), c(k). Вывести наименование вектора, в котором максимальна сумма четных элементов, стоящих на нечетных местах C++
Заданы три вектора a(n), b(m), c(k). Вывести наименование вектора, в котором максимальна сумма четных элементов, стоящих на нечетных местах Помогите пожалуйста
C++ Идея для написания программы http://www.cyberforum.ru/cpp-beginners/thread706835.html
Здравствуйте форумчане вот решил у вас спросить. Какую программу написать на C++(желательно тяжелую для опыта так сказать)? Я тут подумывал создать проигрыватель видео и музыки с множеством форматов...
C++ Вывести простые числа в текстовый файл Проблема заключается в том что он у меня выводит непонятные символы в Txt :( Что мне с этим сделать ? #include <stdio.h> #include <iostream> #include "math.h" using namespace std; int... подробнее

Показать сообщение отдельно
YuTu
0 / 0 / 0
Регистрация: 12.11.2012
Сообщений: 18

Оператор if. Указатели на массивы - C++

23.11.2012, 19:47. Просмотров 583. Ответов 11
Метки (Все метки)

Подскажите в чем проблема?
Любая КРИТИКА ПРИВЕТСТВУЕТСЯ!!!

Есть 2 массива.
А и В
массив С - объединение элементов. Тут все ок
массив D - заполнен общими для двух массивов элементами. Тоже работает. (может не вполне рационально)
массив E - должен заполняться элементами массива А, которые отличаются от эоементов массива В. Тут собственно и трабл. а точнее в строке 102 в операторе if.
Операторы в строках 104-106 выполняются в случае f=true ? Ведь так?

Всем огромное спасибо за внимание!




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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
#include <iostream.h>
 
void main()
{
          int s1 ;
          cout << "Enter the SIZE of massiv A\n\n";
           cin >> s1;           
           int A[10];
           int *pA=&A[0];
           //Заполнение массива A
       
         for (int i = 0; i < s1; i++)
         {  
           *(pA+i)=rand() % 10;
         }
         int s2;
          cout << "Enter the SIZE of massiv B\n\n";
           cin >> s2;
   
           int B[10];
           int *pB=&B[0];
 
          //Заполнение массива B
          
         for (int i = 0; i < s2; i++)
         {
             *(pB+i)=rand() % 10;
         }
         int s3 = s1 + s2;
     
         int C[20];
         int *pC=&C[0];
 
        //Заполнение массива С - объединение А и В
          for (int i = 0; i < s1; i++)
         {
            *(pC+i)=*(pA+i);
          }
          for (int i = s1; i < s3; i++)
         {         
            *(pC+i)=*(pB+i-s1);
         }
                cout << "MASSIV C \n\n";
          for (int i = 0; i < s3; i++)
         {
          cout <<  *(pC+i) <<"\n";
         }
 
         //Заполнени массива D общими для вдух массивов элементами
 
         int D[20];
         int *pD=&D[0];
         int k=0;
         int m=0;
 
          for (int i = 0; i < s1; i++)
         {
                for (int j = 0; j < s2; j++)
                {
                        if (*(pA+i)==*(pB+j))
                        {
                              k++;
                        }
                }
           }
 
          for (int i = 0; i < s1; i++)
         {
                for (int j = 0; j < s2; j++)
                {
                        if (*(pA+i)==*(pB+j))
                        {
                               *(pD+m)=*(pA+i);
                               m++;
                        }
                }
           } 
   
       cout << "MASSIV D \n\n";
          for (int i = 0; i < m; i++)
         {
             cout << "*(pD+i)= " << *(pD+i) <<"\n";
         }
 
         //Заполнение массива Е элементами массива А, не вошедшими в массив В
 
         int E[20];
         int *pE=&E[0];
 
       int r=0;
       bool f;
          for (int i = 0; i < s1; i++)
         {
                for (int j = 0; j < s2; j++)
                {
                        if (*(pA+i)!=*(pB+j))
                        {
                              f=true;
                        }
 
               }
                if (f)
                        {
                         *(pE+r)=*(pA+i);
                         r++;
                        //cout << "*(pE+r)=   "<< *(pE+r)<<endl;
                        }
           }
 
       cout << "MASSIV E \n\n";
          for (int i = 0; i < r; i++)
         {
 
              cout << "*(pE+i)= " << *(pE+i) <<"\n";
         }
 
       system ("pause");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru