Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno 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.:-)

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
robim up, pretoze nas uz je tu viac a ak by bol zaujem, mohol by som nejake vymysliet. 8-)
IgorK 08.02.2006 01:16
IgorK
Taky neco pridam, ale je to asi hodne lehke.... public static void uuu(int a) { if ((a/5000)>= 1){…
MaSo 08.02.2006 02:45
MaSo
hadaj co je toto ;-) const int prachy[]={5000, 2000, 1000, 500, 200, 100, 50, 20, 10, 5, 2, 1, 0};…
MM.. 08.02.2006 04:01
MM..
Ja viem, ja viem. Nekonečný cyklus.:-D
msx. 08.02.2006 04:03
msx.
nie nie :-) Vyskusal som, funguje. Len treba zmenit "int* pp" na "const int* pp" aby prekladac nepro…
MM.. 08.02.2006 04:14
MM..
Tak tomu const nerozumiem. Som totiž Pascalista. A čo ten cyklus zastaví? No a ja idem spať a ráno s…
msx. 08.02.2006 04:21
msx.
const znamena ze to je konstanta, tym sa teraz nezaoberaj nemusi to tam byt. cyklus sa zastavi ak *…
MM.. 08.02.2006 04:28
MM..
Už rozumiem, C natoľko poznám, ale ja som Pascalista, takže som to hneď nepochopil. ĎAkujem za vysve…
msx. 08.02.2006 23:36
msx.
lebo som pole prachy deklaroval ako const const int prachy[]={5000, 2000, 1000, 500, 200, 100, 50, 2… nový
MM.. 08.02.2006 23:52
MM..
10 RESTORE 40 20 FOR i = 4e4 to 6e4: READ a: IF a <> 999 THEN POKE i,a: NEXT i 30 RANDOMIZE USR 4e4…
JM 08.02.2006 03:14
JM
Neviem ci tam nemas chybu, nejako mi tam nesedia offsety, a ci tam ma byt dvakrat to cislo 69, to je…
MM.. 08.02.2006 04:55
MM..
Smola odpovede sa mazať nedajú.:-D:-D:-D:-D:-D nový
msx. 08.02.2006 23:39
msx.
Nedaju, ale ak chcete aby som ju zmazal tak ju zmazem 8-) nový
MM.. 08.02.2006 23:54
MM..
Ja by som chcel, keby sa dali, aspoň príspevok, na ktorý nie je odpoveď. Niekto mi tu na poradni nap… nový
msx. 08.02.2006 23:57
msx.
Tak si prispevok zedituj a vymaz z neho vsetko, ostane prazdny prispevok, to je skoro ako keby bol z… nový
MM.. 09.02.2006 00:01
MM..
Aj to je riešenie, ale hlavný príspevok (otvorenie témy) sa zeditovať myslím nedá. nový
msx. 09.02.2006 00:02
msx.
aj ten sa da nový
IgorK 09.02.2006 00:03
IgorK
Tak si zle všímam.Ďakujem za upozornenie.:beer: nový
msx. 09.02.2006 00:05
msx.
ale nesmie byt nanho este ziadna odpoved :-) nový
IgorK 09.02.2006 00:07
IgorK
Da sa aj ten editovat, kym nie je nanho odpoved. Zeditujes si, prip. zmazes co tam bolo a napises Ed… nový
MM.. 09.02.2006 00:06
MM..
Nie tentokrát musím uznať, že sa treba zamyslieť pred tým než to tam idem dať.:-) nový
msx. 09.02.2006 00:09
msx.
main(l ,a,n,d)char**a;{ for(d=atoi(a[1])/10*80- atoi(a[2])/5-596;n="@NKA\ CLCCGZAAQBEAADAFaISADJABBA… nový
vyhny 09.02.2006 20:42
vyhny
Obidva príspevky sú len zámerne napísané ako keby niekomu sekli po ruke lopatou. Totiž dajú sa prepí… nový
msx. 10.02.2006 00:24
msx.
To jsem kdysi říkal na školení programátorů: V Pascalu (Algolu, ...) můžete teoreticky napsat celý o… nový
Rce 10.02.2006 00:37
Rce
Ono to naozaj tak je. Akurát pod DOSom by mali niektoré programy problém s riadkami nad 127 znakov,… poslední
msx. 10.02.2006 00:50
msx.

Taky neco pridam, ale je to asi hodne lehke....

public static void uuu(int a) {
  		if ((a/5000)>= 1){
 			System.out.println((a/5000));
 			}
 		
 		if ((a/2000)>= 1){
 			System.out.println((a/2000));
 			a = a % 2000;
 			}
 		
 		if ((a/1000)>= 1){
 			System.out.println((a/1000));
 			a = a % 1000;
 			}
 		
 		if ((a/500)>= 1){
 		 	System.out.println((a/500));
 			a = a % 500;
 			}
 		
 		if ((a/200)>= 1){
 			System.out.println((a/200));
 			a = a % 200;
 			}
 		
 		if ((a/100)>= 1){
 			System.out.println((a/100));
 			a = a % 100;
 			}
 	
 		if ((a/50)>= 1){
 			System.out.println("(a/50));
 			a = a % 50;
 			}
 	 		
 		if ((a/20)>= 1){
 			System.out.println((a/20));
 			a = a % 20;
 			}
 		
 		if ((a/10)>= 1){
 			System.out.println(+(a/10));
 			a = a % 10;
 			}
	  
	    if ((a/5)>= 1){
 			System.out.println((a/5));
 			a = a % 5;
 			} 	
 			
 		if ((a/2)>= 1){
 			System.out.println((a/2));
 			a = a % 2;
 			} 
 			System.out.println((a));
 			
 	 			
 		
 	}

hadaj co je toto ;-)

const int prachy[]={5000, 2000, 1000, 500, 200, 100, 50, 20, 10, 5, 2, 1, 0};
void tralala(int ciselko)
{
  int* pp = prachy-1;
  while(*(++pp))
    if(ciselko >= (*pp))
    {
      printf("%d: %d\n", *pp, ciselko/(*pp));
      ciselko %= (*pp);
    }
}

Ale neskusal som tak neviem ci funguje ;-):-)

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.

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...

main(l
      ,a,n,d)char**a;{
  for(d=atoi(a[1])/10*80-
 atoi(a[2])/5-596;n="@NKA\
CLCCGZAAQBEAADAFaISADJABBA^\
SNLGAQABDAXIMBAACTBATAHDBAN\
ZcEMMCCCCAAhEIJFAEAAABAfHJE\
TBdFLDAANEfDNBPHdBcBBBEA_AL\
 H E L L O,    W O R L D! "
   [l++-3];)for(;n-->64;)
      putchar(!d+++33^
           l&1);}

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.

Zpět do poradny Odpovědět na původní otázku Nahoru