Portál AbcLinuxu, 30. dubna 2025 11:21

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
5.11.2006 12:17 XSimi
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin
( a > neco )and( a < necojinyho )
?
5.11.2006 12:19 MartinK | skóre: 10 | blog: Blogik
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin
zkus until (volba='A') or (volba='B') or ...
vencour avatar 5.11.2006 12:21 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil

To už je lepší převést na vyhodnocování ordinální hodnoty .. větší než 'A' nebo 'a' a menší než 'z' nebo 'Z'.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 12:43 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
bohuzel to jsem zkousel - nelze
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
vencour avatar 5.11.2006 12:46 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil

Ok, doplňte prosím datové typy, jaké jste použil ... stejně jaké chybové hlášky.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 13:12 MartinK | skóre: 10 | blog: Blogik
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Ve škole v hodinách programového vybavení jsem to řešil takto:
repeat
   write ('Zadej znak pro konec: ');
   readln (zn);
until (zn = 'k') or (zn = 'K');
zn je typu char
vencour avatar 5.11.2006 12:20 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin

Ještě, že zálohuju semestrálky ... kdysi jsem to dělal takhle ...

         repeat until keypressed or Stisknuto;
         if keypressed
           then repeat
                  cti_klavesu(k)
                until (k in ['A','N']) or (k in [#27,#13]);
         if k = #27 then Txt(20,18,'             ');
         if (k in ['A',#13]) or LClicked then konec := true;
         if (k = 'N') or RClicked

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 12:20 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin
V Kdevelopu? Snad ve vimu, ne? :-)

Jinak mi tam nějak schází uvozovky u toho A, ale už je to dost dlouho, co jsem psal v Packalu. A obecné řešení takéto věci je přes ASCII hodnotu. "A" je tuším 64, takže ta podmínka by mohla být něco jako ord(volba)>63 AND ord(volba)<68 (pokud teda packal píše and jako AND a ne jako ampersandy ;-))
θηριον ειμι
5.11.2006 12:55 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
ja kdy :-) jasne uvozovky u toho A mají být - psal jsem to jen na ukázku, aby bylo jasné co potrebuji. . Skoda doufal jsem ze jde nejak do té podmínky vpasovat rozsah. Bohuzel evidentne se mu tam nezdá to AND. Stejne tak OR nebo cokoli podobneho
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
5.11.2006 13:02 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: Pascalovský paskvil
a) Že ti to nefunguje je jen a pouze tvoje chyba, Pascal za to nemůže a pokud ho zesměšňuješ, zesměšňuješ jen sám sebe.

b) Pokud ti tam "nefunguje OR nebo cokoli jiného", tak se nejdřív zkus podívat na priority operátorů v Pascalu (např. (x=0 or x=1) v Pascalu nemá smysl), pokud ti nepomůže ani tohle, tak děláš dramaticky špatně něco jiného. V tom případě sem vlož celý program a chybové hlášky.
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
5.11.2006 16:15 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
A kde jsem rekl ze to je problém pascalu? Nebo ho prohůh zesmesnuju? Nemyslís,ze to trochu prehánís? Pouze jsem napsal problém, který se mi (ano me!) nedarí vyresit a pozádal jsem o pomoc. Nikde jsem nerekl, ze to nedelám spatne.
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
5.11.2006 16:36 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Nemyslís,ze to trochu prehánís?
Asi jo :-) No, podle nadpisu a prvních dvou vět zápisku jsem podlehl dojmu, že budeš jeden z těch neukojených uhrovitých teenagerů, pro které jazyky jako Pascal nebo Java nejsou dost geekovské a co kolem sebe trousí poznámky jako "Java je shit" aby se později ukázalo, že neznají ani QuickSort (prostě takový Jarda Šmíd :-D)

Takže sorráč :-)
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
5.11.2006 18:56 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
No teenager ve 30 - ted nevím zda mi to má lichotit nebo urázet :-) Ne v pohode. Ten paskvil v nadpisu je mysleno jako muj vytvor=paskvil. Nikdy jsem s pascalem do styku neprisel, proto v nem tápu a proto vznikl i tento zápisek - ve kterém jsem doufal, ze mi dobrí lidé poradí jak na to - coz se taky stalo a tímto vsem jeste jednou díky. R
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
vencour avatar 5.11.2006 19:18 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil

Jseš mladší, než já ... tys nebyl na vejšce? Tam jsem se k Pascalu pořádně dostal ... zkus když tak server Builder, sice jsem ještě hledat nemusel, neživim se tim, ale tam bych začal prvně. Další variantou se zdá být Programátorské heaven.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 19:34 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Nejak me to nebralo, a ted na "starý" kolena jsem chytil druhý dech :-) Takze tam ho po me taky chtej. Nikdy predtim jsem se s ním nesetkal, spís bash a perl, ale jsou tam rozsíly ve kterých zatím plavu :-)
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
vencour avatar 5.11.2006 19:45 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil

Hm, já psal jen v dosu, v borland pascalu byly v helpu docela dobrý příklady ...

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 12:49 Boris Dušek | skóre: 22 | blog: everything
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin
until (ord(volba) >= ord('a')) and (ord(volba) <= ord('d'))
vim ~/.emacs
5.11.2006 13:01 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
no takhle nejak bych si to predstavoval ... ale hází to chybu - tipuju, ze mám chybne definovaný typ promene volba.
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
5.11.2006 13:05 Boris Dušek | skóre: 22 | blog: everything
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Tak napiště, jakou chybu to hází, a jak máte zadeklarovanou proměnnou "volba". Bez úplných informací z Vaší strany se dál nedostaneme.
vim ~/.emacs
5.11.2006 13:05 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Takze jsem to upravil takto
until ((volba) >= ('a')) and ((volba) <= ('d'));
Funguje jak jsem potreboval. Vrelé díky. Jenom drobnost - proc jsi (jste) pouzil to ord, kdyz i bez nej to funguje jak ma?
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
5.11.2006 14:33 Martin Baleja | skóre: 13 | blog: Segmentation_Fault
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Možná proto, že ord převádí znak na celé číslo. Že to funguje tak jak jsi to napsal i přitom že volba je typu integer, to se docela divím.
Why are hemorrhoids called "hemorrhoids" instead of "assteroids"?
vencour avatar 5.11.2006 14:44 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil

Podle tohodle zápisu to je celý nějak divný ... ještě jsem neviděl proměnnou v závorkách, jak je zde.

Znak na ordinální hodnotu se převádí pro lepší přehlednost, jinak není nutno. A hlavně a se závorkama snad je string a znak s apostrofem je char. No a vstupem je char či integer, podle definované vstupní funkce.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 15:02 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Jestli ono to nebude tím, že znak je v Pascalu ordinální typ… ;-)
vencour avatar 5.11.2006 13:00 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin

Ok, jedna procedura pro příklad ...

(* poskytuje moznosti obsluhy dat, obsluha je pres cisla, konec pres Esc *)
procedure menu;
var volba       : char;     {ctu volby do menu}
    skoncit_menu: boolean;  {je-li true, procedura se ukoncuje}
begin
  skoncit_menu := false;
  repeat
    WriteLn('     Nabidka');
    WriteLn('     1: Pridani');
    WriteLn('     2: Vypis');
    WriteLn('     3: Vymaz');
    WriteLn('     4: Nacteni ze souboru');
    WriteLn('     5: Ulozeni do souboru');
    WriteLn('     6: Prikaz DOSu');
    WriteLn('     7: Servis');
    WriteLn('     8: Konec');
    repeat
      cti_klavesu(volba)                    {Alt+X,Esc}
    until volba in ['1'..'8','x','X','o','O',  #45,#27];
    case volba of
      '1': pridej(prvni);
      '2': vypis(prvni, '');
      '3': dispous(prvni,1);
      '4': nacti_data(prvni, '');
      '5': uloz_data(prvni,'');
      '6': spust(def.cesta_shellu,'');
      '7': nastav;
      'O','o': about
      else skoncit_menu := true
    end
  until skoncit_menu; {pri '8','x','X',Esc}
  WriteLn
end;

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 13:08 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Vycerpavajcí - díky. Sice pro to momentální zadání pomalu delsí nez program sám, ale tohle stojí za ulozeni a prípadné pozdejsí pouzití. Doufám, ze je to pod GPL :-))
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
vencour avatar 5.11.2006 13:15 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil

Jelikož jsem autorem, tak bych to nechal klidně free ... ať se kultura programování zvyšuje. Nebo ať mne i někdo klidně zdokonalí.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 13:03 Foxnet | skóre: 4 | blog: NetMate
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin
co takhle toto:
var hotovo:boolean;
    volba:char;
begin 
  repeat
    Write('Zadej volbu: ');
    ReadLn(volba);
    case volba of
      'A':hotovo:=true;
      'B':hotovo:=true;
      'C':hotovo:=true;
      'D':hotovo:=true;
    else hotovo:=false;
  until (hotovo=true);
end;
Mám pocit, že funguje i 'A'..'D' nebo neco podobneho (myslim v syntaxi case-u).
5.11.2006 13:04 Foxnet | skóre: 4 | blog: NetMate
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Koukám, že už mě někdo předběhl... Omlouvám se za duplicitní nápad.
5.11.2006 13:33 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin
Abych to shrnul pro jednoduchost vyhrává
until volba in ['a','b','c','d'];
Vsem díky za podnety. R
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
5.11.2006 13:34 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Jednu drobnost to nemá osetrenou - a to pokud user zadá napr. az - pak to podmínce vyhoví také, ale to je alespon v mém prípade drobnost.
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
vencour avatar 5.11.2006 13:57 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Pascalovský paskvil

Jelikož je to na vstupu char (chcete ho tam mít), tak je vezmete první znak ze stringu ... a při té podmínce se testuje, zda je načtená hodnota rovná požadované, dané mnoužinou či podmínkou ... tohle jsou základy a proto by na ně neměly platit, aplikoaet se patenty a licence.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
5.11.2006 14:15 #Tom | skóre: 32 | blog: Inspirace, aneb co jsem kde vyhrabal
Rozbalit Rozbalit vše Re: Pascalovský paskvil
To je dobré, ale takto je to ještě lepší:
var
  Znak: Char;
begin
  repeat
    Write('Zadej A, B, C nebo D a potvrď Enterem: ');
    Read(Znak);
    Znak := UpCase(Znak);
    WriteLn('Bylo zadáno ', Znak);
  until Znak in [ 'A'..'D' ];
end.
A nebo ještě lépe:
uses Crt;
var
  Znak: Char;
begin
  Write('Stiskni A, B, C nebo D: ');
  repeat
    Znak := UpCase(ReadKey);
    if (Znak = #0) then ReadKey; { Funkční klavesy, šipky a podobné nesmysly se čtou dvakrát }
  until Znak in [ 'A'..'D' ];
  WriteLn(Znak);
end.
5.11.2006 16:20 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Díky vsem, kterí jste reagovali uz je to vyresené.
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
5.11.2006 13:45 blogsm | skóre: 8 | blog: mozektevidi
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Odpovědět | Sbalit | Link | Blokovat | Admin
Patří vůbec takové věci do blogu? BLE
S linuxem teprve začínám! (už půl roku) mozektevidi.net
5.11.2006 16:18 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
A kdo te nutí to císt? Natoz namáhat prsty a unavovat se neplodným prudením?
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners
5.11.2006 19:12 blogsm | skóre: 8 | blog: mozektevidi
Rozbalit Rozbalit vše Re: Pascalovský paskvil
Nikdo. Je to moje svobodná volba heč. Ale IMHO na takové a podobné dotazy jsou fóra, poradny, diskuze. Ne BLOG ;-)
S linuxem teprve začínám! (už půl roku) mozektevidi.net
5.11.2006 19:36 Radek Trnka | skóre: 26 | blog: Jen_tak | kousek od ČB
Rozbalit Rozbalit vše Re: Pascalovský paskvil
No jasne, ale vzhledem ktomu co vse se tady v blogách objevuje (od politiky po nákupy cehokoli) si myslím, ze tohle jde prekousnout.
Černé díry jsou tam, kde Bůh dělil nulou. -- Steven Wright one Liners

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.