Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
15 / 16 / 1
Регистрация: 13.12.2009
Сообщений: 138
Записей в блоге: 1
1

Одномерный массив, заполнение по нужным индексам

07.11.2012, 10:49. Показов 600. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть картинка размер 2х2, тоисть колво пиксилей = 4
один пиксель - 4 байта
в итоге width*height*4 = 16, имеется одномерный масив на 16 байт в котором содержится 4 цвета етой картинки
хочу сделать точно такуюже картинку, только больше в 2 раза, ето означает что вместо 1-го пикселя - будет 4
новый массив будет иметь размер в width*2*height*2*4 = 64 байта
Проблема заключается в том что не получается правильно скопировать эти цвета в новый массив так, чтобы при разном размере картинки - правильно копировало цвета
на картинке показано как должны цвета копироватся в новую (большую) картинку и в каком порядке они идут
http://postimage.org/image/lleg79eiv/

mas[16] имеет 4 цвета, нужно скопировать правильно ети цвета в newMas[64] // width*2*height*2*4
ниже приведен код которые копирует цвета в mas[16]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    int width = 2;
    int height = 2;
    int bytesPerRow = width * 4;
    
    const int bitmapByteCount = bytesPerRow * height;
    int mas[bitmapByteCount];
 
    for (int i = 0; i < bitmapByteCount; i +=4)
    {
        UInt8 a = data[i];
        UInt8 r = data[i + 1];
        UInt8 g = data[i + 2];
        UInt8 b = data[i + 3];
      
        mas[i]   = a;
        mas[i+1] = r;
        mas[i+2] = g;
        mas[i+3] = b;        
        
    }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.11.2012, 10:49
Ответы с готовыми решениями:

Одномерный массив. Заполнение, сдвиг
Добрый день, дали задание - заполнить массив из 20 элементов случайными числами от 0 до 100...

Отсортировать массив по индексам элементов
Нужно написать программу в которой задан двумерный массив в котором одна строчка это числа, а...

Одномерный массив. Найти среднее арифметическое элементов, равных своим индексам
1)дан одномерный массив целых чисел.найти и вывести на экран среднее арифметическое элементов этого...

Одномерный массив. Заполнение по правилу.
Напишите программу, с помощью которого первые k элементов массива A, k,N, заполняются...

3
178 / 161 / 38
Регистрация: 08.10.2012
Сообщений: 423
07.11.2012, 11:54 2
для работы с цветами я обычно использую такую структуру
C++
1
2
3
4
5
struct pixel{
    unsigned char RR;
    unsigned char GG;
    unsigned char BB;
}
Добавлено через 1 минуту
у вас будет матрица 2х2 пикселя, если нужно увеличивайте сколько хотите
0
15 / 16 / 1
Регистрация: 13.12.2009
Сообщений: 138
Записей в блоге: 1
07.11.2012, 16:33  [ТС] 3
я пишу на другом языке программирования, так что это сейчас неважно, не получается правильно забить пиксели в нужные индекса в новый массив

Добавлено через 1 минуту
и кстати, там UInt8 - ето typedef unsigned char UInt8;
0
15 / 16 / 1
Регистрация: 13.12.2009
Сообщений: 138
Записей в блоге: 1
08.11.2012, 20:17  [ТС] 4
может ктото накидает алгоритм? у меня пока что ступор над этим
есть mas[16]
mas[0] - красный
mas[4] - зеленый
mas[8] - синий
mas[12] - желтый

нужно mas[64]
по ссылке на картинке показано как должны забиваться цвета в массив, нужно учесть что размер картинки может быть разным

http://postimage.org/image/lleg79eiv/
0
08.11.2012, 20:17
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.11.2012, 20:17
Помогаю со студенческими работами здесь

Одномерный массив(заполнение через random)TB
Одноменрный массив a размероностью n=20 заполнить случайными целыми числами из отрезка c помощью...

Одномерный массив. Заполнение произвольными значениями из отрезка.
Заполнить массив из восьми элементов случайным образом целыми значениями, лежащими в диапазоне ....

Массив не выводит по индексам
Здравствуйте. Подскажите пожалуйста.не разберусь с этим. Выводятся только данные соответствующие...

Дан двумерный массив, из него сделать одномерный. В одномерный массив сначала вписат четные строки потом нечетные
Здравствуйте,собственно задача в заголовке темы. никак не получается все это дело слит в одномерный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
Компьютер для начинающих
hw_wired 28.01.2025
Введение в мир компьютерных технологий В современном мире информация стала одним из важнейших ресурсов человечества, определяющим развитие общества и технологий. Наша жизнь неразрывно связана с. . .
[golang] 189. Rotate Array
alhaos 28.01.2025
Повороты рукоятки, целочисленный слайс нужно сдвинуть на целое положительное число. Мне очень нравится решение на GO / / https:/ / leetcode. com/ studyplan/ top-interview-150/ package topInterview . . .
КуМир: решение задач на матрицы
bytestream 28.01.2025
КуМир представляет собой среду для обучения программированию, которая включает в себя мощные инструменты для работы с матрицами. Матрица в программировании - это двумерный массив, состоящий из. . .
КуМир: решение задач на строки
bytestream 28.01.2025
В системе программирования КуМир работа со строковыми данными является одним из важнейших аспектов создания программ. Строки представляют собой последовательности символов, заключенные в кавычки,. . .
КуМир: решение геометрических задач
bytestream 28.01.2025
Программирование геометрических задач в среде КуМир становится всё более актуальным в обучении школьников и студентов. КуМир — это разработанная в России обучающая программная среда, предназначенная. . .
КуМир, исполнитель Водолей: Задачи и решения
bytestream 28.01.2025
КуМир — это образовательная среда для обучения программированию. Она предлагает пользователям разнообразные инструменты для разработки и отладки программ, что особенно ценно для студентов и. . .
КуМир, исполнитель Чертежник: Решение задач
bytestream 28.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения основам программирования и алгоритмизации. Исполнитель Чертежник работает на координатной плоскости, где может. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru