Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
ТЕХНІЧНИЙ КОЛЕДЖ НАЦІОНАЛЬНОГО УНІВЕРСИТЕТУ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
ВІДДІЛЕННЯ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙТА КОМП'ЮТЕРНОЇ ТЕХНІКИ
Лабораторна робота №5
з Алгоритмів і структури даних
на тему:
Алгоритми Маркова
Мета: Навчитись реалізовувати систему підстановок для вхідного слова з метою вдосконалення та оволодіння навиками мов програмування.
Постановка задачі: Скласти програму, що дозволяє автоматично реалізовувати НАМ та зміну вхідного слова за допомогою системи підстановок.
Завдання: ввести з клавіатури слово і розташувати його літери за абеткою, попередньо сформувавши необхідну систему підстановок.
Теоретична інформація
Нормальні алгоритми Маркова – це є алгоритмічні системи, до складу яких, крім алфавіту (чи алфавітів), належать елементарні припустимі операції двох видів: елементарні підстановки та елементарні розпізнавачі.
Елементарні підстановки — це алфавітні оператори, послідовність яких може реалізувати будь-які алгоритми перетворення інформації.
Елементарні розпізнавачі перевіряють наявність тих чи інших властивостей перетворюваної алгоритмами інформації, а результат розпізнавання визначає послідовність виконання елементарних підстановок.
Існують узагальнений і нормальний алгоритми Маркова.
Для того, щоб впорядкувати літери за алфавітом потрібно використати нормальний алгоритм.
Код програми
#include "stdafx.h"
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main(void)
{
char c[10]="yuriybishko";
char t;
int i;
cout<<c<<endl;
for(i=1;i<10;i++)
for(i=1;i<10;i++)
{
if((c[i-1]=='y')&&(c[i]=='b'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='i')&&(c[i]=='b'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='r')&&(c[i]=='b'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='b'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='b'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='s')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='i')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='i')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='r')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='r')&&(c[i]=='i'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='i'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='i'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='u'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='r')&&(c[i]=='i'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='i'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='i'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='s')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='r')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='i')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='i')&&(c[i]=='h'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='s')&&(c[i]=='k'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='k'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='r')&&(c[i]=='k'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='k'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='k'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='s')&&(c[i]=='o'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='o'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='hr'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='r'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='s'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='u')&&(c[i]=='s'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='s'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
if((c[i-1]=='y')&&(c[i]=='u'))
{t=c[i-1];c[i-1]=c[i];c[i]=t;
cout<<c<<endl;break;}
}
cout<<c;
_getch();
return 0;
}
Блок-схема:
Результат виконання:
Висновок: навчився реалізовувати систему підстановок для вхідного слова.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!