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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 40, средняя оценка - 5.00
_ALLEN_
3 / 3 / 0
Регистрация: 19.02.2010
Сообщений: 30
#1

Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. - C++

20.04.2010, 14:41. Просмотров 5258. Ответов 11
Метки нет (Все метки)

написать программы! Вот задания! Я болел и просто не успею все зделать!
1)Дан массив целых чисел. Воспользовавшись указателями, поменяйте местами элементы массива с четными и нечетными индексами (т.е. те элементы массива, которые стоят на четных местах, поменяйте с элементами, которые стоят на нечетных местах).
2)Даны два массива, упорядоченных по возрастанию: А[n] и B[m]. Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию.
3)Даны два массива : А[n] и B[m]. Необходимо создать третий массив, в котором нужно собрать:
Элементы обоих массивов;
Общие элементы двух массивов;
Элементы массива A, которые не включаются в B;
Элементы массива B, которые не включаются в A;
Элементы массивов A и B, коотрые не являются общими дял них (то есть объединение результатов двух предыдущих вариантов).
4) Через указатели на указатели посчитать сумму двух чисел и записать в третье.

5) Написать примитивный калькулятор, пользуясь только указателями.

6) Найти факториал числа, пользуясь только указателями.

7) Найти заданную степень числа, пользуясь только указателями.

8) Произвести, используя указатель на указатель проверку на нуль при делении
9) Пользователь вводит строку с клавиатуры в фиксированный массив. Необходимо проверить, cколько элементов массива теперь занято и сколько свободно.

10) Показать на экран с m по n символов строки, введенной пользователем и записать данный отрезок в другой массив. (m и n также вводятся пользователем)

11) Удалить с m по n символов, перезаписать строку и показать ее на экран.

12) Пользователь вводит отдельно строку и символ, необходимо показать на экран номера по порядку всех совпадений (нумерация с единицы).

13) Пользователь вводит отдельно строку и символ, необходимо показать на экран номер только последнего совпадения (нумерация с единицы).
14) Написать программу, которая осуществляет добавление строки или столбца в любое место двумерной матрицы по выбору пользователя.

15) Дана матрица порядка MxN (M строк, N столбцов). Необходимо заполнить ее значениями и написать функцию, осуществляющую циклический сдвиг строк и/или столбцов массива указанное количество раз и в указанную сторону.
16) Создать структуру ВИДЕОМАГАЗИН со следующими полями:

Название фильма
Режиссер
Жанр
Рейтинг популярности
Цена диска

Реализовать следующие возможности:
Поиск по названию
Поиск по жанру
Поиск по режиссеру
Самый популярный фильм в жанре
Показ всех записей и добавление

--------------------------------------------------------------------------------
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2010, 14:41     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию.
Посмотрите здесь:
C++ Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию
Получить массив С(К), упорядоченный по возрастанию, путем слияния массивов A(N) и B(M), упорядоченных по возрастанию (K = N + M) C++
C++ Получить массив С(К). упорядоченный по возрастанию, путем слияния массивов A(N) и В(М). упорядоченных по возрастанию (К = N + М).
Из двух упорядоченных одномерных массивов длины К и Н сформируйте одномерный массив размером К+Н упорядоченный так же как и исходный C++
Сортировка 2-х одномерных массивов в 1 упорядоченный массив по возрастанию C++
Создать функцию, в качестве параметра получает массив и количество его элементов, возвращает массив, упорядоченный по возрастанию C++
C++ Получить из двух упорядоченных массивов путем слияния упорядоченный по возрастанию массив
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Entey
1 / 1 / 0
Регистрация: 23.12.2009
Сообщений: 4
20.04.2010, 17:13     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #2
А ограничения по написанию программ єсть(например, можна использовать классы? рекурсию? )
_ALLEN_
3 / 3 / 0
Регистрация: 19.02.2010
Сообщений: 30
20.04.2010, 17:18  [ТС]     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #3
да можна всё использовать
Entey
1 / 1 / 0
Регистрация: 23.12.2009
Сообщений: 4
20.04.2010, 17:26     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #4
а на когда тебе их надо?
_ALLEN_
3 / 3 / 0
Регистрация: 19.02.2010
Сообщений: 30
20.04.2010, 17:27  [ТС]     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #5
на пятницу
_ALLEN_
3 / 3 / 0
Регистрация: 19.02.2010
Сообщений: 30
20.04.2010, 17:33  [ТС]     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #6
блин капец! уже набросал код с того что понял! по 10 часов сижу за программированием! аж голова роскалывается уже

Добавлено через 1 минуту
да хоть приблизительно что нада делать! Я парочку уже сделал и так устал

Добавлено через 1 минуту
я парочку сделал уже

Добавлено через 1 минуту
Цитата Сообщение от Entey Посмотреть сообщение
и сколько ты готов заплатить?
я парочку сделал уже! хотяб частично код знать
Entey
1 / 1 / 0
Регистрация: 23.12.2009
Сообщений: 4
20.04.2010, 17:40     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #7
с каким заданием помочь?
_ALLEN_
3 / 3 / 0
Регистрация: 19.02.2010
Сообщений: 30
20.04.2010, 17:43  [ТС]     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #8
с 3) заданием
Entey
1 / 1 / 0
Регистрация: 23.12.2009
Сообщений: 4
20.04.2010, 17:53     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #9
один с вариантов это зделать функцию is_in , которая будет возвращать 1 єсли елемент А содержит елемент і и 0 если не содержит


C++
1
2
3
4
5
6
int is_in(int i, int *A, int m)
{
for(int j=0;j<m;j++)
if(i==A[j])return 1;
return 0;
}
_ALLEN_
3 / 3 / 0
Регистрация: 19.02.2010
Сообщений: 30
20.04.2010, 17:55  [ТС]     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #10
большое спасибо буду дальше розбиратся
Ruzhin
15 / 15 / 3
Регистрация: 18.01.2013
Сообщений: 17
13.02.2013, 23:24     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #11
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
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
#include <iostream>
using namespace std;
 
template <class T>
void perestanovka (T a, int SIZE)
{
    for (int i=1; i<SIZE-1;i++)
    {
        int t;
        if (i%2!=0)
        {
            t=*(a+i);
            *(a+i)=*(a+(i+1));
            *(a+(i+1))=t;
        }
        
    }
 
    for (int i=0; i<SIZE; i++)
    {
        cout <<*(a+i);
    }
 
    cout <<endl;
 
}
 
void main()
{
    setlocale (LC_ALL,"");
 
    //Дан массив целых чисел
 
    const int SIZE=9;
    
    int a[SIZE]={0,1,2,3,4,5,6,7,8,};
 
    //выводим его на экран с помощью цикла используя указатели
    for (int i=0; i<SIZE; i++)
    {
        cout <<*(a+i);
    }
 
    cout <<endl;
 
    //вызываем функцию перестановки местами элементов массива с четными и нечетными индексами
    perestanovka (a, SIZE);
    
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2013, 22:32     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию.
Еще ссылки по теме:
C++ Упорядоченный по неубыванию массив превратить в упорядоченный по возрастанию, оставив уникальные элементы
Даны два массива. Сформируйте массив С, состоящий из общих элементов массива А и В C++
C++ Включить новый элемент в массив, упорядоченный по возрастанию, с сохранением упорядоченности. (рандомный массив)
Сформировать массив S, состоящий из одинаковых элементов исходных массивов C++
Сформировать массив, состоящий из одинаковых элементов выходных массивов C++

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

Или воспользуйтесь поиском по форуму:
coloc
погромист
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
16.02.2013, 22:32     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. #12
Кликните здесь для просмотра всего текста
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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
/*1)Г„Г*Г* Г¬Г*Г±Г±ГЁГў öåëûõ Г·ГЁГ±ГҐГ«. ÂîñïîëüçîâГ*ГўГёГЁГ±Гј ГіГЄГ*Г§Г*òåëÿìè,
 ГЇГ®Г¬ГҐГ*ÿéòå ìåñòГ*ìè ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ* Г± Г·ГҐГІГ*ûìè ГЁ Г*ГҐГ·ГҐГІГ*ûìè ГЁГ*äåêñГ*ìè 
 (ГІ.ГҐ. ГІГҐ ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ*, êîòîðûå ñòîÿò Г*Г* Г·ГҐГІГ*ûõ ìåñòГ*Гµ, ïîìåГ*ÿéòå Г± ýëåìåГ*ГІГ*ìè,
  êîòîðûå ñòîÿò Г*Г* Г*ГҐГ·ГҐГІГ*ûõ ìåñòГ*Гµ).
#include <iostream>
#include <cstdlib>
#include <ctime>
 
#define FOR(x) for (int i = 0; i < x; i++)
 
int main (){
    const int size = 5;
    int array [size];
    srand (time (NULL) + rand());
    
    FOR(size)
        *(array + i) = 1 + rand() % 10;
        
    FOR(size)
        std::cout << *(array + i) << " ";
        
    for (int i = 1; i < size - 1; i++){
        int temp;       
        if (i % 2 != 0){
            temp = *(array + i);
            *(array + i) = *(array + (i + 1));
            *(array + (i + 1)) = temp;
            }
    }
    
    std::cout << std::endl;
    
    FOR(size)
        std::cout << *(array + i) << " ";
    
    return 0;
}*/
 
/*2)Г„Г*Г*Г» äâГ* Г¬Г*Г±Г±ГЁГўГ*, óïîðÿäî÷åГ*Г*ûõ ГЇГ® âîçðГ*Г±ГІГ*Г*ГЁГѕ: ГЂ[n] ГЁ B[m]. 
Ñôîðìèðóéòå Г¬Г*Г±Г±ГЁГў C[n+m], ñîñòîÿùèé ГЁГ§ ýëåìåГ*òîâ Г¬Г*ññèâîâ ГЂ ГЁ Г‚,
 ГіГЇГ®Г°ГїГ¤Г®Г·ГҐГ*Г*ûé ГЇГ® âîçðГ*Г±ГІГ*Г*ГЁГѕ. 
 
#include <iostream>
#include <cstdlib>
#include <ctime>
 
#define FOR(x) for (int i = 0; i < x; i++)
 
template< class T >
void sort(T* arr, int size)
{
    T tmp;
 
    for(int i = 0; i < size - 1; ++i){            
        for(int j = 0; j < size - 1; ++j){     
            if (arr[j + 1] < arr[j]){
                tmp = arr[j + 1]; 
                arr[j + 1] = arr[j]; 
                arr[j] = tmp;
            }
        }
    }
}
 
int main (){
    const int N = 5;
    const int M = 8;
    const int V = N + M;
    int A [N];
    int B [M];
    int C [V];
    
    srand (time (NULL) + rand());
    
    FOR(N)
        *(A + i) = 1 + rand() % 10;
        
    FOR(M)
        *(B + i) = 1 + rand() % 10;
    
    sort (A, N);
    sort (B, M);
        
    std::cout << "A: "; 
    FOR(N)
        std::cout << *(A + i) << " ";   
        
    std::cout << std::endl << "B: ";    
    FOR(M)
        std::cout << *(B + i) << " ";
        
    FOR(N)
        *(C + i) = *(A + i);
        
    for (int i = N, j = 0; j < M; i++, j++)
        *(C + i) = *(B + j);
        
    sort (C, V);    
    std::cout << std::endl << "C: ";    
    
    FOR(V)
        std::cout << *(C + i) << " ";
    return 0;
}*/
 
/*3)Г„Г*Г*Г» äâГ* Г¬Г*Г±Г±ГЁГўГ* : ГЂ[n] ГЁ B[m]. Íåîáõîäèìî ñîçäГ*ГІГј òðåòèé Г¬Г*Г±Г±ГЁГў, Гў êîòîðîì Г*ГіГ¦Г*Г® ñîáðГ*ГІГј:
ÝëåìåГ*ГІГ» îáîèõ Г¬Г*ññèâîâ;
ГЋГЎГ№ГЁГҐ ýëåìåГ*ГІГ» äâóõ Г¬Г*ññèâîâ;
ÝëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ* A, êîòîðûå Г*ГҐ âêëþ÷Г*ГѕГІГ±Гї Гў B;
ÝëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ* B, êîòîðûå Г*ГҐ âêëþ÷Г*ГѕГІГ±Гї Гў A;
ÝëåìåГ*ГІГ» Г¬Г*ññèâîâ A ГЁ B, êîîòðûå Г*ГҐ ÿâëÿþòñÿ îáùèìè äÿë Г*ГЁГµ 
(ГІГ® ГҐГ±ГІГј îáúåäèГ*ГҐГ*ГЁГҐ ðåçóëüòГ*òîâ äâóõ ïðåäûäóùèõ ГўГ*ðèГ*Г*òîâ). */
 
/*#include <iostream>
#include <cstdlib>
#include <ctime>
#include <windows.h>
 
#define FOR(x) for (int i = 0; i < x; i++)
 
 
int main (){
    const int N = 5;
    const int M = 5;
    const int V = N + M;
    int A [N];
    int B [M];
    int C [V];
    
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    srand (time (NULL) + rand());
    
    FOR(N)
        *(A + i) = 1 + rand() % 10;
        
    FOR(M)
        *(B + i) = 1 + rand() % 10;
        
    std::cout << "A: "; 
    FOR(N)
        std::cout << *(A + i) << " ";   
        
    std::cout << std::endl;     
    
    std::cout << "B: "; 
    FOR(M)
        std::cout << *(B + i) << " ";
    
    FOR(N)
        *(C + i) = *(A + i);
        
    for (int i = N, j = 0; j < M; i++, j++)
        *(C + i) = *(B + j);        
    
    std::cout << std::endl << "ÝëåìåГ*ГІГ» îáîèõ Г¬Г*ññèâîâ: "; 
    FOR(V)
        std::cout << *(C + i) << " ";
        
    for (int i = 0; i < N; i++){
        for (int y = 0; y < M; y++){
            static int j = 0;
            if ((*(A + i) == *(B + y))){
                *(C + j) = *(A + i);
                ++j;
            }
    }
    }
    
    std::cout << std::endl << "ГЋГЎГ№ГЁГҐ ýëåìåГ*ГІГ» äâóõ Г¬Г*Г±Г±ГЁГўГ®: ";  
    FOR(V)
        std::cout << *(C + i) << " ";
    return 0;
}*/
 
//4) ×åðåç ГіГЄГ*Г§Г*òåëè Г*Г* ГіГЄГ*Г§Г*òåëè ïîñ÷èòГ*ГІГј ñóììó äâóõ Г·ГЁГ±ГҐГ« ГЁ Г§Г*ГЇГЁГ±Г*ГІГј Гў òðåòüå.
/*#include <iostream>
 
int main(){
    int num1;
    int num2;
    int sum = 0;
    int *p1 = &num1;
    int *p2 = &num2;
    int *p3 = &sum;
    int **pp1 = &p1;
    int **pp2 = &p2;
    int **pp3 = &p3;
    
    std::cin >> num1 >> num2;
    
    **pp3 = **pp1 + **pp2;
    std::cout << std::endl << **pp3; 
    return 0;
}*/
 
//5) ГЌГ*ГЇГЁГ±Г*ГІГј ïðèìèòèâГ*ûé ГЄГ*ëüêóëÿòîð, ïîëüçóÿñü òîëüêî ГіГЄГ*Г§Г*òåëÿìè.
/*#include <iostream>
#include <windows.h>
 
int main(){
    int num1;
    int num2;
    int *p1 = &num1;
    int *p2 = &num2;
    char znak;
    
    while (true){
        std::cin >> *p1 >> znak >> *p2;
        switch (znak){
            case '+':
                std::cout << std::endl;
                std::cout << *p1 + *p2;
                break;
                
            case '-':
                std::cout << std::endl;
                std::cout << *p1 - *p2;
                break;
                
            case '*':
                std::cout << std::endl;
                std::cout << (*p1) * (*p2);
                break;
                
            case '/':
                std::cout << std::endl;
                std::cout << *p1 / *p2;
                break;
                
            default:
                std::cout << std::endl;
                exit (0);
                break;
        }
    }
    return 0;
}*/
 
 
/*//6) ГЌГ*éòè ГґГ*êòîðèГ*Г« Г·ГЁГ±Г«Г*, ïîëüçóÿñü òîëüêî ГіГЄГ*Г§Г*òåëÿìè.
#include <iostream>
 
int* factorial (int* n, int j){
    int* result = &j;
    if (*n == 0) { *result = 1; return result; }
    int temp = *n - 1;
    temp *= *n;
    result = factorial (&temp, j);
    return result;
}
 
int main (){
    int n; 
    int r = 0;
    int *rm = &r;
    std::cin >> n;
    rm = factorial (&n, r);
    std::cout << *rm << std::endl;
    return 0;
}*/
//7) ГЌГ*éòè Г§Г*Г¤Г*Г*Г*ГіГѕ Г±ГІГҐГЇГҐГ*Гј Г·ГЁГ±Г«Г*, ïîëüçóÿñü òîëüêî ГіГЄГ*Г§Г*òåëÿìè.
/*#include <iostream>
 
int* _pow (int*, int*);
 
int main (){
    int a;
    int b;
    std::cin >> a >> b;
    int *c;
    c = _pow(&a, &b);
    std::cout << *c;
    return 0;
}
 
int* _pow (int *a, int *b){
    int *temp; 
    temp = a;
    *b = *b - 1;
    while (*b){
        *a *= *temp;
        --(*b);
    }
    return a;
}*/
/*//8) Ïðîèçâåñòè, èñïîëüçóÿ ГіГЄГ*Г§Г*òåëü Г*Г* ГіГЄГ*Г§Г*òåëü ïðîâåðêó Г*Г* Г*óëü ïðè äåëåГ*ГЁГЁ
#include <iostream>
 
int main (){
    int num1;
    int num2;
    int *p1 = &num1;
    int *p2 = &num2;
    int **pp1 = &p1;
    int **pp2 = &p2;
    
    while (**pp2){
        std::cin >> **pp1 >> **pp2;
        if(**pp2){
            std::cout << std::endl << **pp1 / **pp2 << std::endl;
        } else {
            break;
        }
    }   
    std::cout << "delenie na NULL!";
    return 0;
}*/
 
/*9) ÏîëüçîâГ*òåëü ââîäèò ñòðîêó Г± ГЄГ«Г*ГўГЁГ*òóðû Гў ôèêñèðîâГ*Г*Г*ûé Г¬Г*Г±Г±ГЁГў.
 ГЌГҐГ®ГЎГµГ®Г¤ГЁГ¬Г® ïðîâåðèòü, cêîëüêî ýëåìåГ*òîâ Г¬Г*Г±Г±ГЁГўГ* òåïåðü Г§Г*Г*ГїГІГ® ГЁ ñêîëüêî ñâîáîäГ*Г®.*/
/*#include <iostream>
#include <conio.h>
 
int main (){
    const int size = 20;
    char str [size];
    int x = 0;
    int counter = 0;
    while (true){
        str [x] = getch ();
        ++counter;
        std::cout << std::endl << counter << " symbols is engaged, " << size - counter
                  << " symbols is free" << std::endl;
        ++x;
        if (x >= size)
            break;
    }
    std::cout << "Too many symbols!";
    return 0;
} */

Немножко сделал, не все верно, потом может доработаю
Yandex
Объявления
16.02.2013, 22:32     Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию.
Ответ Создать тему
Опции темы

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