softverove hadanky
zaujimalo by ma, ci by ste mali zaujem o softverove hadanky? napr. co znamena tento regularny vyraz, kde je chyba v tejto autentifikacii alebo aky je toto typ hashu, atd. ak by bol zaujem, tak by som mohol ja alebo ostatni taketo nieco vymysliet na sprijemnenie dna. a ostatni sa mozno aj nieco naucia. na programovacom jazyku nezalezi.
Dobrý nápad, jsem pro.
Sem s tim
Ty máš účast zakázanou - ostatní si chtějí taky zahrát!
JaFimu vymyslime nejaku vo VB.
Pro Tebe, mam Honziku jednu speciálni. Jmenuje se to podivny.pas (se to pokusim nekde najít) a schvalene jestli poznas co to dela, bez kompilace: te tam spoustu divnej zapinani/vypínání directiv kompilátolru, asi nejaké rotace bitu a pod ... ale budu do muset najit, pokud to ted neznás.
A pro igora mam jeste jednu mnohem lepsi, to pas je podle me rozlustitelné a JaFi mu to nebude delat problém ale mam neco podobného v C/C++, které vypisuje básnicku o dvaceti slokách, presto ze jde o smet nekolika radku, ve kterých jsou klikyháky a to je fakt hustý.
Jinak dobré hádanky má na blogu Rene Steiner, ale ty nejsou pro me Jsou tusim v csharp a dost se týkaj návrhových vzoru.
napadlo ma, ci by nebolo dobre urobit samostatnu kategoriu, alebo kam to potom zaradit?
Asi by to chtělo tu samostatnou kategorii....
tiez si myslim
To by se nemuselo vyrábět uměle, stačí ty "hádanky", co se zjevují samy od sebe.
Jsem také pro, i když pokud se mne týká, jediná otázka, kterou bych uměl zodpovědět je, zda se ve slovech software či softvér píše dlouhé či krátké o.
Tohle náhodou vým i já. Píše se tam krátké.
Výborně
Tak vám nestačí, že tady na většinu otázek i odpovědí koukám, jako kdyby byly psaný svahilsky.
Ale samozřejmě souhlas, třeba pak budu o fous chytřejší.
Souhlas, pro programátorsky "méně" (...neboli nijak ) zběhlé by mohla být nějaká začátečnická kategorie ve stylu: "Co je lepší? Windows nebo Pentium?"
To vím, lepší je Pentium.
To už tu kdysi bylo,autorem byl tuším Mirek. Jasně že je lepší Pentium,ale stáhni si na něj z webu novou verzi a nové záplaty. A Windows jsou prý lepší ty nové pro USB 2.
Koukam ze se nekomu zalibil muj minulej avatar.
Nechci rozpoutávat žádný flame, ale Windows je o hodně lepší než Pentium.....
A o hodně horší než Radeon.
uz som aj jednu vymyslel, len pockam este na ostatne reakcie aby to malo aj nejaky vyznam a neriesili to len 3 ludia.
ja mam k programovaniu odpor ale zahral by som sa rad. co so mnou;o)?
Můžeš tipovat vítěze a když se trefíš, koupit mu panáka
Já to asi nevyhraju, neboť neustále pracuji a na hádanky nemám moc času. Jinak by jsi mně musel ožrat
robim up, pretoze nas uz je tu viac a ak by bol zaujem, mohol by som nejake vymysliet.
Dám ti nezištně inspiraci: Jakým příkazem uděláš z Pentia 286ku?
(příkazem: Win).
Nie, naučíš ho deliť.
Nebo tak
vsak vas prejde oboch sranda, ked budete musiet nakodovat brute force attacker. aj taku hadanku mam pre vas vymyslenu.
A to je čo za hádanku, veď to je vymyslené. Ja by som sa prihováral za niečo, čo nás poučí. Napríklad komplikované podmienky, prípadne zložitý algoritmus vyriešiť jednoduchšie a podobne.
budu rozne ale hlavne z mojej strany budu ohladne bezpecnosti. a hoto veci sa nebudu dat pouzit, lebo to navrhnem tak, ze sa bude musiet implementovat vlastny kod.
Nebo zkrátit a zrychlit program dle následujícího:
1. Každý program lze zkrátit alespoň o jednu instrukci.
2. Každý program má alespoň jednu instrukci blbě.
S pomocí úplné matematické indukce můžeme prohlásit: Každý program lze zkrátit, až zbyde jen jedna instrukce a ta je blbě.
Ale tá inštrukcia, čo je blbá je navyše.
nesouhlasim, pozejtri mam zkousku z DSA a pak z matematiky. Nikde jsem zádnej poujem "uplne matematické indukce" nevidel. Je jen silná matematická indukce. a silná mat indukcee.
Pardon, ze mozná rejpu ale pokud mi nekdo opraví budu jedine rád, docela by se to siklo
Už jsem ze všech škol tolik let, že mám nárok na nepatrné nepřesnosti. Zato ty to musíš vědět přesně.
ne silná a silná ale silný a slabý princim indukce
Dej jim nakódovat kus podadny, ať to k něčemu je. Začínat by to mohlo:
<php
super, aj nad tym som rozmyslal.
nez nekdo neco vymysli:
[pas]function gggy(vstupy:integer;cislo:integer):integer;
var
p:integer;
begin
if vstupy=5 then begin
if (cislo mod 4) <> 0 then result:=((cislo mod 4)-1)*33+145 else
result:=3*33+145
end;
if vstupy=4 then begin
if (cislo mod 4) <> 0 then result:=((cislo mod 4)-1)*33+145 else
result:=3*33+145
end;
if vstupy=3 then result:=142-((cislo mod 2)-2)*33;
if vstupy=6 then begin
if (cislo mod 8)=0 then p:=8 else p:=cislo mod 8;
if p<=4 then result:=p*33+33;
if p>4 then result:=p*33+33+33;
end;
if vstupy=7 then begin
if (cislo mod 8)=0 then p:=8 else p:=cislo mod 8;
if p<=4 then result:=p*17+107;
if p>4 then result:=p*17+135;
end;
if vstupy=8 then begin
if (cislo mod 16)=0 then p:=16 else p:=cislo mod 16;
if p<=4 then result:=p*17+40;
if (p>4) and (p<=8) then result:=p*17+30+35;
if (p>8) and (p<=12) then result:=p*17+45+45;
if p>12 then result:=p*17+15+95;
// showmessage('y'+ inttostr(p));
end;
end;[/pas]
co to má delat ?
je to z tohot mého programu :
www.instaluj.cz/cz/katalog/vzdelavani/matematika-a -fyzika/karnaughova-mapa/
Jen prozatimne nez najdu ty podivne zdrojáky. Chtel jsem poslat nejakou lepsi fci, ale protoze
uz je to desne dlouho, tak sám nevím, co nekteré funkce delaji (zvlast ty, co se jmenujou haf, maj jako vstupni parametry: martu,budilk,mmm a vracej promenou zvast.. )
Dobře ti tak, že už nevíš co to dělá, když používáš nic neříkající jména "haf, marta, budilk, mmm a zvast". Máš si proměnnou nazvat tak, aby ti hned na první pohled bylo jasný, co znamená. Například místo "haf" jsi měl mít "VelikostPoprsiMarticky" a hned bys věděl, co to dělá.
Kdyz ja se vzdycky snazim, jenze ono se to vzdycky tak zvrhne, zacnes to tim, ze si clovek pojmenuje výstup jako vystup. Pak k tomu potrebujes pricist neco, tak si udelas promenou: totalni_vystup. Pak jeste prehodit dve slova zalozi si pomcnou pro....
Ale musim se bránit uz je to lepsi, v jave je javadoc a promené uz se snazim taky pojmenovávat lépe a dle doporuceni SUNu... presto se tam semtam nejaká promená marta vyskytne
Taky neco pridam, ale je to asi hodne lehke....
nechybí tam rádek u tech 5k? Bych to videl na nejaké vraceni bankovek.
jj, chybi, asi jsem ho omylem vymazal . Rozdeluje to cislo na bankovky a mince. Mas bodik :)
Mohl by mi být tento bodik pripocitanej spis do scote u MJ?
hadaj co je toto
Ale neskusal som tak neviem ci funguje
Ja viem, ja viem. Nekonečný cyklus.
nie nie Vyskusal som, funguje. Len treba zmenit "int* pp" na "const int* pp" aby prekladac neprotestoval.
Tak tomu const nerozumiem. Som totiž Pascalista. A čo ten cyklus zastaví? No a ja idem spať a ráno si prečítam. Dobrú noc.
const znamena ze to je konstanta, tym sa teraz nezaoberaj nemusi to tam byt.
cyklus sa zastavi ak *pp == 0 (t.j. na poslednom prvku pola prachy), pretoze v C sa podmienky (if, while, ...) testuju na nenulovost, u roznych "C-guru" je bezne pouzivat takto podmienky ak chcem testovat na nulovost, bez vypisovania nejakeho dalsieho porovnania (programator v C je zasadne lenivy, preto som to aj napisal na 3 ci 4 riadky )
while(*(++pp)) robi dohromdy toto: zvysi premennu pp o 1 (t.j. na dalsi prvok pola), ak obsah tohoto prvku nie je nula, vykonaj priebeh cyklu.
Už rozumiem, C natoľko poznám, ale ja som Pascalista, takže som to hneď nepochopil. ĎAkujem za vysvetlenie. Ale prečo by kompilátor nariekal, ak tam nebude const to nerozumiem. Veď čo znamená const to viem, len prečo to tam musí byť to nie.
lebo som pole prachy deklaroval ako const
const int prachy[]={5000, 2000, 1000, 500, 200, 100, 50, 20, 10, 5, 2, 1, 0};
ale vo funkcii priradujem smernik na pole prachy do normalneho int*
int* pp = prachy-1;
to sa nesmie, musia byt bud obe const, alebo ziaden.
Neznam Cecko, tak nevim ale typuju, ze to same co jsem napsal ja v javě.
Ano malo by to byt to iste . Len som si chcel trochu precvicit vlastnu tvorbu .
Edit: pisal som to schvalne tak, aby to bolo co natazsie rozpoznatelne (teda az na ten prvy riadok )
jj, ten te prozradil
Az na tu blbou podminku u while mi to pripadá o dost lepsi nez to co psal dotycnej. Zrovna nedávno jsme se na foru bavili, ze obfuskátor kolikrát kod zprehledni (zvlast treba po me)
podmienka while nie je blba
Dalo sa to napisat aj v cykle tak aby bolo hned jasne co to robi, prip. okomentovat a dat normalne nazvy premennych - aj to robi kod citatelnejsim (nie premenne marticka apod. )
Pozerám, že vlákno je staré niekoľko dní a nikto sem nič nedal.
10 RESTORE 40
20 FOR i = 4e4 to 6e4: READ a: IF a <> 999 THEN POKE i,a: NEXT i
30 RANDOMIZE USR 4e4
40 DATA 24,13,72,69,69,76,76,79,32,87,79,82,76,68,0,33,66, 156,126,183,200,215,35,24,248,999
Hm...?
A jeje starý Zilog 80.
Hmm, zaludny orisek asi vytahnu Didaktika ze skrine.........
Ael aj tak sú tam chyby alebo to nie je pre Didaktik. Tá 16-ková sústava v Didaktiku neexistuje.
Taky mi to pripadlo divne. Neco jsem se te masine naprogramoval.
Je to pro Sinclair Spectrum. Je Didaktik totéž?
Jinak 4e4 = 40000, to není šestnáctková soustava. Takhle se ušetřilo 8 bytů paměti.
Zlaté časy.
V podstatě je didaktik totez......
Neviem ci tam nemas chybu, nejako mi tam nesedia offsety, a ci tam ma byt dvakrat to cislo 69, to je ale teraz nepodstatne.
Tak moj manualny disassembler v hlave (a google ) vyplul take nieco
94C0: JR 94CE
94C2: "HELLO WORLD", 0 (prip. "HEELLO WORLD", 0)
94CE: LD HL, 9C42
94D1: LD A, (HL)
94D2: OR A
94D3: RET Z
94D4: RST 10H
94D5: INC HL
94D6: JR 94CE ???
teraz neviem ci ten posledny skok je OK alebo je to chyba.
Bud to vypise "HELLO WORLD" alebo "HEELLO WORLD", alebo to bude donekonecna vypisovat pismeno "H".
Edit: ale tak ako to je by to podla mna vypisovalo "H" donekonecna
BTW. Asi by som mal tu moju odpoved zmazat nech maju zabavu aj ostatni... Ak ano dajte vediet...
Jj, je to blbě, má to být 24,249
Původně tam bylo CP A,0 - protože jsem si nemohl hned vzpomenout na opkód OR A, a pak jsem zapomněl opravit ten skok.
Takhle by to skočilo na těch 156, ale i tak by to fungovalo, protože je to jen sbc a,h.
A jedno 'E' se tam vloudilo navíc, potvora.
Ty si pisal zhlavy strojovy kod? Tak to kompliment (sice som si najznamejsie instrukcie kedysi davno pamatal aj ja, ale teraz som si uz musel najst googlom Z80 instruction set ).
Ty nejzbytečnější věci si člověk pamatuje nejlíp.
Kdybych si tak pamatoval i to, co používám denně, to by bylo.
Smola odpovede sa mazať nedajú.
Nedaju, ale ak chcete aby som ju zmazal tak ju zmazem
Ja by som chcel, keby sa dali, aspoň príspevok, na ktorý nie je odpoveď. Niekto mi tu na poradni napísal, že sa to vraj dá na všetkých príspevkoch. Len on si chudák neuvedomil, že má právomoci moderátora.
Tak si prispevok zedituj a vymaz z neho vsetko, ostane prazdny prispevok, to je skoro ako keby bol zmazany
Aj to je riešenie, ale hlavný príspevok (otvorenie témy) sa zeditovať myslím nedá.
aj ten sa da
Tak si zle všímam.Ďakujem za upozornenie.
ale nesmie byt nanho este ziadna odpoved
Da sa aj ten editovat, kym nie je nanho odpoved. Zeditujes si, prip. zmazes co tam bolo a napises Edit: sorry pomylil som sa, zmazane.
Nie tentokrát musím uznať, že sa treba zamyslieť pred tým než to tam idem dať.
#include <stdio.h>
main(t,_,a)
char *a;
{
return!0<t?t<3?main(-79,-13,a+main(-87,1-_,main(-8 6,0,a+1)+a))\
:1,t<_?main(t+1,_,a):3,main(-94,-27+t,a)&&t==2?_<1 3?main(2,_+1,\
"%s %d %d\n"):9:16:t<0?t<-72?main(_,t,"@n'+,#'/*{}w+/w#cd nr/+,\
{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l\,+,/n{n+,/+#n+, /#;#q#n+,/+k#;\
*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!/+k#;q#'r}eKK#}w'r}\
eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!/n{n#'; r{#w'\
r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#n'wk nw' iwk{KK{nl]!/w{%'l##w#'\
i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;{nl'-{}rw]'/+,}##'*}#nc,',#nw]'\
/+kd'+e}+;#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/"):t<-50\
?_==*a?putchar(31[a]):main(-65,_,a+1):main((*a=='/ ')+t,_,a+1):0<t?\
main(2,2,"%s"):*a=='/'||main(0,main(-61,*a,"!ek;dc i@bK'(q)-[w]*%n+r3#l\
,{}:\nuwloca-O;m .vpbks,fxntdCeghiry"),a+1);
}
to je ono! o cem jsem mluvil tak se ikory ukaz, je to ta básnicka
Obidva príspevky sú len zámerne napísané ako keby niekomu sekli po ruke lopatou. Totiž dajú sa prepísať do štandardizovaného formátu s odsadením a pootm to bude rozumnejšie. Veď potom aj ja tu môžem nasúkať program v Pascale na jeden riadok a bude z toho taký istý neprehľadný bordel.
To jsem kdysi říkal na školení programátorů: V Pascalu (Algolu, ...) můžete teoreticky napsat celý obrovský program na jednu řádku.
Ono to naozaj tak je. Akurát pod DOSom by mali niektoré programy problém s riadkami nad 127 znakov, iné nad 255 a Windows myslím nad 65535. No ale to pod tým Windowsom by už bolo kruté.