Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Написание функций CompressRLL и ExpandRLL в среде MatLab

Автор:   •  Октябрь 21, 2023  •  Практическая работа  •  344 Слов (2 Страниц)  •  109 Просмотры

Страница 1 из 2

Министерство образования и науки Российской Федерации

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра ТОР

Пратичческая работа №1

«Написание функций CompressRLL и ExpandRLL

в среде MatLab»

Выполнил:

Студент: Беликов В. В.

Группа: РТС9-01

Проверил:

Преподаватель: Райфельд М.А.

Новосибирск 2023

Код CompressRLL:

function[C] = fnCompressRLL(S)

N = length(S);

j = 1;

count = 1;

A = S(1);

for i = 2:N

    if (S(i) == A)&&(count < 64)

        count = count + 1;

    else

        if (A >= 192)||(count > 1)

            C(j) = count + 192;

            j = j + 1;

        end

        C(j) = A;

        j = j+1;

        A = S(i);

        count = 1;

    end

end

if (S(i) == A)&&(count < 64)

    count = count + 1;

end

if (A >= 192)||(count > 1)

    C(j) = count + 191;

    j = j+1;

end

C(j) = A;

end

Код ExpandRLL:

function[C] = fnExpandRLL(R)

N = length(R);

j = 1;

count = 1;

i = 1;

while (i <= N)

    A = R(i);

    if A > 192

        count = A - 192;

        i = i+1;

        A = R(i);

        for k = 1:count

            C(j) = A;

            j = j+1;

        end

    else

        C(j) = A;

        j = j+1;

    end

    i = i + 1;

end

end

Пример работы данных функций:[pic 1]

[pic 2][pic 3]

...

Скачать:   txt (1.6 Kb)   pdf (74.6 Kb)   docx (14.5 Kb)  
Продолжить читать еще 1 страницу »
Доступно только на Essays.club