alarm
Задайте вопрос
Информатика
Goshakar

C++Дан массив из n натуральных чисел. Удалить из массива все элементы, которые не являются однозначными или двухзначными. Затем в двухзначных числах поменять местами цифры, а потом переместить однозначные числа в конец массива. При этом порядок следования чисел в группах (однозначные, двухзначные) не должен изменяться. Никак не могу перенести однозначные числа в конец массива. Буду рад любой помощи.

ответы: 1
Зарегистрируйтесь, чтобы добавить ответ
Ответ:

#include <iostream>

#include <vector>

using namespace std;

int len(int N){

int cnt = 0;

while(N > 0){

cnt++;

N /= 10;

}

return cnt;

}

void swap_digits(int &N){

string tmp;

while(N > 0){

tmp += N % 10 + '0';

N /= 10;

}

N = stoi(tmp);

}

int main(){

int n;

cin >> n;

vector<int> elems1, elems2;

for(int i = 0; i < n; i++){

int x;

cin >> x;

if(len(x) == 1)

elems1. push_back(x);

else if(len(x) == 2){

swap_digits(x);

elems2. push_back(x);

}

}

for(auto &i : elems1)

elems2. push_back(i);

for(auto &i : elems2)

cout << i << " ";

}

85
Baldini
Чтобы ответить необходимо зарегистрироваться.

Другие вопросы: - Информатика

В банк, на депозит, кладеться пе

Необходима блок-схема цикла к по

Напишите программу, которая запр

Задание №1. Закончите предложени

1)пейзаж2)дождевое облоко3)коров

перевести з вісімкової системи 6

Контакты
Реклама на сайте