
Сообщение от
Sahon
Нет, n и m - натуральные. Программа сама должна заполнить массив чисел от n до m. Например, 1 и 6:
1 2 3 4 5 6
удаляется 1 3 5, то есть массив: 2 4 6 0 0 0, затем удаляется 2 и 6, то есть массив: 4 0 0 0 0 0 и выводиться 4.
Counter (счетчик) сделан для сдвигания чисел, то есть не
0 2 0 4 0 6,
а 2 4 6 0 0 0
Ок, сейчас напишу свой вариант, а потом попробуем твой разобрать
Добавлено через 22 минуты
Не по теме:
Ну могу тебя поздравить, суть задания ты выполнил(акцент был на алгоритм смещения как мне кажется)
У меня получилось вот такое
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
| #include <iostream>
using namespace std;
int main() {
int n, m, num=0;
cout << "Введите N\n";
cin >> n;
cout << "Введите M\n";
cin >> m;
const int size = m - n;
int ar[size];
for (int i = 0; n <= m; i++, n++) {
ar[i] = n;
cout << ar[i] << " ";
}
cout << endl;
while (ar[1]) {
for (int i = 0; i < size; i++) {
if (i % 2)
ar[i] = 0;
else {
if (ar[i] == 0)
continue;
else {
num++;
ar[i - num] = ar[i];
ar[i] = 0;
}
}
}
num = 0;
}
cout << ar[0];
cout<<endl;
} |
|
Добавлено через 3 минуты
Главная ошибка
Размером массива пока что для тебя может быть только константное число,ну и с циклами ты намутил немного

Надеюсь помог, если что не ясно спрашивай