Diskuze: Machr na Algoritmy - Skloňování jmen
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Vlastník

Zobrazeno 50 zpráv z 88.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Někdo objevil hundle bundle co ?
Jsem to koupil kvůli ségře několikrát nějaký to Sims s kamarádkama
chce hrát a teď nevím co s těma ostatníma hrama. Nejni to že bych to
chtěl nějak zneužívat. Ale pokavad s tím bude mít někdo nějaký
problém, tak prostě nic nedostane mě je to celkem jedno
dá se ten algoritmus napsat na 10 řádků s jednou podmínkou?
Nope je to docela komplexní Musíš použít slovník českých jmen páč tam jsou vyjímky. A
pak to dělat dle koncovek - zjistíš vzor a podle toho skloňuješ. Zdá se to
jednoduché ale fakt to nejni tak jednoduché, jsem s tím trápil naši
češtinářku
Tak to asi nedá, je to hlavně podle koncovek.
Na výjimky bych se vykašlal, funkční verze podle koncovek bohatě stačí
proč nemůžeme naprogramovat anglické skloňování ?
můžeme ale veliký potlesk a placku za něj nesklidíš.
Páč to by se dalo hodnotit snad jenom to, kdo dokáže "Hello Devbook"
napsat ve více programovacích jazycích o.O A to by vyhrál Kit a nic byste s
toho neměli
Asi nebude vadit když to udělám v jQuery, že ?
ale pak si asi budeš muset vzít placku webdesign. Teda pokud není nějaká nová placka.
Je to uplně jedno co použiješ Jde o ten algoritmus.
Použitím ToCharArray() v C# a dvou switchu to celkem jde
Tak jsem tu knihu poprvé v životě otevřel a asi ji hned odnesu do sběru,
nenašel jsem to tam
Nemusí být jen ta papírová. V téhle to je:
http://prirucka.ujc.cas.cz/?…
No to je hrůza Mohlo by
se zkusit jen rozpoznat podle koncovky vzoru (http://www.uni-regensburg.de/…content.html), třeba by to
nějak fungovalo. Vylepšovat se potom dá vždycky, občas se něco vypustí
nebo podobně.
Však je to tam popsáno precizně. Kromě toho vyšší autorita na pravidla českého pravopisu už není.
Jo, ten web co jsi postnul je dobrý, určitě by to podle toho šlo, mají
tam všechno potřebné. Pro potřeby soutěže by to stačilo jen ořezat na
základní vzory, aby to fungovalo alespoň ve většině případů. Jsem
zvědavý, jestli se to někomu podaří
<q>Na vyjimky bych se vykaslal funkci verze podle koncovek bohate
staci.</q>
A co to teda je za vyjimky?
Občas ten web používám, když si nejsem jist svým pravopisem a občas se
i divím. Samozřejmě mají vždy pravdu
Ty přece nevíš, na jakých jménech se bude testovat tvůj program. Kdo bude mít nejméně chyb, vyhrává.
Na algoritmy jsem vážně příšerný. Ve všech z mých návrhů
potřebuju minimálně 2.pád nebo rod a vzor.
No nic, budu zkoušet
dál...
Tady jsme našli fungující ukázku do všech pádů i se zdrojákem, ale je to docela šílenost. Jen na zjednodušený 5. pád by to však nemuselo být tak složité. http://www.pteryx.net/sklonovani.html
5. pád ano, ale třeba 3. a 6. pád Franty je mimo.
No vidíš, přitom spousta lidí nezvládá můj nick skloňovat a
počítač to svede
To sice jo, ale bere to jako ženský tvar.
EDIT: Áha, fakt bych měl někdy oprášit český jazyk
No jo - to je pravda, ale také závisí na algorytmech a přehlednosti kódu
.
Málem sem se pos*** have a fun: http://test.sczdavos.eu/Sklonovani.php
Už jsem sem dlouho nic nedal...
přidávám i já kousek, k dokonalosti to má daleko, ale jména z
kalendáře by to stačit mělo
<?php
session_start();
header('Content-type: text/html; charset=utf-8');
mb_internal_encoding("UTF-8");
class Jmeno
{
private $jmeno1p;
private $jmeno5p;
function __construct($vstup)
{
$this->jmeno1p = trim($vstup);
$this->jmeno5p = $this->zavolejJmeno();
}
private function zmena($s,$a,$w)
{
if($a != 0) return mb_substr($s,0,($a*-1)).$w;
if($a == 0) return $s.$w;
}
private function zavolejJmeno()
{
$kon = mb_substr($this->jmeno1p,(mb_strlen($this->jmeno1p)-3),3);
if(in_array($kon, array("tek"))) return $this->zmena($this->jmeno1p,3,"tku");
if(in_array($kon, array("něk","nek"))) return $this->zmena($this->jmeno1p,3,"nku");
if(in_array($kon, array("šek"))) return $this->zmena($this->jmeno1p,3,"šku");
$ko = mb_substr($this->jmeno1p,(mb_strlen($this->jmeno1p)-2),2);
if(in_array($ko, array("am","an","id","rt","ín","in","or","án","rd","ír","av","er","on","ém","nt","ít","ip","lf","im","ar","op","ub","ym","al","of","il","ef"))) return $this->zmena($this->jmeno1p,0,"e");
if(in_array($ko, array("la","na","ta","ra","ea","ka","sa","da","ma","va","ia","za"))) return $this->zmena($this->jmeno1p,1,"o");
if(in_array($ko, array("eš","ex","ej","is","el","áš","as","ěj","uš","ax","oš"))) return $this->zmena($this->jmeno1p,0,"i");
if(in_array($ko, array("ie","ce","en","er","ly","ří"))) return $this->jmeno1p;
if(in_array($ko, array("ik","ch"))) return $this->zmena($this->jmeno1p,0,"u");
if(in_array($ko, array("ol"))) return zmena($this->jmeno1p,0,"o");
if(in_array($ko, array("dr"))) return $this->zmena($this->jmeno1p,1,"ře");
if(in_array($ko, array("ek"))) return $this->zmena($this->jmeno1p,3,"ku");
if(in_array($ko, array("tr"))) return $this->zmena($this->jmeno1p,2,"tře");
return $this->jmeno1p;
}
function __toString()
{
return $this->jmeno5p;
}
}
$pole = array("Monika","Gábina","Petra","Jakub","Jan","Matouš","Gauner","Svašek");
foreach($pole as $j)
{
$jmeno = new Jmeno($j);
echo "($j) Ahoj ".$jmeno."<br />\n";
}
?>
Docela to zvládá, ale na mém příjmení (Saels) si vylámal zuby.
Ze tří Krokových dcer to jednu neumí oslovit,
ale jinak dobrý.
No jo, ani padouch Dag Badman by nebyl spokojen. A co třeba slečna
Winifred? Ta asi dopadla nejhůř
Vládce Olympu Zeus by se taky podivil..
Je pravda, že toho jsem ani nečekal, že by to umělo.
Kdyby chtěl někdo testovat http://leteckaposta.cz/636397581
Linuxáci asi nic
Ale chápu, že kdybys nechtěl jen šťourat, tak jsi dost inteligentní
nato, abys to otevřel
Spustit.
Pokud máš nějaký minoritní systém, kde ti EXE spustit nejde, pak je to
tvůj problém
Všechno, co má příponu EXE a je neznámého původu, je potenciální malware. Takové programy nespouštím ani ve Wine. Nechápu, jak to můžou spouštět uživatelé Windows jen tak bez zábran a bez ochrany.
Vím, že i když budu paranoidní, stejně mě dostanou. A tebe taky.
Zobrazeno 50 zpráv z 88.