С++ Дан массив a из n целых чисел. Требуется поменять местами первый отрицательный и последний положительный элементы массива. Если какого-то из этих элементов в массиве нет, то не изменять массив. Ноль считать положительным числом.
Формат входных данных
На первой строке записано натуральное число n (n<100) — размер массива. На следующей строке через пробел записаны n целых чисел ai (|ai|≤1000) — элементы массива.
Формат выходных данных
Требуется вывести n чисел — изменённый массив.
входные данные
9
1 2 3 4 -9 10 12 14 15
выходные данные
1 2 3 4 15 10 12 14 -9
Ответы на вопрос:
#include <bits/stdc++.h>
using namespace std;
int main(){
int n, negativeIndex = 0, positiveIndex = 0, buf = 0;
bool a, b = false;
cin >> n;
int arr[n];
for(int i = 0; i < n; ++i){
cin >> arr[i];
}
for(int i = 0; i < n; ++i){
if(arr[i] < 0){
negativeIndex = i;
a = true;
break;
}
}
for(int i = n-1; i >= 0; --i){
if(arr[i] >= 0)
positiveIndex = i;
b = true;
break;
}
if(a && b){
buf = arr[negativeIndex];
arr[negativeIndex] = arr[positiveIndex];
arr[positiveIndex] = buf;
}
for(int i = 0; i < n; ++i){
cout << arr[i] << "\t";
}
return 0;
}
Если число положительное, то в знаковый разряд помещается 0, если отрицательное - 1. Например, в байте можно представить знаковые числа от -128 до 127. Прямой код числа. Представление числа в привычной форме "знак"-"величина", при которой старший разряд ячейки отводится под знак, а остальные - под запись числа в двоичной системе, называется прямым кодом двоичного числа.
Объяснение:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
nikoleller06.04.2021 18:32
-
SAVITAR7565712.04.2022 04:01
-
sokolovsokol3андрей01.03.2021 05:42
-
Romanzadacha205.11.2022 13:20
-
polina200412105.03.2021 19:06
-
lololoki0305.10.2022 17:32
-
Galina261717.10.2020 04:43
-
oksankalahutina516.12.2021 19:46
-
p11111119703.12.2021 02:37
-
Veravera00200300404929.08.2022 06:47
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.