Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Лабораторная работа №7. Алгоритмы циклической структуры. Операторы цикла






Лабораторная работа №7

По дисциплине: Информатика

Тема: «Алгоритмы циклической структуры. Операторы цикла»

 

Вариант: 12

 

 

Выполнил:

 

Проверил:

 

Лабораторная работа №7. Алгоритмы циклической структуры. Операторы цикла

Алгоритм, в котором предусмотрено многократное выполнение одной и той же последовательности действий, называется алгоритмом циклической структуры, а эта последовательность – циклом. Циклический алгоритм позволяет существенно сократить объем программы. Цикл можно организовать двумя способами:

- с помощью счетчика и условия перехода

- с помощью оператора цикла.

В Паскале существует несколько операторов цикла. Оператор цикла представляет собой единую синтаксическую конструкцию, в которой можно выделить три основные части: заголовок цикла, тело цикла, заключительную строку. Заголовок цикла образуют ключевое слово и управляющая фраза, задающая способ управления повторениями. Заключительную строку составляет ключевое слово, заканчивающееся знаком “; ”. Тело задает действия, которые повторяются в соответствии с правилами, заданными управляющей фразой. Если число повторений известно заранее (до начала повторений), то в такой ситуации лучше воспользоваться оператором цикла с параметром For-To или For-Downto (оператор цикла с фиксированным числом повторений). В остальных случаях следует использовать операторы цикла с предусловием While-Do или постусловием Repeat-Until. Оператор цикла с параметром имеет две модификации For-To и For-Downto и следующие ограничения:

  • i, m1, m2 могут быть только переменными целого типа;
  • параметр i не может изменяться внутри цикла.

Все операторы цикла (For-To, For-Downto, While-Do и Repeat-Until) приведены в таблице D1. Общим для всех перечисленных операторов цикла является то, что циклы, организованные с их помощью, содержат обязательные компоненты: задание начального значения параметра цикла; тело цикла; задание шага изменения параметра цикла; проверку на выход из цикла. Для операторов While и Repeat изменение параметра цикла по какому-либо закону в теле цикла обязательно. При программировании алгоритмов циклической структуры часто используются приемы накапливания сумм, произведения, количества:

Накапливание суммы до цикла S = 0 в цикле S=S+элемент
Накапливание произведения   P = 1   P=P*элемент
Накапливание количества   K = 0   K=K+1

 

 

Задача №12

Дано целое число n. Вычислить:

3.2 Примеры алгоритмов и программ циклической структуры

3.2.1 Вычислить все значения функции, если n меняется от 1 до 10 с шагом 1. Решить задачу несколькими способами (на рисунках 3.1, 3.2, 3.3 и 3.4 показаны все способы решения

 

Рисунок 3.1 – Пример решения задачи с использованием оператора For-To

usescrt; varn, i: integer; p: real; begin clrscr; readln(n); fori: =1 ton do begin p: =sqrt(3+sqrt(2*(n-1)+sqrt(2))); end; writeln(p); repeat untilkeypressed; end.


k = 1, 10
 
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAS3wqyMEA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbESPQYvCMBSE7wv+h/AEb2tqQVerUUQUvHjYqujx0Tzb YvNSmmjrvzfCwh6HmfmGWaw6U4knNa60rGA0jEAQZ1aXnCs4HXffUxDOI2usLJOCFzlYLXtfC0y0 bfmXnqnPRYCwS1BB4X2dSOmyggy6oa2Jg3ezjUEfZJNL3WAb4KaScRRNpMGSw0KBNW0Kyu7pwygw E3cwLt1U9nLudtSOZz/XrVZq0O/WcxCeOv8f/mvvtYI4hs+X8APk8g0AAP//AwBQSwECLQAUAAYA CAAAACEA8PeKu/0AAADiAQAAEwAAAAAAAAAAAAAAAAAAAAAAW0NvbnRlbnRfVHlwZXNdLnhtbFBL AQItABQABgAIAAAAIQAx3V9h0gAAAI8BAAALAAAAAAAAAAAAAAAAAC4BAABfcmVscy8ucmVsc1BL AQItABQABgAIAAAAIQAzLwWeQQAAADkAAAAQAAAAAAAAAAAAAAAAACkCAABkcnMvc2hhcGV4bWwu eG1sUEsBAi0AFAAGAAgAAAAhAEt8KsjBAAAA2wAAAA8AAAAAAAAAAAAAAAAAmAIAAGRycy9kb3du cmV2LnhtbFBLBQYAAAAABAAEAPUAAACGAwAAAAA= ">
вывод p
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAq9kXJ8IA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbESPQYvCMBSE74L/ITzBm6aKq2s1ioiCFw9Wl93jo3m2 xealNNHWf78RBI/DzHzDLNetKcWDaldYVjAaRiCIU6sLzhRczvvBNwjnkTWWlknBkxysV93OEmNt Gz7RI/GZCBB2MSrIva9iKV2ak0E3tBVx8K62NuiDrDOpa2wC3JRyHEVTabDgsJBjRduc0ltyNwrM 1B2NS7al/f1p99R8zWd/O61Uv9duFiA8tf4TfrcPWsF4Aq8v4QfI1T8AAAD//wMAUEsBAi0AFAAG AAgAAAAhAPD3irv9AAAA4gEAABMAAAAAAAAAAAAAAAAAAAAAAFtDb250ZW50X1R5cGVzXS54bWxQ SwECLQAUAAYACAAAACEAMd1fYdIAAACPAQAACwAAAAAAAAAAAAAAAAAuAQAAX3JlbHMvLnJlbHNQ SwECLQAUAAYACAAAACEAMy8FnkEAAAA5AAAAEAAAAAAAAAAAAAAAAAApAgAAZHJzL3NoYXBleG1s LnhtbFBLAQItABQABgAIAAAAIQCr2RcnwgAAANsAAAAPAAAAAAAAAAAAAAAAAJgCAABkcnMvZG93 bnJldi54bWxQSwUGAAAAAAQABAD1AAAAhwMAAAAA ">
ввод a
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEA/xyNh8IA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbESPQYvCMBSE78L+h/CEvciaKlKWahRXcFc8CFa9P5pn U2xeSpPV+u+NIHgcZuYbZrbobC2u1PrKsYLRMAFBXDhdcangeFh/fYPwAVlj7ZgU3MnDYv7Rm2Gm 3Y33dM1DKSKEfYYKTAhNJqUvDFn0Q9cQR+/sWoshyraUusVbhNtajpMklRYrjgsGG1oZKi75v1Xw OxrsTDPh0zY/nCbWX47p30+i1Ge/W05BBOrCO/xqb7SCcQrPL/EHyPkDAAD//wMAUEsBAi0AFAAG AAgAAAAhAPD3irv9AAAA4gEAABMAAAAAAAAAAAAAAAAAAAAAAFtDb250ZW50X1R5cGVzXS54bWxQ SwECLQAUAAYACAAAACEAMd1fYdIAAACPAQAACwAAAAAAAAAAAAAAAAAuAQAAX3JlbHMvLnJlbHNQ SwECLQAUAAYACAAAACEAMy8FnkEAAAA5AAAAEAAAAAAAAAAAAAAAAAApAgAAZHJzL3NoYXBleG1s LnhtbFBLAQItABQABgAIAAAAIQD/HI2HwgAAANsAAAAPAAAAAAAAAAAAAAAAAJgCAABkcnMvZG93 bnJldi54bWxQSwUGAAAAAAQABAD1AAAAhwMAAAAA ">
начало  
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAkFAoHMQA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbESPQWvCQBSE7wX/w/KEXkrdKGJL6ioq2JYeCk3i/ZF9 ZoPZtyG7Jum/7wpCj8PMfMOst6NtRE+drx0rmM8SEMSl0zVXCor8+PwKwgdkjY1jUvBLHrabycMa U+0G/qE+C5WIEPYpKjAhtKmUvjRk0c9cSxy9s+sshii7SuoOhwi3jVwkyUparDkuGGzpYKi8ZFer 4H3+9G3aJZ++svy0tP5SrD72iVKP03H3BiLQGP7D9/anVrB4gduX+APk5g8AAP//AwBQSwECLQAU AAYACAAAACEA8PeKu/0AAADiAQAAEwAAAAAAAAAAAAAAAAAAAAAAW0NvbnRlbnRfVHlwZXNdLnht bFBLAQItABQABgAIAAAAIQAx3V9h0gAAAI8BAAALAAAAAAAAAAAAAAAAAC4BAABfcmVscy8ucmVs c1BLAQItABQABgAIAAAAIQAzLwWeQQAAADkAAAAQAAAAAAAAAAAAAAAAACkCAABkcnMvc2hhcGV4 bWwueG1sUEsBAi0AFAAGAAgAAAAhAJBQKBzEAAAA2wAAAA8AAAAAAAAAAAAAAAAAmAIAAGRycy9k b3ducmV2LnhtbFBLBQYAAAAABAAEAPUAAACJAwAAAAA= ">
конец  

 

 

 

Рисунок 3.3 – Пример решения задачи с использованием оператора While-Do

 

uses crt; var n, i: integer; p: real; begin clrscr; readln(n); i: =1; while i< =n do begin p: =sqrt(3+sqrt(2*(n-1)+sqrt(2))); end; writeln('p=', p: 10: 2); i: =i+1; repeat until keypressed; end.
начало  
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAucnPE8EA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbERPz2vCMBS+D/Y/hDfwMjR1VJHOKCrMDQ+Cbb0/mrem 2LyUJtruv18Ogx0/vt/r7Whb8aDeN44VzGcJCOLK6YZrBWXxMV2B8AFZY+uYFPyQh+3m+WmNmXYD X+iRh1rEEPYZKjAhdJmUvjJk0c9cRxy5b9dbDBH2tdQ9DjHctvItSZbSYsOxwWBHB0PVLb9bBcf5 69l0KV9PeXFNrb+Vy899otTkZdy9gwg0hn/xn/tLK1jEsfFL/AFy8wsAAP//AwBQSwECLQAUAAYA CAAAACEA8PeKu/0AAADiAQAAEwAAAAAAAAAAAAAAAAAAAAAAW0NvbnRlbnRfVHlwZXNdLnhtbFBL AQItABQABgAIAAAAIQAx3V9h0gAAAI8BAAALAAAAAAAAAAAAAAAAAC4BAABfcmVscy8ucmVsc1BL AQItABQABgAIAAAAIQAzLwWeQQAAADkAAAAQAAAAAAAAAAAAAAAAACkCAABkcnMvc2hhcGV4bWwu eG1sUEsBAi0AFAAGAAgAAAAhALnJzxPBAAAA2wAAAA8AAAAAAAAAAAAAAAAAmAIAAGRycy9kb3du cmV2LnhtbFBLBQYAAAAABAAEAPUAAACGAwAAAAA= ">
конец  
k = 1
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAu6tdEL8A AADbAAAADwAAAGRycy9kb3ducmV2LnhtbERPy2oCMRTdF/yHcIXuNGOlIqMZEfugBRc+95fJnQcm N0OS6tSvN4tCl4fzXq56a8SVfGgdK5iMMxDEpdMt1wpOx4/RHESIyBqNY1LwSwFWxeBpibl2N97T 9RBrkUI45KigibHLpQxlQxbD2HXEiauctxgT9LXUHm8p3Br5kmUzabHl1NBgR5uGysvhxyq489ac ze7z8v49fdX9m5uSr1ip52G/XoCI1Md/8Z/7SyuYpfXpS/oBsngAAAD//wMAUEsBAi0AFAAGAAgA AAAhAPD3irv9AAAA4gEAABMAAAAAAAAAAAAAAAAAAAAAAFtDb250ZW50X1R5cGVzXS54bWxQSwEC LQAUAAYACAAAACEAMd1fYdIAAACPAQAACwAAAAAAAAAAAAAAAAAuAQAAX3JlbHMvLnJlbHNQSwEC LQAUAAYACAAAACEAMy8FnkEAAAA5AAAAEAAAAAAAAAAAAAAAAAApAgAAZHJzL3NoYXBleG1sLnht bFBLAQItABQABgAIAAAAIQC7q10QvwAAANsAAAAPAAAAAAAAAAAAAAAAAJgCAABkcnMvZG93bnJl di54bWxQSwUGAAAAAAQABAD1AAAAhAMAAAAA ">
k > 10
k = k + 1
да
нет
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAqB2bosQA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbESPT2uDQBTE74V8h+UFequrgeaPcQ0hVOilh9qG5Phw X1TivhV3q/bbdwuFHoeZ+Q2THWbTiZEG11pWkEQxCOLK6pZrBZ8fxdMWhPPIGjvLpOCbHBzyxUOG qbYTv9NY+loECLsUFTTe96mUrmrIoItsTxy8mx0M+iCHWuoBpwA3nVzF8VoabDksNNjTqaHqXn4Z BWbt3owrT529nOeCpufd5vqilXpczsc9CE+z/w//tV+1gk0Cv1/CD5D5DwAAAP//AwBQSwECLQAU AAYACAAAACEA8PeKu/0AAADiAQAAEwAAAAAAAAAAAAAAAAAAAAAAW0NvbnRlbnRfVHlwZXNdLnht bFBLAQItABQABgAIAAAAIQAx3V9h0gAAAI8BAAALAAAAAAAAAAAAAAAAAC4BAABfcmVscy8ucmVs c1BLAQItABQABgAIAAAAIQAzLwWeQQAAADkAAAAQAAAAAAAAAAAAAAAAACkCAABkcnMvc2hhcGV4 bWwueG1sUEsBAi0AFAAGAAgAAAAhAKgdm6LEAAAA2wAAAA8AAAAAAAAAAAAAAAAAmAIAAGRycy9k b3ducmV2LnhtbFBLBQYAAAAABAAEAPUAAACJAwAAAAA= ">
вывод p
ввод a

 

Рисунок 3.4 – Пример решения задачи с использованием оператора Repeat-Until

Program primer2; var n: integer; p, sum: real; begin Writeln('Введите число n'); read(n); n: =n+1; repeat P: =sqrt(3+sqrt(6+sqrt(9+sqrt(3*(n-1)+sqrt(3*n))))); Writeln('N=', n: 2, 'p=', p: 10: 2); n: = n + 1 until n > 10 end.
начало  
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEABf4dWcMA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbESPT4vCMBTE78J+h/AW9iJr6h9kqUbZFVbFg2DV+6N5 NsXmpTRR67c3guBxmJnfMNN5aytxpcaXjhX0ewkI4tzpkgsFh/3/9w8IH5A1Vo5JwZ08zGcfnSmm 2t14R9csFCJC2KeowIRQp1L63JBF33M1cfROrrEYomwKqRu8Rbit5CBJxtJiyXHBYE0LQ/k5u1gF y353a+oRHzfZ/jiy/nwYr/4Spb4+298JiEBteIdf7bVWMBzA80v8AXL2AAAA//8DAFBLAQItABQA BgAIAAAAIQDw94q7/QAAAOIBAAATAAAAAAAAAAAAAAAAAAAAAABbQ29udGVudF9UeXBlc10ueG1s UEsBAi0AFAAGAAgAAAAhADHdX2HSAAAAjwEAAAsAAAAAAAAAAAAAAAAALgEAAF9yZWxzLy5yZWxz UEsBAi0AFAAGAAgAAAAhADMvBZ5BAAAAOQAAABAAAAAAAAAAAAAAAAAAKQIAAGRycy9zaGFwZXht bC54bWxQSwECLQAUAAYACAAAACEABf4dWcMAAADbAAAADwAAAAAAAAAAAAAAAACYAgAAZHJzL2Rv d25yZXYueG1sUEsFBgAAAAAEAAQA9QAAAIgDAAAAAA== ">
конец  
k = 1
k £ 10
k = k + 1
да
нет
L t1UKDXHTtVBSKC5JzEtJzMnPS7VVqkwtVrK34+UCAAAA//8DAFBLAwQUAAYACAAAACEAhtRs8MQA AADbAAAADwAAAGRycy9kb3ducmV2LnhtbESPQWvCQBSE7wX/w/KE3ppNpZoas4oEBS89NG2px0f2 mYRm34bsmsR/7xYKPQ4z8w2T7SbTioF611hW8BzFIIhLqxuuFHx+HJ9eQTiPrLG1TApu5GC3nT1k mGo78jsNha9EgLBLUUHtfZdK6cqaDLrIdsTBu9jeoA+yr6TucQxw08pFHK+kwYbDQo0d5TWVP8XV KDAr92Zckbf2+2s60rhcJ+eDVupxPu03IDxN/j/81z5pBS8J/H4JP0Bu7wAAAP//AwBQSwECLQAU AAYACAAAACEA8PeKu/0AAADiAQAAEwAAAAAAAAAAAAAAAAAAAAAAW0NvbnRlbnRfVHlwZXNdLnht bFBLAQItABQABgAIAAAAIQAx3V9h0gAAAI8BAAALAAAAAAAAAAAAAAAAAC4BAABfcmVscy8ucmVs c1BLAQItABQABgAIAAAAIQAzLwWeQQAAADkAAAAQAAAAAAAAAAAAAAAAACkCAABkcnMvc2hhcGV4 bWwueG1sUEsBAi0AFAAGAAgAAAAhAIbUbPDEAAAA2wAAAA8AAAAAAAAAAAAAAAAAmAIAAGRycy9k b3ducmV2LnhtbFBLBQYAAAAABAAEAPUAAACJAwAAAAA= ">
вывод p
ввод a

 

 

 

Заключение:

Я изучила язык программирования Паскаль. Решила данные мне задачи используя базовые алгоритмические структуры и методики. Получила навыки практического применения базовых алгоритмических структур при программировании инженерных задач.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.