Одно из решений, возможно, не самое эффективное #include <iostream> #include <iomanip> int main() { using namespace std;
//исходная последовательность const int N = 8; double Arr[N] = { 14.2, -3.4, 7.8, -3.1, 8.2, 98.22, -7, 12 };
//вывод на экран исходной последовательности for (int i = 0; i < N; ++i) cout << Arr[i] << " "; cout << endl;
//подсчитаем количества отрицательных и неотрицательных элементов int kpos = 0; int kneg = 0; for (int i = 0; i < N; ++i) if (Arr[i] < 0) ++kneg; else ++kpos;
//создадим массивы отрицательных и неотрицательных элементов double * ArrNeg = new double[kneg]; double * ArrPos = new double[kpos];
int kn = 0, kp = 0; for (int i = 0; i < N; i++) if (Arr[i] < 0) ArrNeg[kn++] = Arr[i]; else ArrPos[kp++] = Arr[i];
cout << "Enter a, b, c or d: "; char ch; cin >> ch;
if (ch == 'a' || ch == 'b' || ch == 'c' || ch == 'd') { switch (ch) { //пункт а) case 'a': for (int i = 0; i < kneg; ++i) Arr[i] = ArrNeg[i]; for (int i = 0; i < kpos; ++i) Arr[i + kneg] = ArrPos[i]; break;
//пункт б) case 'b': for (int i = 0; i < kneg; ++i) Arr[i] = ArrNeg[--kn]; for (int i = 0; i < kpos; ++i) Arr[i + kneg] = ArrPos[i]; break;
//пункт в) case 'c': for (int i = 0; i < kneg; ++i) Arr[i] = ArrNeg[i]; for (int i = 0; i < kpos; ++i) Arr[i + kneg] = ArrPos[--kp]; break;
//пункт г) case 'd': for (int i = 0; i < kneg; ++i) Arr[i] = ArrNeg[--kn]; for (int i = 0; i < kpos; ++i) Arr[i + kneg] = ArrPos[--kp]; break; } } else cout << "You entered wrong symbol\n";
for (int i = 0; i < N; ++i) cout << Arr[i] << " "; cout << endl; delete[] ArrNeg; delete[] ArrPos; return 0; }
Существует два основных вида компьютерной графики - векторная и растровая. растровый рисунок представляет из себя сетку пикселей, разность цветов этих пикселей образует графический образ, воспринимаемый человеческим глазом как единая картина. векторный же рисунок состоит из отдельных сущностей: линии, многоугольники, эллипсы и т.п. фигуры, отрисовкой этих фигур попиксельно занимается просмотрщик изображения (например браузер). основным преимуществом векторного рисунка является то, что такой рисунок может как угодно трансформироваться и масштабироваться без потери качества. каждая фигура перед выводом на экран рассчитывается по формулам и может быть перерисована (перерассчитана) за доли секунды, если это потребуется. естественно, это дает преимущество и в конечном размере файла, так как нет необходимости описывать каждый пиксель, все пиксели отрисовываются, исходя из инструкций. однако в векторном формате можно создавать лишь достаточно примитивные изображения. представьте себе красочную фотографию, где присутствует пляж, закат, пальмы, туристы, птицы. представили? а теперь подумайте, сколько нужно усилий, чтобы эту фотографию сделать из фигур, сколько формул применить, сколько маленьких участков залить цветом и каким образом реализовать плавный переход от синего моря до желтого пляжа. наверное, вам стало страшно, именно поэтому основным способом хранения для фотографий является растровый формат jpeg с большой степенью сжатия. вектор идеально подходит для создания схем, простых образов без сложного перехода цветов. векторное изображение: растровое изображение:растровое изображение пример сложной векторной графики: сложная векторная графика как видите, каждая из веток графики содержит свои плюсы и минусы. было бы глупо не найти способ объединить эти виды в единое целое, поэтому большинство форматов векторной графики сегодня позволяют смешивать себя с растровой графикой. растровая картинка в векторном формате является такой же единой сущностью, как и другие фигуры. например, в svg растровые картинки можно подключать из отдельного файла и выводить на любом участке холста.
инверсия
Объяснение:
судя по рисункам ребуса - инверсия