Diskuze: RLE komprese
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 6 zpráv z 6.
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
private void xxx_Click(object sender, EventArgs e)
{
nekomprimovane.Text = "☼S☼A☼ů☼L☼.☼,☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼D☼←☼↑☼↓☼l☼";
komprimujtext(nekomprimovane.Text);
}
string vysledek;
int i = 0;
int b = 1;
public void komprimujtext(String text)
{
string[] subs = text.Split('☼');
while ( i < subs.GetLength(0))
{
while (b > 1)
{
if (subs[i] == subs[i + b])
{
b++;
}
else if (!(subs[i] == subs[i + b]) && b < 2)
{
vysledek += subs[i];
break;
}
else if (!(subs[i] == subs[i + b]) && b > 1)
{
vysledek += "⌂" + subs[i] + "#" + b.ToString() + "⌂";
break;
}
else
{
MessageBox.Show("ciwe");
}
}
i+= b;
komprimovane.Text += vysledek;
}
}
čau sice jsem ten "algoritmus" moc nečetl, ale while (b > 1) ti nikdy podmínku nesplní protože B je pořád 1.
Zobrazeno 6 zpráv z 6.