Учебная страница курса биоинформатики,
год поступления 2011
За выполнение сегодняшнего задания и задания следующего раза в репозитории добавляется 0.5 балла. Впоследствии из каждого задания будет вычитаться 0.5 балла за выполнение его без репозитория.
Задание
(0 баллов) Упражнение на репозитории. Встаньте прямо, ноги на ширине плеч, дыхание ровное. Создайте репозиторий в директории, где вы последний раз писали программы. Добавьте все питонские файлы в репозиторий. Создайте коммит. Проверьте, что файлы записались (командой status, см help). Добавьте пустую строку к одному из файлов. Посмотрите изменения (diff). Отмените эти изменения (командой revert или update, см help). Удалите все питонские файлы1 в директории. Верните их обратно.
(1 балл) Напишите программу, которая рисует кружочки по координатам, которые получает из файла. Файл называется circles.txt и лежит в той же директории, что и программа. Формат файла: на каждой строке два числа через пробел: x y. (См. пример входного файла ниже).
(1.5 балла) Напишите программу, которая рисует кружочки по координатам, которые получает из файла. Имя файла программа получает из командной строки. Формат файла: на каждой строке три числа и строка через пробел: x y r color. (См. пример входного файла ниже).
(2 балла) Скачайте файл PDB с http://pdb.org, например, для PDB ID "2YC6". Напишите программу, которая для каждой альфа-спирали рисует ломаную, изображающую проекцию этой спирали на плоскость XY, то есть:
запоминает для каждой спирали номера первого и последнего остатка (см. тэг HELIX)
для каждого атома, принадлежащего той же цепочке и тому же диапазону остатков, и имеющему имя CA, добывает его координаты, преобразует их и сохраняет в списке (см. тэг ATOM)
- для каждого списка (описывающего одну спираль) рисует ломаную, проходящую через эти точки
(2 балла) Напишите программу, которая получает на вход PDB-файл, и выдаёт таблицу в формате CSV, в которой для каждой спирали указаны:
- номера первого и последнего остатков спирали
среднее расстояние между соседними Cα атомами в спирали
среднюю длину шага витка спирали (то есть отношение расстояния между крайними 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)