Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Цикл «До» (оператор Repeat )



 


                                                                  

 

 


 

 

 


S = 0
                                                                             

 

         
 
-
 

 

 


                                                                                                                

 


           

 

 

 


                       









Цикл «Пока» (оператор While )

 


 


                                                                                        

 

 

 

 





Цикл с заранее известным числом повторений (цикл с параметром)

(оператор For )


Program PARAMETR;

Var A:integer;

  S:longint;

Begin

   S:=0;

for A:=1 to 100 do S:=S+A*A;

Writeln (‘S =’, S);


End.

     
 

 


                                                  




ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЙ НА КОМПЬЮТЕРЕ.

1. Запустить среду программирования Турбо Паскаль, щелкнув 2 раза ЛКМ на ярлыке.

2. В окне редактора введите текст первой программы.

3. Сохранить текст программы, для чего выбрать команду File – Saveas и в открывшемся окне ввести имя файла (не более 8 символов), расширение .pasдобавиться автоматически. Нажать кнопку ОК.

4. Выполнить компилирование программы с помощью команды Compile – Compile (или нажать одновременно клавиши Alt и F9). Если программа не содержит ошибок, то появится сообщение об успешной компиляции. Если в программе есть ошибки, то появится сообщение об ошибке, код ошибки, а текстовый курсор покажет место ошибки.

5. Запустить программу на выполнение, для чего выбрать команду Run– Run(или нажать одновременно клавиши Ctrlи F9).

6. Выполнить команду Debug – Output и в нижней части экрана появится пользовательский экран с результатом.

7. Показать результат выполнения программы преподавателю,записать результат в тетрадь.

ЗАДАНИЕ 2 (для самостоятельного выполнения)

 

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

Составить алгоритм и программу на языке программирования Турбо Паскаль для решения следующих задач:

1. Вычислить  при n = 8.

2. Вычислить  при  m = 3, n = 17.

3. Вычислить F = 1*2* … *m = m! если m=6.

4. Вычислить ,при n = 10.

Указание:для решения задач можно использовать любой оператор цикла .

Показать результатывыполнения программ преподавателю, записать результаты в тетрадь.

Контрольные вопросы

1. Какой алгоритм называется циклическим?

2. Что такое «тело» цикла?

3. Какие операторы цикла вы знаете?

4. Чем отличается цикл «До» от цикла «Пока»?

5. Опишите структуру оператора For?

6. Что называется переменной- счетчиком?

 


 


ПРАКТИЧЕСКИЕ РАБОТЫ №5, 6

Наименование работы:«Разработка и программирование задач с массивами».

ЗАДАНИЕ 1.

 

Цель задания: получить навыки программирования задач с массивами, а также навыки работы в среде программирования Турбо Паскаль.

Задача 1:дан массив Х, состоящий из nэлементов. Найти сумму элементов этого массива.

Составим блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль:

     
 

 


    ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ НА КОМПЬЮТЕРЕ.

1. Запустить среду программирования Турбо Паскаль, щелкнув 2 раза ЛКМ на ярлыке.

2. В окне редактора введите текст программы.

3. Сохранить текст программы, для чего выбрать команду File – Saveas и в открывшемся окне ввести имя файла (не более 8 символов), расширение .pasдобавиться автоматически. Нажать кнопку ОК.

4. Выполнить компилирование программы с помощью команды Compile – Compile (или нажать одновременно клавиши Alt и F9). Если программа не содержит ошибок, то появится сообщение об успешной компиляции. Если в программе есть ошибки, то появится сообщение об ошибке, код ошибки, а текстовый курсор покажет место ошибки.

5. Запустить программу на выполнение, для чего выбрать команду Run– Run(или нажать одновременно клавиши Ctrlи F9).Откроется пользовательский экран (UserScreen), в котором нужно ввести исходные данные:

 

Х[1]=5; X[2]=7; X[3]=3; X[4]=-2; X[5]=4; X[6]=1; X[7]=9.

Для возврата к окну с текстом программы используется клавиша Esc.

6. Выполнить команду Debug – Output и в нижней части экрана появится пользовательский экран с результатом.

7. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

Задача 2:дан массив Х, состоящий из nэлементов. Найти произведение элементов этого массива.


ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль.

Указание: измените блок-схему и программу расчета суммы элементов массива таким образом, чтобы рассчитать произведение элементов массива.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя те же исходные данные, что и в предыдущей задаче.

4. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

ЗАДАНИЕ 2.

 

Цель задания:закрепить навыки программирования задач с массивами, а также навыки работы в среде программирования Турбо Паскаль.

Задача 3:дан массив Х, состоящий из nэлементов. Найти максимальный элемент массива и номер, под которым он хранится в массиве.

Алгоритм решения задачи следующий: предположим, что первый элемент массива является максимальным и запишем его в переменной MAX, а в NMAX – его номер (т.е. 1). Затем в цикле сравниваем все элементы, начиная со 2-го с максимальным. Если текущий элемент массива оказывается больше максимального, то записываем его в переменную MAX,а в переменную NMAX – текущее значение индекса i(номера).

Составим блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль:


             
Program MAXIMUM; Const N:=10; Var X:array [1..N] of real; i:integer; MAX,NMAX:real; Begin    For i:=1 to N do begin writeln (‘X[’,i,’]=’); readln(X[i]); end; MAX:=X[1]; NMAX:=1; For i:=2 to N do If X[i]>MAX then    Begin    MAX:=X[i]; NMAX:=I; end; writeln (‘MAX = ‘, MAX:1:3,   ‘NMAX =’, NMAX); end.  
. . .
 
MAX=X1 NMAX=1

 


ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ НА КОМПЬЮТЕРЕ.

1. Запустить среду программирования Турбо Паскаль, щелкнув 2 раза ЛКМ на ярлыке.

2. В окне редактора введите текст программы.

3. Сохранить текст программы, для чего выбрать команду File – Saveas и в открывшемся окне ввести имя файла (не более 8 символов), расширение .pasдобавиться автоматически. Нажать кнопку ОК.

4. Выполнить компилирование программы с помощью команды Compile – Compile (или нажать одновременно клавиши Alt и F9). Если программа не содержит ошибок, то появится сообщение об успешной компиляции. Если в программе есть ошибки, то появится сообщение об ошибке, код ошибки, а текстовый курсор покажет место ошибки.

5. Запустить программу на выполнение, для чего выбрать команду Run– Run(или нажать одновременно клавиши Ctrlи F9).Откроется пользовательский экран (UserScreen), в котором нужно ввести исходные данные:

 

Х[1]=-5; X[2]=7; X[3]=12; X[4]=0; X[5]=3;

X[6]=127; X[7]=31; Х[8]=8; X[9]=-4; X[10]=9;

Для возврата к окну с текстом программы используется клавиша Esc.

6. Выполнить команду Debug – Output и в нижней части экрана появится пользовательский экран с результатом.

7. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

Задача 4:дан массив Х, состоящий из nэлементов. Найти минимальный элемент массива и номер, под которым он хранится в массиве.

 

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль.

Указание: измените блок-схему и программу нахождения максимального элемента массива и его номера таким образом, чтобы найти минимальный элемент массива и номер, под которым он хранится в массиве.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя те же исходные данные, что и в предыдущей задаче.

4. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

Задача 5:дан массив Х, состоящий из nцелых чисел. Расположить элементы массива в порядке возрастания их значения.

Алгоритм решения задачи следующий: сравним первый элемент массива со вторым, если первый окажется больше второго, то поменяем их местами.Теже действия выполним для второго и третьего, третьего и четвертого, i-го и(i+1)-го, (n-1)-го и n-го элементов. В результате этих действий самый большой элемент станет на последнее (n-е)место. Теперь повторим данный алгоритм сначала, но последний (n-й) элемент, рассматривать не будем, т.к. он уже занял свое место. После проведения данной операции самый большой элемент оставшегося массива станет на (n-1)-е место. Так повторяем до тех пор, пока не упорядочим весь массив.

Составим блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль:


 

             
. . .
Program PORADOK; Const N:=5; Var    X:array [1..N] of word; i,j:integer; b:word; Begin    For i:=1 to N do begin writeln (‘X[’,i,’]=’); readln(X[i]); end; writeln (‘ МассивХ ’); For i:=1 to N dowrite (X[i], ‘      ‘); Writeln; For j:=1 to N-1 do For i:=1 to N-j do    If X[i]>X[i+1] then begin b:=X[i]; X[i]:=X[i+1]; X[i+1]:=b; end; writeln (‘Упорядоченныймассив ’);    For i:=1 to N do write (X[i], ‘      ‘); writeln; end.  
 
. . .

 

 


           

 

 

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ НА КОМПЬЮТЕРЕ.

1. Запустить среду программирования Турбо Паскаль, щелкнув 2 раза ЛКМ на ярлыке.

2. В окне редактора введите текст программы.

3. Сохранить текст программы, для чего выбрать команду File – Saveas и в открывшемся окне ввести имя файла (не более 8 символов), расширение .pasдобавиться автоматически. Нажать кнопку ОК.

4. Выполнить компилирование программы с помощью команды Compile – Compile (или нажать одновременно клавиши Alt и F9). Если программа не содержит ошибок, то появится сообщение об успешной компиляции. Если в программе есть ошибки, то появится сообщение об ошибке, код ошибки, а текстовый курсор покажет место ошибки.

5. Запустить программу на выполнение, для чего выбрать команду Run– Run(или нажать одновременно клавиши Ctrlи F9). Откроется пользовательский экран (UserScreen), в котором нужно ввести исходные данные:

 

Х[1]=7; X[2]=3; X[3]=5; X[4]=4; X[5]=2.

Для возврата к окну с текстом программы используется клавиша Esc.

6. Выполнить команду Debug – Output и в нижней части экрана появится пользовательский экран с результатом.

7. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

Задача 6:дан массив Х, состоящий из nцелых чисел. Расположить элементы массива в порядке убывания их значения.

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя те же исходные данные, что и в предыдущей задаче.

4. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

Задача 7:дан массив Х, состоящий из nэлементов. Найти сумму всех положительных элементов массива.

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя следующие исходные данные:

 

Х[1]=-5; X[2]=17; X[3]=-3; X[4]=-22; X[5]=14; X[6]=-1; X[7]=9.

 

 

5. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

Задача 8:дан массив Х, состоящий из nэлементов. Найти произведение всех отрицательных элементов массива.

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить блок-схему алгоритма и программу решения данной задачи на языке программирования Турбо Паскаль.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя следующие исходные данные:

 

Х[1]=-5; X[2]=17; X[3]=-3; X[4]=-22; X[5]=14; X[6]=-1; X[7]=9.

 

 

6. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

Контрольные вопросы

1. Какие данные называются массивом?

2. Какой оператор служит для описания массивов?

3. Как организовать ввод-вывод элементов массива?

4. Опишите алгоритм нахождения суммы элементов массива?

5. Опишите алгоритм нахождения произведения элементов массива?

6. Опишите алгоритм поиска максимального элемента массива и его номера?

7. Опишите алгоритм поиска минимального элемента массива и его номера?

8. Опишите алгоритм упорядочивания элементов в массиве по возрастанию?

9. Опишите алгоритм упорядочивания элементов в массиве поубыванию?

 

                       



ПРАКТИЧЕСКАЯ РАБОТА №7

Наименование работы:«Разработка процедур (подпрограмм) и функций.

ЗАДАНИЕ 1.

 

Цель задания: получить навыки разработки подпрограмм и функций.

Задача 1:составить процедуру (подпрограмму) вычисления степени числа a:

an , где  а, n – целые числа.

 

Составим программу вычисления степени числаа на языке программирования Турбо Паскаль:

 

Program STEPEN;

Varp,a,n,i:integer;

Begin

p:=1; n:=7;

writeln (‘a=’);

read (a)

for i:=1 to n do p:=p*a;

write (‘степень числа а=’,р);

End .

Пояснения

     В практике программирования часто складываются ситуации, когда одну и ту же группу операторов, реализующих определенную цель, требуется повторить без изменений в нескольких местах программы. Для избавления от столь нерациональной траты времени было предложено использовать подпрограммы.

     Подпрограмма – именованная, логически законченная группа операторов языка, которую можно вызвать для выполнения любое количество раз из различных мест программы. В языке Турбо Паскаль существует 2 вида подпрограмм: процедуры и функции.

     Главное отличие процедур от функций заключается в том, что результатом последних является одно единственное значение.

     Каждая новая процедура или функция должна быть предварительно описана в разделе описаний процедур и функций. Для использования процедуры необходимо написать оператор вызова. Описание процедуры состоит из заголовка процедуры и ее тела. Заголовок процедуры включает служебное слово procedure, имя процедуры и заключенный в круглые скобки список формальных параметров с указанием их типов:

 

Procedure<имя> (<список формальных параметров>);

Например:

Procedure a17 (a:real; b,c:real; var x1,x2:real: var k:integer);

        

Формальные параметры отделяются точкой с запятой. После заголовка идут разделы описаний (констант, типов, переменных, процедур и функций, используемых в процедуре) и операторы языка Турбо Паскаль, реализующие алгоритм процедуры. Формальные параметры нельзя описывать в разделе описания процедуры.

Для обращения к процедуре необходимо использовать оператор вызова процедуры. Он имеет вид:

<имя процедуры> (<список_фактических_параметров>);

Например:

STEPEN ( b , m , j , h );

 

    Фактические параметры в списке отделяются друг от друга запятой. Механизм применения формальных – фактических параметров обеспечивает замену формальных параметров фактическими, что позволяет выполнять процедуру с различными данными. Между фактическими параметрами в операторе вызова процедуры и формальными параметрами в заголовке процедуры устанавливается взаимно однозначное соответствие.

    Количество, типы и порядок следования формальных и фактических параметров должны совпадать.

    Пример использования процедуры в программе приведен ниже:

 

ProgramPROCED1;

Var b, m, j, h:integer;

Procedure s (a,n,i:integer; var p:integer);

Begin

p:=1; n:=7;

for i:=1 to n do p:=p*a;

end;

Begin

writeln (‘b=’);

read (b)

S (b, m, j, h)

write (‘степеньчисла b= ’,h);

End.

    Функции. В Турбо Паскале есть стандартные функции (sin, ln, exp . . .), кроме них программист может воспользоваться собственными функциями, предварительно описав их в программе.

Формат описания функции:

function<имя функции> (<имя формального параметра 1>:<Тип>;
<имя формального параметра 2>:<Тип>):тип результата;

 

Обращение к функции осуществляется по имени с указанием списка фактических параметров. Количество, типы и порядок следования формальных и фактических параметров должны совпадать:

 

<имя функции> (<список_фактических_параметров>);

 

Примерописанияфункций: functiontan (x:real):real;

                                 functionmax (x,y:real):real;


ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ НА КОМПЬЮТЕРЕ.

1. Запустить среду программирования Турбо Паскаль, щелкнув 2 раза ЛКМ на ярлыке.

2. В окне редактора введите текст программыPROCED1.

3. Сохранить текст программы, для чего выбрать команду File – Saveas и в открывшемся окне ввести имя файла (не более 8 символов), расширение .pasдобавиться автоматически. Нажать кнопку ОК.

4. Выполнить компилирование программы с помощью команды Compile – Compile (или нажать одновременно клавиши Alt и F9). Если программа не содержит ошибок, то появится сообщение об успешной компиляции. Если в программе есть ошибки, то появится сообщение об ошибке, код ошибки, а текстовый курсор покажет место ошибки.

5. Запустить программу на выполнение, для чего выбрать команду Run– Run(или нажать одновременно клавиши Ctrlи F9). Откроется пользовательский экран (UserScreen), в котором нужно ввести исходные данные:

 

              1). B = 2;            2). B = 5;          3). B = 12.

Для возврата к окну с текстом программы используется клавиша Esc.

6. Выполнить команду Debug – Output и в нижней части экрана появится пользовательский экран с результатом.

7. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

Задача 2:составить процедуру (подпрограмму) вычисления суммы двух чисел a и b:

c = a + b , где а, b , c –вещественные числа.

 

Составим на языке программирования Турбо Паскаль программу вычисления суммы двух чисел с использованием процедуры:

 

Program PROCED2;

Varx,y,z:real;

Procedure SUM(a,b:real;var c:real);

Begin

c:=a=b;

end;

Begin

writeln (‘x=’);

Read (x)

writeln (‘y=’);

read (y);

   SUM(x,y,z);

writeln (‘z = ’,z);

End .

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ НА КОМПЬЮТЕРЕ.

1. Запустить среду программирования Турбо Паскаль, щелкнув 2 раза ЛКМ на ярлыке.

2. В окне редактора введите текст программы.

3. Сохранить текст программы, для чего выбрать команду File – Saveas и в открывшемся окне ввести имя файла (не более 8 символов), расширение .pasдобавиться автоматически. Нажать кнопку ОК.

4. Выполнить компилирование программы с помощью команды Compile – Compile (или нажать одновременно клавиши Alt и F9). Если программа не содержит ошибок, то появится сообщение об успешной компиляции. Если в программе есть ошибки, то появится сообщение об ошибке, код ошибки, а текстовый курсор покажет место ошибки.

5. Запустить программу на выполнение, для чего выбрать команду Run– Run(или нажать одновременно клавиши Ctrlи F9). Откроется пользовательский экран (UserScreen), в котором нужно ввести исходные данные:

 

                                     х = 457;           y = 525.

Для возврата к окну с текстом программы используется клавиша Esc.

6. Выполнить команду Debug – Output и в нижней части экрана появится пользовательский экран с результатом.

7. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

Задача 3:разработать на языке программирования Турбо Паскаль функцию вычисления суммы двух чисел a и b:

c = a + b , где  а, b , c – вещественные числа.

Составим программу вычисления функции суммирования двух чисел на языке программирования Турбо Паскаль:

 

Program FUNC1;

Varx,y:real;

Function SUM(a,b:real):real;

Begin

SUM:=a+b;

end;

Begin

writeln (‘x=’);

Read (x)

writeln (‘y=’);

read (y);

writeln (SUM(x,y));

End.

ЗАДАНИЕ 2 (для самостоятельного выполнения)

Цель задания:закрепить навыки программирования задач с использованием процедур и функций, а также навыки работы в среде программирования Турбо Паскаль.

Задача 4:составить процедуру (подпрограмму) вычисления произведения трех чисел a, b, с:

z = a * b * c , где а, b , c – вещественные числа.

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить на языке программирования Турбо Паскаль программу вычисления произведения трех чисел с использованием процедуры.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя следующие исходные данные:

 

                       a ( k ) = 25.7; b ( m ) = 12.5; c ( n )= 33.

 

4. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

Задача 5:разработать на языке программирования Турбо Паскаль функцию вычисления произведения трех чисел a, b, с:

z = a * b * c , где  а, b , c – вещественные числа.

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить на языке программирования Турбо Паскаль программу вычисления произведения трех чисел с использованием функции.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя следующие исходные данные:

 

                       a ( k ) = 25.7; b ( m ) = 12.5; c ( n )= 33.

 

7. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

 

Задача 6:разработать на языке программирования Турбо Паскаль функцию вычисления ctg ( x ).

 

ПОРЯДОК ВЫПОЛНЕНИЯ ЗАДАНИЯ

1. Самостоятельно составить на языке программирования Турбо Паскаль программу вычисления ctg ( x )с  использованием функции.

2. Ввести текст программы, сохранить программу.

3. Выполнить программу, введя следующие исходные данные:

 

                       c (х) = 30.

 

8. Показать результат выполнения программы преподавателю, записать результат в тетрадь.

Контрольные вопросы

1. Что называется подпрограммой?

2. Какие виды подпрограмм используются в языке программирования Турбо Паскаль?

3. Чем отличается процедура от функции?

4. Как описывается процедура?

5. Как описывается функция?

6. Опишите оператор вызова процедуры?

7. Опишите оператор вызова функции?

 

 

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА

1. Алексеев Е.Р., Чеснокова О.В., Павлыш В.Н., Славинская Л.В. Турбо Паскаль 7.0. – М.: НТ Пресс, 2006.

2. Лысенко К.Н. Информатика. (курс лекций) – Пенза: Изд-во Пензенского технологического института, 2003.

3. Шипунова А.В. Информатика: учеб.-справ. пособие. – М.: АСТ: Астрель: Транзиткнига, 2006.


Поделиться:



Последнее изменение этой страницы: 2019-06-10; Просмотров: 115; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.21 с.)
Главная | Случайная страница | Обратная связь