Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2013, 10:43   #1
Laplas
Пользователь
 
Регистрация: 02.10.2009
Сообщений: 25
По умолчанию Работа с файлами

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

есть три файла одинакового формата и одинакового размера, из них надо по очереди считывать элементы, которые расположены в строках и разделены пробелом, среди этих элементов находить минимум,медиум и максимум, произвести некоторые вычисления, а потом уже обработанные элемнты записать записать на соответствующие позиции в соответвующие файлы. то есть считать элемент r из файла R, считать элемент g из файла G, считать элемент b из файла B, потом произвести все вычисления и записать r' в файл R', g' в файл G', b' в файл B'.

Спасибо.

вот полный текст задания.
Цитата:
0. Ввести с командной строки исполняемый файл, три обрабатываемых 24-битных файла, например,
hue.exe 35ef03r.txt 35ef03g.txt 35ef03b.txt.
1. Отыскать минимальную Min(RGB), среднюю Med(RGB) и максимальную Max(RGB) цветовые координаты первого пикселя. Присвоить Min(RGB), Med(RGB) и Max(RGB) индекс r, g или b соответственно последней букве в имени обрабатываемого файла.
Если Max(RGB)=Min(RGB), с учетом индекса переписать исходные значения цветовых координат на соответствующей первому пикселю позиции в три новых одинаковых 24-битных результирующих файла, поименованных '35ef03r.txt, '35ef03g.txt и '35ef03b.txt (идентичных по формату обрабатываемым файлам).
2. Уменьшить цветовые координаты первого пикселя на Min(RGB):
Min' (RGB) = Min (RGB) – Min (RGB) = 0
Med' (RGB) = Med (RGB) – Min (RGB)
Max' (RGB) = Max (RGB) – Min (RGB).
3. Увеличить полученные значения в 255/Max'(RGB)… раз:
Min*(RGB) = Min'(RGB)*255/Max'(RGB)=0
Med*(RGB) = Med'(RGB)*255/Max'(RGB)
Max*(RGB) = Max'(RGB)*255/Max'(RGB)=255.
Полученное значение Med*(RGB) округлить до целого числа.
4. С учетом индекса записать вычисленные в п. 3 значения цветовых координат на соответствующей первому пикселю позиции в трех новых одинаковых 24-битных результирующих файлах, поименованных '35ef03r.txt, '35ef03g.txt и '35ef03b.txt (идентичных по формату обрабатываемым файлам).
5. Перейти ко второму пикселю … .
код за меня писать не надо.

Последний раз редактировалось Laplas; 24.05.2013 в 11:01.
Laplas вне форума Ответить с цитированием
Старый 24.05.2013, 20:43   #2
kineziz
Форумчанин
 
Регистрация: 22.12.2011
Сообщений: 378
По умолчанию

Код:
struct Data
{
    char FileName[50];
    int Value;
};
char FileName[50] - Имя файла
Value - Считываемое значение

и начало кода будет примерно такое:

Код:
int main()
{
    Data r;
    Data g;
    Data b;
    // Далее делаем необходимые действия
}

Можно завести класс (если вы пишите на С++)
Data.h
Код:
#pragma once

class Data
{
protected:
    std::string m_FileName;
    int Value;
public:
    virtual bool ReadDataFromFile(char* pFileName);
};
Data.cpp
Код:
#include "Data.h"

bool Data::ReadDataFromFile(char* pFileName)
{
    // Реализация функции
    // Чтение данных из файла
}
Вроде как то так. Остальное думаю реализовать легко
Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования.
kineziz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами KyJIJIEP Visual C++ 3 16.11.2012 16:24
Работа с файлами (С++) Gaara2046 Помощь студентам 8 15.11.2012 21:03
Работа с файлами apelsun Помощь студентам 0 15.11.2012 20:28
Работа с файлами Natysya Общие вопросы C/C++ 10 24.11.2010 16:39
работа с файлами voron.kz Помощь студентам 4 15.11.2009 17:25