М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
YDA2007
YDA2007
30.12.2022 18:15 •  Информатика

Массив на 10 элементов заполнить с клавиатуры натуральными числами, вывести его на строчку, упорядочить четные элементы по возрастанию, нечетные оставить на своих местах. вывести в строчку уже отсортированый массив.

, . программа с сортировки пузырька на с++​

👇
Ответ:
emilligrin
emilligrin
30.12.2022

#include <iostream>

#include <vector>

#include <time.h>

using namespace std;

struct index_value {

int index;

int value;

};

vector<index_value> bubble_sort_fix(vector<index_value> vec) {

index_value temp;

for (size_t i = 0; i < vec.size()-1; i++)

{

 for (size_t j = 0; j < vec.size() - i - 1; j++)

 {

  if (vec[j].value > vec[j + 1].value) {

   temp.value = vec[j].value;

   vec[j].value = vec[j + 1].value;

   vec[j + 1].value = temp.value;

  }

 }

}

return vec;

}

vector<index_value> get_index_and_value_even_in_array(int* arr, int n) {

vector<index_value> vec_even_index_value;

index_value temp;

for (size_t i = 0; i < n; i++)

{

 if (arr[i] % 2 == 0) {

  temp.index = i;

  temp.value = arr[i];

  vec_even_index_value.push_back(temp);

 }

}

return vec_even_index_value;

}

void print_array(int* arr, int n) {

for (size_t i = 0; i < n; i++)

{

 cout << arr[i] << " ";

}

cout << endl;

}

int* push_in_array_even_vector(vector<index_value> vec, int* arr) {

int i = 0;

for (auto& elem : vec)

{

 arr[elem.index] = elem.value;

}

return arr;

}

int* input_array_auto(int* arr, int n) {

for (size_t i = 0; i < n; i++)

{

 arr[i] = rand() % 100 + 1;

}

return arr;

}

int* input_array(int* arr, int n) {

for (size_t i = 0; i < n; i++)

{

 cin >> arr[i];

}

return arr;

}

void print_vector_index_value(vector<index_value> vec) {

for (auto& elem : vec)

{

 cout << elem.index << " ";

 cout << elem.value << endl;

}

cout << endl;

}

int main()

{

setlocale(LC_ALL, "Russian");

srand(time(NULL));

vector<index_value> vector_even;

int n;

cout << "Введите количество элементов: ";

cin >> n;

int* arr = new int[n];

arr = input_array_auto(arr, n);

print_array(arr, n);

vector_even = get_index_and_value_even_in_array(arr, n);

print_vector_index_value(vector_even);

vector_even = bubble_sort_fix(vector_even);

print_vector_index_value(vector_even);

arr = push_in_array_even_vector(vector_even, arr);

print_array(arr, n);

}

4,4(42 оценок)
Открыть все ответы
Ответ:
Анелька0
Анелька0
30.12.2022
1) log2(64) = 6, на 1 пиксель нужно 6 бит, а всего 6 * 128 * 256 бит = 6 * 16 * 256 байт = 6*4 Кб = 24 Кб (1 байт = 8 бит, 1 Кб = 1024 байт)
2) 5 бит на пиксель, 5 * 128 * 128 бит = 10 Кб
3) 7 бит на пиксель, 7 * 64 * 128 бит = 7 Кб
4) 8 бит на пиксель, 8 * 64 * 256 бит = 16 Кб
5) 7 бит на пиксель, 7 * 32 * 1024 бит = 28 Кб
6) 6 бит на пиксель, 6 * 1024 * 512 бит = 384 Кб
7) 5 бит на пиксель, 80 Кб
8) 4 бита на пиксель, 32 Кб
9) 3 бита на пиксель, 12 Кб
10) 8 бит на пиксель, 16 Кб
11) 24 Кб = 24 * 1024 байт = 24 * 1024 * 8 бит, на 1 пиксель приходится (24 * 1024 * 8) / (128 * 256) = 6 бит. По формуле N = 2^i получаем 2^6 = 64 возможных цветов.
12) 10 Кб = 10 * 1024 * 8 бит, на 1 пиксель (10 * 1024 * 8) / (128 * 128) = 5 бит на пиксель, 2^5 = 32 цвета.
13) 7 бит на пиксель, 128 цветов
14) 8 бит на пиксель, 256 цветов
15) 7 бит на пиксель, 128 цветов
4,8(17 оценок)
Ответ:
Viktorua10
Viktorua10
30.12.2022
В формуле I=M*b
I-объем изображения, M-количество пикселей, b- глубина цвета
Количество цветов K определяется по формуле: K=2^b

1)Определим глубину цвета:
b=I/Mb=(7*1024*8)/(64*128)= 7 бит
Количество цветов:K=2^b
K=2^7= 128
ответ: 128 цветов

2)b= I/М= (16*1024*8)/(64*256)= 8 бит
K=2^b=2^8= 256
ответ: 256 цветов

3)b=I/М= (28*1024*8)/(32*1024)= 7 бит
K=2^b=2^7= 128 
ответ: 128 цветов

4)b=I/М= (384*1024*8)/(1024*512)= 6 бит
K=2^b= 2^6= 64
ответ: 64 цвета

5)b=I/М= (80*1024*8)/(512*256)= 5 бит
K=2^b= 2^5= 32
ответ: 32 цвета

6)Определим глубину цвета:
b=㏒₂K= ㏒₂8= 3 бит
I=M*b= (256*128)*3= 98304 бит
98304 бит/8= 12288 байт
12288 байт/1024= 12 Кбайт

ответ:12

7)b=㏒₂K= ㏒₂256 = 8 бит

I=M*b= (128*128)*8= 131072 бит
131072 бит/8= 16384 байт
16384 байт/1024= 16 Кбайт

ответ:16
4,4(87 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ