#pragma css /css/2020.css <<BI>> ВАЖНО, ИНАЧЕ МЫ НЕ НАЙДЕМ ВАШИ РАБОТЫ!!! Все файлы с программами сохраняйте в папку ~/term1/block2/homeworks, название скрипта – <название_задания>.py (aminoacid.py etc.) == 1. aminoacid == Пользователь вводит один из однобуквенных кодов аминокислот (в любом из регистров). Если введённый код соответствует ароматической аминокислоте, то программа выводит: "aromatic". Если код соответствует алифатической аминокислоте, программа выводит "aliphatic". Если код соответствует аминокислоте, которая не относится ни к ароматическим, ни к алифатическим, программа выводит "other". Если был введен не код аминокислоты, программа выводит "error". Пример входа: {{{ F }}} Пример выхода: {{{ aromatic }}} [[https://kodomo.fbb.msu.ru/FBB/BasicData/aa_properties/AA_groups.gif|Подсказка]] Ещё подсказка: перечитайте в [[https://kodomo.fbb.msu.ru/FBB/year_19/basics2/Basics_Lecture2.html|лекции]] раздел "операции над списками". == 2. squares == Выведите все квадраты натуральных чисел, которые строго меньше введённого натурального числа. Пример входа: {{{ 10 }}} Пример вывода: {{{ 1 4 9 }}} == 3. power-of-three == Программа приглашает пользователя ввести целое положительное число. Программа выводит "TRUE", если число является степенью тройки. Иначе программа выводит "FALSE". Пример входа: {{{ 19683 }}} Пример вывода: {{{ TRUE }}} == 4. head == Программа имитирует работу программы head <имя_входного_файла> -n <число выводимых строк> На вход программа принимает имя файла. Затем она принимает на вход число строк из файла, которые надо вывести. Если введённое число больше, чем число строк в файле, то программа выводит все строки в файле Пример входа: {{{ in.txt 2 }}} Пример вывода: {{{ One ring to rule them all, one ring to find them, }}} Файл '''in.txt''': {{{ One ring to rule them all, one ring to find them, One ring to bring them all and in the darkness bind them. }}} == 5. grep == Программа имитирует работу программы grep <строка> <имя_входного_файла> На вход программа принимает имя файла. Затем она принимает на вход строку. Затем программа выводит все строки файла, содержащие эту подстроку. Пример входа: {{{ in.txt безумн }}} Пример вывода: {{{ И лишь безумному - вера под стать А, переделав наш мир, всем безумными стать? }}} Файл '''in.txt''': {{{ Только дурак может вверх устремляться И лишь безумному - вера под стать Может быть, братцы, нам всем постараться Не доверяться шутам и паяцам А, переделав наш мир, всем безумными стать? }}} == 6. seqnames == Программа читает файл input-seqnames.fasta с последовательностями в fasta-формате и создаёт файл output-seqnames.txt с именами этих последовательностей, по одному в строке. [[2019/1/pr7/fasta|описание фаста-формата]] ''Указание: если строка начинается с ">", надо разделить её по пробелам и записать в выходной файл первый элемент получившегося списка, не забыв убрать '>' в начале и добавить '\n' в конце.'' ''Убрать начальный символ из строки можно, взяв "срез" с символа 1 до конца. Если в переменной `s` хранится строка, то `s[1:]` будет означать ту же строку без начального символа (напоминаем, что номер начального символа в строке — 0). '' ''Для любопытных: посмотреть, что делает метод строки `str.startswith`'' Пример входного '''файла''': {{{ >FOXB1 binding motif 1; score 0.058994 CGATCTGAGCAGAAGTCATACACATGGGAATGTATATAAGTCGAATCGTATGCC CATGGGAATGTATATAAGTCGAATCGTATGCCATACACATGATACACATGATAC CATGGGAATGTATATAAGTCGAATCGTATGCCATACACAATACACATGTATACA ATACACATGAAGTCGAATCGTATGCCAT >FOXB2 binding motif 2; score 0.074589 CGATCTGAGCAGCATAATGTCAATATTTACATAAGGAATCGCGAATC >GABPA binding motif 3; score 0.128900 GGGGAAGGGCACGAGGCGGGAGGCGAGGCG }}} Пример '''файла''' на выходе: {{{ FOXB1 FOXB2 GABPA }}} == 7. average == Файл input-average.txt содержит числа, по одному в строке. Программа читает этот файл и выдаёт на консоль среднее значение. ''Указание: заведите переменную-счётчик и другую переменную для суммы чисел.'' Пример входного '''файла''': {{{ 10 8 22 340 123419 -10 22.4 13 331 }}} Пример вывода в '''консоли''': {{{ The arithmetic mean of the numbers in the file is 13795.044444444444. }}} Еще один пример входного '''файла''': {{{ -1E10 1E8 }}} Пример вывода в '''консоли''': {{{ The arithmetic mean of the numbers in the file is -4950000000.0. }}} ''Замечание: в python (и в большинстве программ и языков программирования) вместо "1000000.0" можно писать "1E6", что означает единицу, умноженную на десять в шестой степени. float переводит вторую строку в число не хуже, чем первую; правда, для int такая запись не подойдёт.''