Pokaż wiadomości
|
Strony: [1] 2 3
|
4
|
Koło Naukowe / Portal z zadaniami / Odp: bardzo_proste_zadania
|
: Marca 23, 2015, 08:59:50
|
Nie pamiętam żebyśmy mówili, że tutorial ma być "darmowy", w ogóle chyba tego nie ustalaliśmy... IMO zadanie o strukturach wrzuć jako "zwykłe", bo tutorial powinien być stricte informatyczny, żeby nie odwracać uwagi od meritum. Pomyślałem sobie teraz, że można by było zrobić tutoriaton, na którym w kilka godzin stworzylibyśmy tutorial razem i spójnie w każdym tego słowa znaczeniu. Problem w tym, że terminarz nam pęka w szwach 
|
|
|
5
|
Koło Naukowe / Portal z zadaniami / Odp: bardzo_proste_zadania
|
: Marca 22, 2015, 12:33:59
|
Tutorial programistyczny to jedno, ale przydałoby się też zrobić kilka zadań przyrodniczo-informatycznych, takich na 5/10/15min i dla kogoś o podstawowych umiejętnościach programistycznych. Bo póki co mamy same średnie i trudne, a brakuje łatwych (pomijam Fahrenheit -> Celsius).
|
|
|
7
|
Koło Naukowe / Portal z zadaniami / Odp: algorytmy sortujące
|
: Marca 15, 2015, 10:03:46
|
xD zbliża do sukcesu, ale ja mówię o n przebiegach "zewnętrznej" pętli (założyłem, że to oczywiste, że tego nie zmieniamy) from random import randint l=[] for i in range(100): l.append(randint(0,100))
def bs(l): for i in range(len(l)-1): zmiana=0 for j in range(len(l)-i-1): if zmiana==2:brak if l[i+1]<l[i]: zmiana+=1 pomocnicza=l[i+1] l[i+1]=l[i] l[i]=pomocnicza return l print l print bs(l)
Dopiero po kodzie zrozumiałem o co Ci chodzi - ok to ma sens, tylko może odwrócić uwagę od meritum. Patrząc na to co wcześniej pisałeś - nie wiem z których fragmentów miałem się w tym połapać. A tak w ogóle to jakie mają tam być zadania :| jak nie do nauki to do czego? Jak do ciekawszych zadań to takie utrudnienie jest ciekawe moim zdaniem. Zadania mają nie tyle uczyć (no chyba, że uczyć wnioskowania, kreatywności itd.) co umożliwić sprawdzenie czy rozumie się dane zagadnienie i ewentualnie zmotywować do douczenia się. Wpisując sorted() mogę nie ogarniać nawet bubblesorta. Mogę się podpisać pod tym co napisała maciosz w punkcie 2).
|
|
|
8
|
Koło Naukowe / Portal z zadaniami / Odp: algorytmy sortujące
|
: Marca 15, 2015, 08:27:46
|
czyli sądzisz że robiąc tylko 2 zmiany w każdym przebiegu listy polegające na zamianie sąsiadujących wartości jesteśmy w stanie przesortować całą listę? Oczywiście, że tak. Każda zmiana (choćby i jedna w każdym przebiegu) zbliża nas do sukcesu. Jeśli to nie jest dla Ciebie oczywiste - zakoduj to w Pythonie i zobacz (5min roboty). Chętnie ujrzę kontrprzykład  Zawsze znajdzie się droga, na jakieś czitowanie, ale nie twórzmy zadań, które można rozwiązać w minutę z prośbą o zrobienie tego "na około". Bubblesorta można (prosząc o ten setny krok) pozbawić tej wady, więc te dla których nie da się wymyślić obejścia po prostu sobie darujmy. Do nauki są tutoriale, a czelendże są do czelendżowania. Takie jest moje zdanie. Amen. P.S. Mógłby się ktoś poza nami wypowiedzieć na ten temat, bo mamy wyraźnie odmienne poglądy. Dobrze byłoby sprawdzić kto jest w tym aspekcie mniejszością.
|
|
|
9
|
Koło Naukowe / Portal z zadaniami / Odp: algorytmy sortujące
|
: Marca 15, 2015, 07:44:32
|
Po 1: strasznie udziwniamy algorytm, co odwraca uwagę od meritum (i złożoności obliczeniowej) Po 2: przecież na końcu ta lista będzie posortowana (jak każda inna) kolejne trzy kroki: 5-4 zamiana, 5-6 ok, 6-3 zamiana > break 4,5,3,6,8,8 4-5 ok, 5-3 zamiana, okokokokok > następny przebieg 4,3,5,6,8,8 4-3 zamiana okokokokokok > następny przebieg 3,4,5,6,8,8      chyba, że czegoś nadal nie rozumiem EDIT: Czekaj, czekaj, czekaj... Mam pomysł! Możemy dać listę na start i poprosić o wpisanie listy po np. 100 obrotach pętli bubble-sorta. Z tym, że ciężko coś analogicznego wymyślić dla algorytmów rekurencyjnych...
|
|
|
10
|
Koło Naukowe / Portal z zadaniami / Odp: algorytmy sortujące
|
: Marca 15, 2015, 06:19:25
|
Zdefiniuj dokładnie te "zaburzenia", bo nie jestem w stanie przeanalizować => zrozumieć tego co napisałeś. Tak z interpunkcją i takimi tam...  Co do sortowania w n-wymiarach: zdefiniuj jaką macierz (póki co w (edit: 2d i) 3d uznajemy za posortowaną), bo to też nie musi być proste.
|
|
|
11
|
Koło Naukowe / Portal z zadaniami / Odp: algorytmy sortujące
|
: Marca 15, 2015, 05:32:40
|
Nadal te modyfikacje sprowadzają się do: (parser) sorted() (parser)
Zadań na parsowanie już trochę jest, więc moje zdanie pozostaje niezmienione - darowałbym sobie to.
Aczkolwiek to sortowanie w n-wymiarach brzmi bardzo fajnie i jakbyś to jakoś rozwinął to mogłoby wyjść coś naprawdę ciekawego i niestandardowego - to jak najbardziej popieram!
|
|
|
12
|
Koło Naukowe / Portal z zadaniami / Odp: algorytmy sortujące
|
: Marca 15, 2015, 02:49:14
|
Wtedy algorytm rozwiązania wygląda tak: prosty parser sorted()
Generalnie myślałem o sortowaniu jak zastanawiałem się nad zadaniem "optymalizacyjnym", ale z przyczyn, które wymieniłem odrzuciłem tą myśl. Ciężko jest ułożyć tego typu zadanie tak, żeby sorted() nie było najprostszym rozwiązaniem, ale być może jest to możliwe.
|
|
|
13
|
Koło Naukowe / Portal z zadaniami / Odp: algorytmy sortujące
|
: Marca 15, 2015, 12:50:47
|
Pilnując, żeby nigdzie tego nie było, a w przyszłości - generując losowe dane. Poza tym, co innego szukać nie wiadomo gdzie "pirackich" rozwiązań, a co innego skorzystać z gotowego, najprostszego rozwiązania.
Generalnie sortowanie to ważny i fajny temat, ale bardziej na artykuł/część programistycznego tutoriala niż zadanie, imho.
|
|
|
14
|
Koło Naukowe / Portal z zadaniami / Odp: Parser FASTY
|
: Marca 15, 2015, 12:44:55
|
FASTA “kombajn”#FASTA to zdecydowanie najpopularniejszy format pliku służący do reprezentowania sekwencji nukleotydowych i aminokwasowych w formie cyfrowej. W dużym uproszczeniu format składa się z linii zawierających opis sekwencji (zaczynających się znakiem większości “>”) oraz z linii zawierających jednoliterowe skróty nazw nukleotydów/aminokwasów tworzących sekwencję (litery mogą być przedzielane spacjami i liczbami), przy czym te pierwsze nie są obowiązkowe. W jednym pliku może znajdować się jedna lub więcej sekwencji. Kliknij TUTAJ /*(w przyszłości damy odsyłacz do naszego kompendium  )*/, aby dowiedzieć się więcej o formacie FASTA. Przykłady: >gi|568815587:6259611-6272127 Homo sapiens chromosome 11, GRCh38.p2 Primary Assembly (fragment) GGGAACCGGACCCGGGCCGGGGGCTTCCCTGTGCCGCCCGGGGGCGCCTCTCCTCAACAGCAGCAGTGTG GGCAACCTCAGCTGCGAGCCCCCTCGCATTCGCGGAGCCGGGACACGAGGTGGGTGCCTCCCTCAGCCCC CCCCACAAGCTATTTCTCACTGTACCCCAGAACACTAATAGAGTCCCCCCAACGAGCTCCACACTACCTT CTCAAACGTCCACACCGTGCCTCTCATAGTACTCCCTCAGCCCCCAAACAGCTCCCCTCACACCTTCACC CCCACAGCCTACAACTTCATCACAGCTTCACACCACCTGGTCGGAACTCCTTCACATCCTGGTCCCCTGA ATACACCTAGAGCCCCTGCT >sp|Q7XTE8|14332_ORYSJ 14-3-3-like protein GF14-B OS=Oryza sativa subsp. japonica GN=GF14B PE=1 SV=2 1 MSAQAELSRE ENVYMAKLAE QAERYEEMVE FMEKVAKTVD SEELTVEERN LLSVAYKNVI 61 GARRASWRII SSIEQKEESR GNEDRVTLIK DYRGKIETEL TKICDGILKL LESHLVPSST 121 APESKVFYLK MKGDYYRYLA EFKTGAERKD AAENTMVAYK AAQDIALAEL PPTHPIRLGL 181 ALNFSVFYYE ILNSPDRACN LAKQAFDEAI SELDTLSEES YKDSTLIMQL LRDNLTLWTS 241 DISEDTAEEI REAPKRDSSE GQ >sp|Q8JG70|AA2DA_DANRE Alpha-2Da adrenergic receptor OS=Danio rerio GN=adra2da PE=3 SV=1 1 MSVTPTANST EEAANITASP RLWPYTEPAS AIIILVVSLI ILLTIVGNVL VIVAVLTSRA 61 LRAPQNLFLV SLACADILVA TLVIPFSLAN EIMGYWYFGS TWCAFYLALD VLFCTSSIVH 121 LCAISLDRYW SVTKAVRYNL KRTPRRIKCM IAVVWLISAV ISFPPLIMTK HDEKECLIND 181 ETWYILSSCA VSFFAPGLIM ITVYCKIYRV AKQRSSTVFV AKNGLERQPS QSETCFVRKD 241 KFEKESPSSN SSESAQRQEE LDDIDLEESA ASDSRARGSR FSKRRRVEGE RRGPQRSCRV 301 SWAAHQEPGS RQQQLASKSK VAQMREKRFT FVLAVVMGVF VLCWFPFFFT YSLQAVCGER 361 CGPPEALFKL FFWIGYCNSS VNPIIYTIFN RDFRKAFKKV VCWSAQRT >sp|Q08C93|ABD12_DANRE Monoacylglycerol lipase ABHD12 OS=Danio rerio GN=abhd12 PE=2 SV=1 1 MRKRKGSADH DSSFTATLTD GSSDLKQCHK GTDADTDPGG SGKEMGRRCR RGGLMWRLRR 61 ILIWLLGIYI AIPVIIKVCP SIQAKLVFLN FVRVPYFIDL KRPQDQGMNH THNFYLQPEE 121 GINIGVWHTV PAGMWREAQA KDAEWYEKSF QSSHPVILYL HGNAGTRGGD HRVQLYKVLS 181 SLGYHVVTFD YRGWGDSEGS PSERGMTSDA LFLYQWIKQR IGPKPLYIWG HSLGTGVATN 241 LVRRLCDRGT PPDALILESP FTNIREEAKS HPFSMVYRYL PGFDWFFLDA ISANDIRFAS 301 DENVNHISCP VLILHAEDDT VVPFQLGKKL YDLAAQSKSL NGHKVQFIPF SSSLGYRHKF 361 IYKSPQLPNI LSDFLRAPHP HG Napisz program, który wczyta plik w formacie FASTA (na potrzeby zadania przyjmijmy, że w pliku znajduje się jedna sekwencja jądrowego, eukariotycznego DNA nieprzedzielona spacjami/liczbami - tak jak w pierwszym przykładzie) i go zanalizuje, tj.: -Obliczy #GC-content (w przypadku niedokładnie określonego nukleotydu (litery innej niż A/C/G/T) należy go pominąć), -Znajdzie wszystkie potencjalne #kodony start i stop (przyjmijmy, że są to odpowiednio ATG oraz TAG, TAA, TGA), tj. pozycje pierwszych nukleotydów w kodonie, -Znajdzie wszystkie potencjalne #TATA-box’y (sekwencje ‘TATAAA’), tj. pozycje pierwszej tyminy w box’ie, -Znajdzie wszystkie wystąpienia sekwencji A$TT$CC$A, gdzie $ to dowolny nukleotyd (może być nieokreślony), tj. pozycje pierwszej adeniny w tej sekwencji, -Znajdzie pozycje wszystkich niedokładnie określonych nukleotydów, -Poda ilość nukleotydów w sekwencji. Wpisz dane wynikowe do odpowiednich rubryk w poniższej tabeli.
|
|
|
|
|