Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

На языке СИ++ написать программу,Выполняющую следующие операции: - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Бинарное дерево http://www.cyberforum.ru/cpp-beginners/thread925429.html
Доброго времени суток. Ребят, я не спец, требуется решить такую задачу: Написать нерекурсивную программу, печатающую все вершины двоичного дерева. При реализации использовать стек отложенных...
C++ что за ошибки? у меня нет диска F (если написать полный путь, будет ошибка) VS 2012 http://www.cyberforum.ru/cpp-beginners/thread925423.html
sscanf заборохлил C++
имеется 2 программы. в одной является валидной запись line = "v 1,000000 -1,000000 1,000000"; line = ' '; sscanf(line.c_str(),"%f %f %f %f", &vert.x, &vert.y, &vert.z,...
C++ С файла считать цифры a и b в каждой строчки и вывести их сумму в другой файл
Нужно с файла считать цифры a и b в каждой строчки и вывести их сумму в другой файл. При чем количество таких пар неизвестна. Почему моя программа не работает. Принципиально не использую scanf, а...
C++ A+B http://www.cyberforum.ru/cpp-beginners/thread925393.html
Задача A + B Посчитайте A + B. Технические условия Входные данные В каждой строке задано два целых числа A и B (|A|, |B| ≤ 30000). Считывайте данные до конца файла. Выходные...
C++ Зачем нужно private наследование в классах? Если можно, то покажите небольшой пример подробнее

Показать сообщение отдельно
Kukurudza
105 / 86 / 6
Регистрация: 29.08.2012
Сообщений: 539
19.07.2013, 13:48
как нить накидаю.

Добавлено через 1 час 35 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
int main() {
    BITMAPFILEHEADER bitMapFileHeader;
    BITMAPINFOHEADER bitMapInfoHeader;
 
    FILE* file;
    fopen_s(&file, "D:\\picture.bmp", "r");
    fread((void*)&bitMapFileHeader, sizeof(BITMAPFILEHEADER), 1, file);
    fread((void*)&bitMapInfoHeader, sizeof(BITMAPINFOHEADER), 1, file);
 
    void* buffer = new unsigned char[bitMapInfoHeader.biSize];
    const int pixelsNum = bitMapInfoHeader.biWidth * bitMapInfoHeader.biHeight;
    const size_t bitPerPixel = bitMapInfoHeader.biBitCount / 8;
    unsigned int pixel = 0;
 
    std::set<unsigned int> set;
 
    for (int i = pixelsNum - 1; i >= 0; --i) {
        fread((void*)&pixel, bitPerPixel, 1, file);
        set.insert(pixel);
    }
 
    std::copy(set.begin(), set.end(), std::ostream_iterator<int>(std::cout, "\n"));
 
    return 0;
}
количество разных пикселей не выводит. доделать не сложно. работает ессно долго. на нобелевскую премию не претендую. мест для оптимизации и улучшений миллион. рисовал в паинте прямоугольнички. если рисуете карандашиком например красный цвет, то если увеличить картиночку то увидите несколько оттенков красненького. а квадратики дают именно один цвет.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru