![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
Mam pomysł by zacząć Quiz php, kto pierwszy odpowie poprawnie na zadane pytanie ma prawo do zadania kolejnego pytania, i tak dalej.
Trafiłem na fajne pytanie na forum goldenline, i zamierzam je Wam tu wkleić: Cytat to może ktoś się podejmie bardziej hardcorowego zadania: program który wyprintuje własny kod i będzie się zawierać w 1 pliku na ekranie po uruchomieniu skryptu ma się pojawić dokładnie to samo co jest w pliku żeby nie było za łatwo - nie można w żaden sposób odczytywać pliku w którym jest zapisany kod tego programu dodam że jest to wykonalne ;D Krzysztof Korzeniewski edytował(a) ten post dnia 18.08.10 o godzinie 22:17 Link: http://www.goldenline.pl/forum/1647030/php-quiz/s/4 Ja nie mam pojęcia jak to zrobić w php, by w samym pliku, wypluć wszystko począwszy od <?php do miejsca w którym wypluwamy kod. Jak ktoś wie jak to zrobić to czekam ;] -------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%) ![]() ![]() |
show_source
![]() //edit Chyba nie doczytał?em pytania, bo nie można odczytywać pliku ![]() Ten post edytował Wicepsik 20.08.2010, 20:06:15 -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Nie wiem, czy drążę w dobrą stronę, ale coś mi się widzi, że trzeba będzie użyć przekierowania strumienia. Aczkolwiek zgaduje teraz
![]() -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jako, że ma to być program, to chyba takie rozwiązanie odpada, ale zawsze można wyłączyć interpretację plików php przez parser
![]() -------------------- Napisane z palca! <- to tak dla lansu ;)
FancyStudio.pl - Tworzenie Stron WWW w Oparciu o XHTML, CSS, JS, PHP i MySQL. Mój blog :: Portfolio Fotograficzne Igora Biedrawy |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 782 Pomógł: 153 Dołączył: 21.07.2010 Ostrzeżenie: (0%) ![]() ![]() |
@Blame, niekoniecznie. Na bezczela można by zrobić tak:
i bronić się że przecież nasz skrypt nie odczytuje bezpośrednio tylko zleca wykonanie parserowi PHP, ale to nie jest rozwiązanie ![]() Przeglądałem manual na wszystkie strony i o ile nie istnieje jakaś nieudokumentowana funkcja która pozwala dobrać się do cache Zend Engine to raczej nie widzę rozwiązania. Może @thek pije w dobrą stronę ale ja się poddałem. -------------------- Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]! |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Jako, że ma to być program, to chyba takie rozwiązanie odpada, ale zawsze można wyłączyć interpretację plików php przez parser ![]() ale on ma wyprintować swój kod... nie serwer tylko on sam. @topic jestem bardzo ciekawy rozwiązania ![]() -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
Quine
poniżej przykład
lub tak:
Ponieważ mogę ale nie muszę zadać kolejne pytanie to sobie daruję. Mimo to miłej zabawy - w razie czego znowu wam ją popsuję ![]() Ten post edytował devnul 21.08.2010, 00:37:52 -------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
Hahaha, wiedziałem że to będzie coś z evalem. Ten drugi przykład to jeszcze rozumiem, ale tego pierwszego to niestety ;]
Ale nie jestem pewien, że autorowi pytania o takie rozwiązanie chodziło, gdyż w Twoim przykładzie devnull trzeba 2x ten sam kod napisać by go wyprintować i by wyglądał jakby się sam wyprintował. Ten post edytował cojack 21.08.2010, 09:26:39 -------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Mi się zdaje bardziej, że jeżeli skrypt wygląda tak:
to ma wyprintować od <?php do ?> sam siebie -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
Zgadzam się.
-------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
@cojack Wiesz w ogóle jakie ma być rozwiązanie?
![]() -------------------- Napisane z palca! <- to tak dla lansu ;)
FancyStudio.pl - Tworzenie Stron WWW w Oparciu o XHTML, CSS, JS, PHP i MySQL. Mój blog :: Portfolio Fotograficzne Igora Biedrawy |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
@cojack: jestem pewien że dokładnie o to chodziło autorowi, "problem" jest stary jak samo programowanie i na tym polega cała "trudność" że w żaden sposób fizycznie się do kodu nie dobieramy. To co wkleiłem to tylko 2 z setek różnych możliwości - przy odrobinie wysiłku i zrozumieniu problemu można bez trudu napisać coś takiego samemu, a wersja z evalem to tylko czysty przykład, w pierwszej podanej przeze mnie możliwości eval nie występuje a wynik jest dokładnie taki sam (wyprintowanie własnego kodu).
@fifi209: źle Ci się zdaje. Podany przez Ciebie przykład nie ma racji bytu bo niby jak chcesz wydrukować kod programu nie dobierając się do jego źródła? Chodzi właśnie o takie napisanie programu żeby w jego kodzie zawrzeć go ponownie. Rety ludzie to przecież są podstawy programowania. Nie chce mi się wierzyć że to dla was taka czarna magia. Zagadnienie wymaga trochę wiedzy i umiejętności myślenia na trochę wyższym poziomie abstrakcji niż surykatka ale przy odrobinie wysiłku jest do zrobienia przez każdego. Pokrewne chociaż rzadziej spotykane reverse Quine - czyli wypisanie źródła programu ale od końca do początku. Ktoś spróbuje? -------------------- |
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Rety ludzie to przecież są podstawy programowania. Nie chce mi się wierzyć że to dla was taka czarna magia. Zagadnienie wymaga trochę wiedzy i umiejętności myślenia na trochę wyższym poziomie abstrakcji niż surykatka ale przy odrobinie wysiłku jest do zrobienia przez każdego. Jakie podstawy? To, że kiedyś gdzieś zasłyszałeś o takiej metodzie nie powoduje zakwalifikowania jej do podstaw. Nie udawaj znowu takiego cwaniaka, dla którego to pestka. Sam wkleiłeś kody z Wikipedii; nie sądzę byś miał z nimi do czynienia na co dzień. |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) ![]() ![]() |
@cojack Wiesz w ogóle jakie ma być rozwiązanie? ![]() Nie znam rozwiązania ![]() -------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
@cojack: to już znasz, jeżeli wątpisz proponuję skontaktować się z autorem pytania na goldenline
@phpion: jej, jak mi wstyd - wybacz że nie chciało mi się pisać tego o wpół do drugiej w nocy i posłużyłem się przykładami z wikipedi (do której niemalże zalinkowałem), z czym wcale się nie kryję. Może trochę przesadziłem pisząc o podstawach ale nie zmienia to faktu że każdy kto trochę się zajmuje programowaniem się z tym zetknął. Problem w tym że dzisiaj większość rzeczy pisze się korzystając z frameworków a na boczny tor schodzi kompletnie umiejętność logicznego myślenia bo robią to za nas autorzy tych właśnie "magicznych" narzędzi. Mimo wszystko dla kogoś ze "starej szkoły" quine to moim zdaniem nic nowego. Przynajmniej ja się z tym zetknąłem w czasach gdy jeszcze internet się przenosiło na dyskietkach? Poniżej masz coś napisanego na szybko tak specjalnie dla Ciebie żebyś mi nie deptał po ego. Pozdrawiam i bez urazy ![]()
//edit: @phpion: no i oczywiście masz rację nie mam z tym do czynienia na co dzień bo jest to problem typowo akademicki w życiu codziennym (niemal) zupełnie do niczego Ci się nie przyda, niemniej jednak dalej uważam że każdy kto ma do czynienia z programowaniem powinien przynajmniej spróbować napisać quina w dowolnym języku ot choćby po to żeby się sprawdzić lub nauczyć czegoś nowego. Nie uważasz? Ten post edytował devnul 21.08.2010, 14:01:52 -------------------- |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
Może trochę przesadziłem pisząc o podstawach ale nie zmienia to faktu że każdy kto trochę się zajmuje programowaniem się z tym zetknął. To raczej jest ciekawostka/zagadka dla zapaleńców a nie coś co każdy powinien znać. No nie przesadzajmy. Tak samo rozwiązywałem kiedyś pewne zadania, wszystko miało działać a kodu miało być jak najmniej tylko umiesz. Czysta zabawa nic więcej. Zresztą spróbuj sam http://nullcode.pl/zadanie-2-ilo-t80.html?...4cb2fc4bea28d97 bo ja się wkręciłem nad udoskonalaniem swojego kodu ![]() ![]() -------------------- Moja gra - scraby.io
|
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%) ![]() ![]() |
199 ![]() Ten post edytował Wicepsik 21.08.2010, 15:39:33 -------------------- |
|
|
![]()
Post
#18
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Ale to nie zmienia faktu, że to głównie sztuka dla sztuki. Wiedza dla odczytania tylko własnego kodu jest... w jakiś sposób użyteczna?
~Wicepsik, kiedyś pomagałem kumplowi pisać program do przeliczania pewnego wzoru. No i miał być wykres. No to zrobiliśmy. Tylko że dopiero potem prowadzący powiedział, że to w excelu. ![]() A my zrobiliśmy taki a'la w lame przy kodowaniu. ![]() -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
@Wicepsik kody były sprawdzane w konsoli i należy korzystać z tablicy $argv.
Poza tym po co Ci funkcja! To są zbędne znaki ![]() ![]() -------------------- Moja gra - scraby.io
|
|
|
![]()
Post
#20
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
zakładam że Twój wynik to 151 u mnie 149 i da się jeszcze trochę uprościć @Wicepsik: Twoje rozwiązanie działa niezbyt dokładnie (bramowanie jest krzywe) no i dodatkowo brakuje Ci ostatniej pustej kolumny @erix: niby sztuka dla sztuki ale jednak jakaś tam gimnastyka dla głowy jest -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 04:32 |