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

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


soft:progtest

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
soft:progtest [2022/09/30 10:52] fesersoft:progtest [2025/07/29 13:39] (текущий) stramnov
Строка 1: Строка 1:
-====== Тестовое задание для программиста ======+====== Техническое задание: Программиста ======
  
 Необходимо переделать консольную программу, которая зачитывает информацию из файлов (*.stg) и отображает в виде таблицы в программу с оконным интерфейсом. Необходимо переделать консольную программу, которая зачитывает информацию из файлов (*.stg) и отображает в виде таблицы в программу с оконным интерфейсом.
  
-Предпочтительно использовать Visual C++ и MFC.+==== Стек технологий ====
  
 +  * Основной язык разработки: C++
 +  * Фреймворк: MFC
 +  * Среда для разработки: MS Visual C++
  
-Исходная консольная программа+==== Интерфейс ====
  
-{{:soft:console.png|}}+{{ :soft:user_interface.png |}}
  
 +В главном окне программы представлена таблица пиков, в которой указаны следующие данные о пиках:
 +  * «#» – порядковый номер;
 +  * «Время(мин)» – время выхода пика (мин);
 +  * «Высота(мВ)» – высота пика (мВ);
 +  * «Площадь(мВ·мин)» – площадь под кривой пика (мВ·мин);
 +  * «Концентрация(мол%)» – концентрация компонента (молярная доля, %);
 +  * «Концентрация(масс%)» – концентрация компонента (массовая доля, %);
 +  * «Компонент» – наименование компонент;
 +Кнопки: 
 +  * «Открыть» – открытие диалога выбора файла хроматограммы;
 +  * «Закрыть» – завершение работы программы.
  
-Примерный вид программы в оконном интерфейсе:+==== Расчет ====
  
-{{:soft:windows.png|}}+Необходимо нормализовать значения молярной доли компонентов по формуле: <m 16>x_i = {{{x prime}_i/ {sum{j}{}{{x prime}_j}}} * 100</m> 
 +, где <m 16>x_i</m> – нормализованное значение молярной доли компонента, <m 16>{x prime}_i</m>– молярная доля i-го компонента.
  
-Консольное приложение и файлы .stg для теста можно взять из репозитория GIT:\\ +В хроматограммах концентрация компонента указана в молярных долях. Необходимо для каждого компонента вычислить концентрацию в массовых долях. 
-https://github.com/gfeser/chromos-read-stg+Пересчёт молярной доли компонента в массовую<m 16>w_i = {{x_i*M_i} {sum{j}{}{x_j*M_j}}} * 100</m> 
 +, где  <m 16>w_i</m> – массовая доля i-го компонента, <m 16>M_i</m> – молярная масса i-го компонента (кг/моль).
  
 +В расчете участвуют только компоненты для которых определено именование.
  
-Результат в виде работающей программы прислать на электронную почту soft@has.ru +==== Справочные данные ==== 
 + 
 +^Компонент                             Молекулярная масса^    Коэффициенты сжимаемости^ 
 +|метан                                   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| 
 + 
 + 
 +==== Исходная консольная программа ==== 
 + 
 +<code> 
 +Sample: Пироконденсат 
 +Duration: 23,80 
 +Method: Бензол 
 +           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              н-нонан 
 +</code> 
 + 
 + 
 +==== Приложение и файлы .STG ==== 
 + 
 +Консольное приложение и файлы .stg для теста можно взять по ссылке {{ :soft:chromos-read-stg-main.zip |}} 
 + 
 + 
 +==== Контакты ==== 
 + 
 +Результат в виде работающей программы и исходных кодов к ней прислать на электронную почту soft@has.ru 
  
soft/progtest.1664524320.txt.gz · Последнее изменение: 2022/09/30 10:52 — feser