Kodomo

Пользователь

Учебная страница курса биоинформатики,
год поступления 2011

/!\ За выполнение сегодняшнего задания и задания следующего раза в репозитории добавляется 0.5 балла. /!\ Впоследствии из каждого задания будет вычитаться 0.5 балла за выполнение его без репозитория. /!\

Задание

  1. (0 баллов) Упражнение на репозитории. Встаньте прямо, ноги на ширине плеч, дыхание ровное. Создайте репозиторий в директории, где вы последний раз писали программы. Добавьте все питонские файлы в репозиторий. Создайте коммит. Проверьте, что файлы записались (командой status, см help). Добавьте пустую строку к одному из файлов. Посмотрите изменения (diff). Отмените эти изменения (командой revert или update, см help). Удалите все питонские файлы1 в директории. Верните их обратно.

  2. (1 балл) Напишите программу, которая рисует кружочки по координатам, которые получает из файла. Файл называется circles.txt и лежит в той же директории, что и программа. Формат файла: на каждой строке два числа через пробел: x y. (См. пример входного файла ниже).

  3. (1.5 балла) Напишите программу, которая рисует кружочки по координатам, которые получает из файла. Имя файла программа получает из командной строки. Формат файла: на каждой строке три числа и строка через пробел: x y r color. (См. пример входного файла ниже).

  4. (2 балла) Скачайте файл PDB с http://pdb.org, например, для PDB ID "2YC6". Напишите программу, которая для каждой альфа-спирали рисует ломаную, изображающую проекцию этой спирали на плоскость XY, то есть:

    1. запоминает для каждой спирали номера первого и последнего остатка (см. тэг HELIX)

    2. для каждого атома, принадлежащего той же цепочке и тому же диапазону остатков, и имеющему имя CA, добывает его координаты, преобразует их и сохраняет в списке (см. тэг ATOM)

    3. для каждого списка (описывающего одну спираль) рисует ломаную, проходящую через эти точки
  5. (2 балла) Напишите программу, которая получает на вход PDB-файл, и выдаёт таблицу в формате CSV, в которой для каждой спирали указаны:

    1. номера первого и последнего остатков спирали
    2. среднее расстояние между соседними Cα атомами в спирали

    3. среднюю длину шага витка спирали (то есть отношение расстояния между крайними Cα-атомами спирали к количеству витков спирали, делённое на 3.6)

Наблюдательный студент может заметить, что задание 5 является отдалённым эквивалентом задания 4 для тех, кому надоело рисовать графические программы.

Пример входного файла для задания 1

100 200
102 219
104 239
106 259
108 277
110 295
112 312
114 328
116 343
118 356
120 368
122 378
124 386
126 392
128 397
130 399
132 399
134 398
136 394
138 389
140 381
142 372
144 361
146 349
148 335
150 319
152 303
154 285
156 266
158 247
160 228
162 208
164 188
166 168
168 148
170 129
172 111
174 94
176 77
178 62
180 48
182 36
184 25
186 16
188 9
190 4
192 1
194 0
196 0
198 3
200 8
202 14
204 23
206 33
208 45
210 58
212 73
214 89
216 107
218 125
220 144
222 163
224 183
226 203
228 223
230 243
232 262
234 280
236 298
238 315
240 331
242 345
244 358
246 370
248 379
250 387
252 393
254 397
256 399
258 399
260 397
262 393
264 388
266 380
268 370
270 359
272 346
274 332
276 316
278 300
280 282
282 263
284 244
286 224
288 204
290 184
292 165
294 145
296 126
298 108

Пример входного файла для задания 2

100 200 10 green
102 219 10 green
104 239 10 green
106 259 10 green
108 277 10 green
110 295 10 green
112 312 10 green
114 328 10 green
116 343 10 green
118 356 10 green
120 368 10 green
122 378 10 green
124 386 10 green
126 392 10 green
128 397 10 green
130 399 10 green
132 399 10 green
134 398 10 green
136 394 10 green
138 389 10 green
140 381 10 green
142 372 10 green
144 361 10 green
146 349 10 green
148 335 10 green
150 319 10 green
152 303 10 green
154 285 10 green
156 266 10 green
158 247 10 green
160 228 10 green
162 208 10 green
164 188 10 green
166 168 10 green
168 148 10 green
170 129 10 green
172 111 10 green
174 94 10 green
176 77 10 green
178 62 10 green
180 48 10 green
182 36 10 green
184 25 10 green
186 16 10 green
188 9 10 green
190 4 10 green
192 1 10 green
194 0 10 green
196 0 10 green
198 3 10 green
200 8 10 green
202 14 10 green
204 23 10 green
206 33 10 green
208 45 10 green
210 58 10 green
212 73 10 green
214 89 10 green
216 107 10 green
218 125 10 green
220 144 10 green
222 163 10 green
224 183 10 green
226 203 10 green
228 223 10 green
230 243 10 green
232 262 10 green
234 280 10 green
236 298 10 green
238 315 10 green
240 331 10 green
242 345 10 green
244 358 10 green
246 370 10 green
248 379 10 green
250 387 10 green
252 393 10 green
254 397 10 green
256 399 10 green
258 399 10 green
260 397 10 green
262 393 10 green
264 388 10 green
266 380 10 green
268 370 10 green
270 359 10 green
272 346 10 green
274 332 10 green
276 316 10 green
278 300 10 green
280 282 10 green
282 263 10 green
284 244 10 green
286 224 10 green
288 204 10 green
290 184 10 green
292 165 10 green
294 145 10 green
296 126 10 green
298 108 10 green
100 200 50 red
90 200 50 red
80 200 50 red
  1. Этот шаг требует смелости и уверенности в том, что все файлы действительно лежат в репозитории и закоммичены. На всякий случай, пока вы не освоили для этой цели репозиторий, сделайте перед этим резервную копию директории. (1)