Návrh algoritmu pro kvantování – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Návrh algoritmu pro kvantování – .NET – Fórum – Programujte.comNávrh algoritmu pro kvantování – .NET – Fórum – Programujte.com

 

Holden
~ Anonymní uživatel
3 příspěvky
18. 6. 2013   #1
-
0
-

Ahoj,

pomohli byste mi s návrhem algoritmu pro kvantování? Problém je následující:

Mám pole A, které obsahuje například tyto hodnoty [0,63][0,92][0,33][0,66]...[n]

Předpokládejme, že maximální hodnota v poli je například [1]

Já bych potřeboval rozložit tyto hodnoty do rozmezí 0-200 a uložit do pole B. Takže chci v podstatě z rozmezí 0-1 získat rozmezí 0-200.

Vymyslel jsem tento algortimus, ale bohuže nefunguje.. V poli B jsou furt jen samé nuly a já už jsem bezradný.. Zde je algoritmus..

int[] B = new int[A.Length];
            
for (int i = 0; i < A.Length; i++)
	{
        for (int j = 0; j <= 200; j++)
        {
        	if ((A[i] >= ((1 / 200) * j)) && (A[i] < ((1 / 200) * (j + 1))))
                {
                	B[i] = j + 1;
                }
        }
}
Nahlásit jako SPAM
IP: 147.228.209.–
zlz
~ Anonymní uživatel
634 příspěvků
18. 6. 2013   #2
-
0
-

Jestli se nepletu, tak 1 / 200 je celočíselné dělení, tj. vždy 0. Mohlo by stačit tu 1 zapsat jako 1.0.

A jestli to dobře chápu, tak by ti stačilo něco jako B[i] = (int)Math.Ceiling(A[i] * 200);

Nahlásit jako SPAM
IP: 78.156.159.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 13 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý