Инструменты пользователя

Инструменты сайта

No renderer 'pdf' found for mode 'pdf'

soft:progtest

Техническое задание: Программиста C

Необходимо переделать консольную программу, которая зачитывает информацию из файлов (*.stg) и отображает в виде таблицы в программу с оконным интерфейсом.

Стек технологий

  • Основной язык разработки: C++
  • Фреймворк: MFC
  • Среда для разработки: MS Visual C++

Интерфейс

В главном окне программы представлена таблица пиков, в которой указаны следующие данные о пиках:

  • «#» – порядковый номер;
  • «Время(мин)» – время выхода пика (мин);
  • «Высота(мВ)» – высота пика (мВ);
  • «Площадь(мВ·мин)» – площадь под кривой пика (мВ·мин);
  • «Концентрация(мол%)» – концентрация компонента (молярная доля, %);
  • «Концентрация(масс%)» – концентрация компонента (массовая доля, %);
  • «Компонент» – наименование компонент;

Кнопки:

  • «Открыть» – открытие диалога выбора файла хроматограммы;
  • «Закрыть» – завершение работы программы.

Расчет

Необходимо нормализовать значения молярной доли компонентов по формуле: x_i = {{{x prime}_i} / {sum{j}{}{{x prime}_j}}} * 100 , где x_i – нормализованное значение молярной доли компонента, {x prime}_i– молярная доля i-го компонента.

В хроматограммах концентрация компонента указана в молярных долях. Необходимо для каждого компонента вычислить концентрацию в массовых долях. Пересчёт молярной доли компонента в массовую: w_i = {{x_i*M_i} / {sum{j}{}{x_j*M_j}}} * 100 , где w_i – массовая доля i-го компонента, M_i – молярная масса i-го компонента (кг/моль).

Справочные данные

Компонент Молекулярная масса Коэффициенты сжимаемости
метан 16.04246 0.99814
этан 30.06904 0.99197
пропан 44.09562 0.98306
н-бутан 58.1222 0.96845
2-метилпропан 58.1222 0.97199
н-пентан 72.14878 0.94733
2-метилбутан 72.14878 0.95208
2,2-диметилпропан 72.14878 0.96084
н-гексан 86.17536 0.91549
с6 86.17536 0.91549
с6+ 86.17536 0.91549
с7 100.20194 0.87419
с8 114.22852 0.82377
2-метилпентан 86.17536 0.92492
3-метилпентан 86.17536 0.92764
2,2-диметилбутан 86.17536 0.94733
2,3-диметилбутан 86.17536 0.934
н-гептан 100.20194 0.87419
н-октан 114.22852 0.82377
н-нонан 128.2551 0.76419
н-декан 142.28168 0.66615
н-ундекан 156.30826 0.62067
н-додекан 170.33484 0.46198
н-тридекан 184.36142 0.39968
н-тетрадекан 198.388 0.26229
н-пентадекан 212.41458 0.10527
этилен 28.05316 0.99394
пропен 42.07974 0.98481
1-бутен 56.10632 0.97038
цис-2-бутен 56.10632 0.96724
транс-2-бутен 56.10632 0.96728
2-метилпропен 56.10632 0.97038
1-пентен 70.1329 0.95125
пропадиен 40.06386 0.98356
1,2-бутадиен 54.09044 0.96749
1,3-бутадиен 54.09044 0.97201
ацетилен 26.03728 0.99347
циклопентан 70.1329 0.95317
метилциклопентан 84.15948 0.93508
этилциклопентан 98.18606 0.87532
циклогексан 84.15948 0.93188
метилциклогексан 98.18606 0.89677
этилциклогексан 112.21264 0.81121
бензол 78.11184 0.93948
толуол 92.13842 0.89431
этилбензол 106.165 0.86354
о-ксилол 106.165 0.81707
метанол 32.04186 0.8305
метантиол 48.10746 0.9731
водород 2.01588 1.00059
вода 18.01528 0.952
сероводород 34.08088 0.99193
аммиак 17.03052 0.98871
цианид водорода 27.02534 0.93009
монооксид углерода 28.0101 0.99959
карбонилсульфид 60.0751 0.98825
дисульфид углерода 76.1407 0.96413
гелий 4.002602 1.0005
неон 20.1797 1.00048
аргон 39.948 0.9993
азот 28.0134 0.99976
кислород 31.9988 0.99927
диоксид углерода 44.0095 0.99466
диоксид серы 64.0638 0.98161
воздух 28.96546 0

Исходная консольная программа

Sample: Пироконденсат
Duration: 23,80
Method: Бензол
 N           Height             Area    Concentration                 Name
01     38151,789418     10919,128290        17,338186          неароматика
02    123628,279959     21818,599863        34,645161               бензол
03     51506,040970      9375,661141        14,887357               толуол
04      5222,474205       883,562592         1,402986           этилбензол
05      9811,519911      1844,182954         2,928327           метаксилол
06      1116,974771       181,323925         0,287920           параксилол
07     31550,932609      6451,971425        10,244911    2,3-диметилгептан
08      3508,218500       787,941046         1,251148           ортоксилол
09      1957,760468       426,746654         0,677619          компонент 9
10     18881,539624      4090,270943         6,494829               стирол
11      2084,847810       485,866458         0,771495         компонент 11
12      3587,759005      1565,561202         2,485913         компонент 12
13       952,853930       263,633014         0,418615         компонент 13
14      2022,471050       722,746548         1,147629         компонент 14
15      5884,995502      3160,142671         5,017904              н-нонан

Приложение и файлы .STG

Консольное приложение и файлы .stg для теста можно взять по ссылке chromos-read-stg-main.zip

Контакты

Результат в виде работающей программы прислать на электронную почту soft@has.ru

soft/progtest.txt · Последнее изменение: 2024/02/21 16:17 — stramnov