• Welcome to TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach.
 

OP - zadanie

Started by Shwollo, 07.01.2011, 04:44:47

« predchdzajce - alie »

tommy-sv

Quote from: Safyia on  11.01.2011, 15:52:24
ee diakritikou to nie je...
Ale dneska rano som si k tomu sadla, zmenila asi dve veci, ktore s tym vobec nemaju suvis a uz to ide :D Ale stale nechapem preco to neslo... Never mind...:D

tak ked ti to uz ide tak never mind :D ale u mna toUpperCase likviduje kazdy znak s diaktritikou.
"Čím skôr zomrieš, tým dlhšie budeš mŕtvy."
"Radšej viac vypiť, ako menej zjesť."

Safyia

Quote from: tommy-sv on  11.01.2011, 16:17:16
tak ked ti to uz ide tak never mind  ale u mna toUpperCase likviduje kazdy znak s diaktritikou.
u mna nelikviduje :D Aaaale ako pozeram, ta problem je furt :D A zase je to dost divne... Ked vsetky prikazy napisem v hre a dam ulozit tak sa ulozia normalne do textaku, hej... ked dam nacitat, tak vsetko v pohode vezme vykona, neni problem... Ale ked do toho textaku napisem rovno, tak ze si ho otvorim a editujem a tak a to chcem nacitat, tak to zas nejde. Aj ked tie dva textaky maju uplne rovnaky text ;D

sulo

S diakritikou som mal tiež problémy, NetBeans nesprávne spracúva znaky s diakritikou zo štandardného vstupu. Fungovala až po vytvorení aktuálneho JAR súboru (Run / Clean and Build) a spustení mimo NetBeans, cez príkazový riadok.

Na Windows 7 je nutné pri spúšťaní zmeniť kódovanie (UTF-8 nefungovalo, len Win-1250):
chcp 1250
java -Dfile.encoding=cp1250 -jar ...(cesta).../TextGame.jar

Na XP-čku sa mi ju nepodarilo rozbehať vôbec.

freshmakerik

Quote from: Safyia on  11.01.2011, 15:52:24
ee diakritikou to nie je...
Ale dneska rano som si k tomu sadla, zmenila asi dve veci, ktore s tym vobec nemaju suvis a uz to ide :D Ale stale nechapem preco to neslo... Never mind...:D
mne tak stylom never mind neisla jedna metoda.., vymazal som zo dva-tri riadky a bolo to ok :D
aj počítač je len človek..

Safyia

ah, idem vsade vymazat diakritiku...
A ja som chcela taku peknu slovencinu tam!

freshmakerik

Quote from: Safyia on  11.01.2011, 17:21:37
ah, idem vsade vymazat diakritiku...
A ja som chcela taku peknu slovencinu tam!
si nahrad tie pismenka nejakym ascii znakom.., mohlo by to fungovat nie ??
aj počítač je len človek..

sulo

Ešte sa to dá riešiť tak, že konštanty v zdrojáku budú s diakritikou, ale pri porovnávaní sa z obidvoch reťazcov odstráni diakritika. Tým pádom budú príkazy zadávané bez diakritiky fungovať vždy a s diakritikou vtedy, ak to podporuje daná konzola.

String normalized = Normalizer.normalize(string, Form.NFD);
return normalized.replaceAll("\\p{InCombiningDiacriticalMarks}+", "");

Saren

Quote from: Safyia on  11.01.2011, 17:21:37
ah, idem vsade vymazat diakritiku...
A ja som chcela taku peknu slovencinu tam!

Tak. You ain't gonna need it.  :)

HejaHop

Ľudia ktorý odovzdávali v pondelok. Máte už zapísané výsledky v MAISe?

Safyia

Tak, moj pocitac ma dneska vlastnu volu.
Odtranila som diakritiku, zasa vsetko otestovala, debugovala a furt to neslo. Tak som sa na to vykaslala, sla na obed. Teraz som sa vratila, idem tu kolegom ukazat, ze mi to nejde a tadaaa, ziaden problem :D Vsetko ide ako ma. Takze maximalne nechapacky, som zvedava ci to pojde, ked budem odovzdavat  ;D

Saren

Netes sa, to len komp sa chcel predviest ;D Ale nie. Mne to tiez niekedy neslo, tak som nechala pocitac nech trucuje a potom ho to preslo... Prestavka obcas pomaha. Alebo restart  ;D

Daron

Viete napisat funkciu, ktora vypise vsetky prikazy z parsera, ktore zacinaju znakom "b" ??

Alebo funkciu, ktora vypise vsetky taketo znaky, ale vrati len prvy z nich.

Prosim napiste to sem.

ursus

cykluj si ten arraylist s prikazmi a na .getName volaj if blabla.startsWith("b")
So this router walks into the doctor's office...
- Doctor, it hurts when IP.

Daron

#88
chcel som konkretne napisat, viem ako by to mali ist teoreticky

dajme tomu ak mam takyto parser

import TextGame.Command;
import commands.*;
import interfaces.IParametric;
import java.util.ArrayList;
import java.util.List;

/**
* Parser - reprezentuje príkazový riadok.
  */
public class Parser implements TextGame.Parser {
    private List<Command> myCommandList = new ArrayList<Command>();

    /**
     * Konštruktor. Pridáva zoznam príkazov do listu.
     */
    public Parser()
    {

        myCommandList.add(new Version());
        myCommandList.add(new Quit());
        myCommandList.add(new Prikazy());
        myCommandList.add(new East());
        myCommandList.add(new West());
        myCommandList.add(new North());
        myCommandList.add(new South());
        myCommandList.add(new Restart());
        myCommandList.add(new LookAround());
        myCommandList.add(new Explore());
        myCommandList.add(new Get());
        myCommandList.add(new Put());
        myCommandList.add(new Inventory());
        myCommandList.add(new Use());
        myCommandList.add(new Save());
        myCommandList.add(new Load());
        myCommandList.add(new Operuj());

    }
    /**
     * Spracúvava príkazy. Oddeluje príkaz od argumentu. Vykonáva príkazy.
     * @param input
     * @return referenciu na aktuálnu miesnosť
     */

    public Command getCommand(String input)
        {
            Command aResult = null;
            for (Command command : myCommandList)
            {
               if (input.startsWith(command.getName()))
                {
                    if (command instanceof IParametric)
                    {
                        command.setParams(input.substring(command.getName().length()).trim());
                        aResult = command;

                    }
                    else
                    {
                        if ((input.length()) == (command.getName().length()))
                        {
                            aResult = command;
                        }
                    }
                }
            }

            return aResult;
        }

    /**
     *
     * @return
     */
    public List<Command> getCommands() {
       return this.myCommandList;
    }

}

chaser

#89
neviem sice ako vratiti cisto prvy prikaz, dakto ma moze doplnit ;)
ale vypisat vsetky by malo asi takto podla mna:


public Command vypis(String arg){
       
       for(Command prikaz: myCommandList){

           if(prikaz.getName().startsWith("b")){          

               System.out.println(prikaz.getName());
           return prikaz;

           }}
             
       return null;
   }

chaser

nikto sa nechce podelit o vedomosti ?  ???

mirek

So say we all!

chaser

#92
iba doplnit zdrojak
z toho cyklu
vypisat vsetky prikazy
a na konci vratit iba prvy prikaz, podla mna tam vela nechyba, jooj ta nevedomost  bu

mirek

sice som ten kod neskusal, ale odhadom napr. takto:


public Command vypis(String arg){
       Command first = null;
       
        for(Command prikaz: myCommandList){

            if(prikaz.getName().startsWith("b")){
                if( first == null )
                    first = prikaz;
                System.out.println(prikaz.getName());
            }}

        return first;
    }

So say we all!

chaser

aha, ved tam bolo potrebne dat uz iba jednu podmienku jasne, stacilo sa zamysliet
vdaka  :thumbsup:

mirek

So say we all!

black_stone

@mirek: Budu nejake terminy na odovzdanie aj na buduci tyzden ?

mirek

Quote from: black_stone on  12.01.2011, 15:41:03
@mirek: Budu nejake terminy na odovzdanie aj na buduci tyzden ?
nie = nebudu. do konca tohto tyzdna treba udelit zapocty aj oficialne do maisu. takze - nebude sa uz dat.

odovzdavanie zadani sa tiez spusti opat dneska po skuske. takze zatial mate este cas ladit a vychytavat vsetky chyby ;)
So say we all!

Daron

A keby sa nahodou niekomu nepodarilo stvrtok? nejaka predtym neodhalena chyba, atd... Bude sa to dat vyriesit nejak individualne v piatok? ;-)

Safyia

ta neodhalenu chybu opravis rovno na mieste a je to :P