Тапсырма 6
1 – толық сандар болсын. жиымын құрастыру керек, ..., , ол үшін сондай сандар болу керек.
Ескерту. сандар арасында тең болуы мүмкін. Әр толық сан қанша рет кірсе, да кіру керек.
Шешімі. Санауға онай, мен сандары жиымының бастапқы және соңғы мағынасын білдіреді. Талаптар " және бір сандарды талап етеді" көре тұра орындалады, егерде элементтерінің орынын ауыстыру процесімен шектелсек.
k := 0;
{ x жиымының k аз элементтері өз орындарында орналасқан}
while k <> n do begin
| s := k + 1; t := k + 1;
| {x[s] - арасында ең азы... x[k+1] x[t] }
| while t<>n do begin
| | t := t + 1;
| | if x[t] < x[s] then begin
| | | s := t;
| | end;
| end;
| {x[s] – ең аз x[k+1]..x[n] }
| ... ауыстыру x[s] и x[k+1];
| k := k + 1;
end;
2 Инвариантты қолданатын, сұрыптау есебіне басқа шешім беру керек. {первые элементтін біріншісі реттелген: }
Бақылау сұрақтары
1 Рекурсивті емес бағдарламаны қалай құру керек?
2 Не өзгереді, егер де екілік бұтақтын төбесін баспаса, ал тек қана оның саның санаса?
Әдебиеттер тізімі
Негізгі әдебиеттер
Ахо А., Ульман Д. Теория синтаксического анализа, перевода и компиляции. М.: Мир, 1990
Грис Д. Наука программирования. М.:Мир. 1984
Дейкстра Э. Дисциплина программирования. М.: Мир, 1978
Касьянов В.Н. Лекции по теории формальных языков, автоматов и сложности вычислений. – Новосибирск: НГУ, 1995.
Лавров С. Программирование. Математические основы, средства, теории. Санкт-Петербург. БХВ-Петербург, 2001.
Лисков Б., Дж.Гатэг. Использование абстракций и спецификаций при разработке программ.
Льюс Ф. Д.Розенкранц. Р.Стирнз. Теоретические основы проектирования компиляторов. М.: Мир, 1984
Мальцев А.И. Алгоритмы и рекурсивные функции. – М.: Наука, 1986
Языки и автоматы. Сб.переводов. М.:Мир, 1979.
Қосымша әдебиеттер
Агафонов В.Н. Синтаксический анализ языков программирования. Уч.пособие, Новосибирск, НГУ, 1981. 91с.
Ахо А., Дж.Хопкрофт, Дж.Ульман. Построение и анализ вычислительных алгоритмов – М: Мир, 1979.
Братчиков И.Л. Синтаксис языков программирования. М.: Наука, 1975. 232с.
Гинзбург С. Математическая теория контексно-свободных языков. М.: Мир,, 1970. 326с.
Гладкий А.В. Формальные грамматики и языки. М.: Наука, 1973. 368с.
Грис Д. Конструирование компиляторов для цифровых вычислительных машин. М.: Мир, 1975. 544с.
Кнут Д. Искусство программирования для ЭВМ. В 3 томах. –м.: Мир, 1976
Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы. Построение и анализ – М:МЦНМО, 1999.
Достарыңызбен бөлісу: |