Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015

Опубликуйте свой материал в официальном Печатном сборнике методических разработок проекта «Инфоурок»

(с присвоением ISBN)

Выберите любой материал на Вашем учительском сайте или загрузите новый

Оформите заявку на публикацию в сборник(займет не более 3 минут)

+

Получите свой экземпляр сборника и свидетельство о публикации в нем

Инфоурок / Информатика / Другие методич. материалы / Методические рекомендации для выполнения практических работ
ВНИМАНИЮ ВСЕХ УЧИТЕЛЕЙ: согласно Федеральному закону № 313-ФЗ все педагоги должны пройти обучение навыкам оказания первой помощи.

Дистанционный курс "Оказание первой помощи детям и взрослым" от проекта "Инфоурок" даёт Вам возможность привести свои знания в соответствие с требованиями закона и получить удостоверение о повышении квалификации установленного образца (180 часов). Начало обучения новой группы: 24 мая.

Подать заявку на курс
  • Информатика

Методические рекомендации для выполнения практических работ

библиотека
материалов

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

Тема: вычисление в командном режиме.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания: Вычислите:

1 вариант.

1. 18*32,1*22-75

2. |121,3-18,5|-hello_html_5e3f6b02.gif

3. cos1

4. 3sinhello_html_m12edfb30.gif

5. 2соs245°

6. lg3

7hello_html_m2e8fe607.gif. 7*0,732-4*1,2342+3hello_html_m4d5454d2.gif

(2,4-7,5)2+2

8hello_html_249bbe2.gif. 7*53,82-4hello_html_ce802e5.gif-77*0,35

(5*11,2+4,3)2+1


9. 2hello_html_m7e4746ff.gif+5

hello_html_m36d2df2a.gif 3hello_html_m368e0be2.gif+5

10. 4tg1 -8 cos2 22 + 5

(2*2,73-2)2+1



2 вариант.

1. 24*18,3*41-83

2. |10,3-16,48|-hello_html_6c69e1a6.gif

3. cos2

4. 2sin2hello_html_m667a0225.gif

5. соs230°-2

6. lg4

7hello_html_m2e8fe607.gif. 2*0,218-3*1,422-3hello_html_m39bbebd5.gif

(8,4-11,5)2+1

8hello_html_249bbe2.gif. 2*41,23-5hello_html_2fdb71df.gif-24*0,62

(2*10,6+1,3)2-1


9. hello_html_m12628bd1.gif-1

hello_html_m36d2df2a.gif 2hello_html_m483aa0c0.gif+4

10. 2tg2 -4 sin2 23 - 1

(2*4,21+1)2-3

Теоретические сведения к практической работе:

Арифметические выражения

Арифметические выражения строятся из арифметических констант, переменных, функций и операций над ними.

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

При построении арифметических выражений следует учитывать следующие правила:

Выражение записывается в строчку. Например, выражение:

hello_html_m4cb657a1.gif

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

(2*a*x+3*b*y-4*x)/(2.5*(a+b+c))

Скобки в арифметических выражениях только круглые. Число открывающихся

скобок должно равняться числу закрывающихся скобок.

Нельзя записывать два знака операций подряд, без скобок, например в

выражении:

hello_html_9bf0676.gifследует записать: (3*a+b)/(-x).

Порядок выполнения арифметических операций слева направо в соответствии со

старшинством операций:

1) значения функций; 2) *, /, div, mod; 3) +, -.

Пример:

Рассмотрим порядок вычисления на примере:

hello_html_m72c883bc.gif

Представленное выражение будет вычисляться в следующем порядке:

  1. Вычисление функции Sin(x);

  2. a*Sin(x); 3) Cos(y); 4) b*cos(y); 5) aSin(x)+b*Cos(y);

6) SQR(aSin(x)+b*Cos(y)) - получено значение в числителе;

  1. Вычисление x/y; 8) Sin(x/y); 8) a*a; 9) b*b; 10) SQR(a*a+b*b);

11) SQR(a*a+b*b)*Sin(x/y) - получено значение в знаменателе;

12) числитель/знаменатель - получен результат.

Пример:

Program Р;

const

a := 1.5;

b := 0.5;

var

x,Y,F: real;

begin

readln (‘Введите значение x: ’,x);

Y := ln (abs(x-b))*(a*x*arctan(a+x)-sqrt(abs(sqr(x)*x-1))+ln(abs(b+x)+1));

F := 1+sqrt(a*x*sqr(x)+b)-a*exp(-a*x);

Writeln (‘Значение Y: ’,Y);

Writeln (‘Значение F: ’,F)

End.


Сделайте вывод по работе.





































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

Тема: программирование алгоритмов линейной структуры.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

Разработать алгоритм, составить программу решения задачи, подготовить тестовый пример и вычислить его на ПК.

1 вариант.

1. Вычислите, используя расчетную формулу:

аhello_html_7d227518.gif) у= 3hello_html_3dd592fc.gif- 7hello_html_m2506be7f.gif

hello_html_mcb88c49.gif+2


вhello_html_7d227518.gif) у= 3sin2x- 7hello_html_m77c50735.gif

5tg3x+3cos3c

2. Найдите удвоенную сумму трех чисел.


2 вариант.

1. Вычислите, используя расчетную формулу:

аhello_html_7d227518.gif) у= 2hello_html_69819b5a.gif+4hello_html_m6e192adf.gif

4hello_html_m1e74a60a.gif+1


вhello_html_7d227518.gif) у= 6соs2x- 2hello_html_m4efa6b4f.gif

6tg2x-3cos2c

2. Найдите частное от деления числа 2a на разность чисел b и с.


Теоретические сведения к практической работе:

Переменная величина – это именованный элемент, который в процессе выполнения программы может принимать различные значения.

Типы переменных:


Тип

Наименование

Диапазон допустимых значений

INTEGER

Целое

-32768…32767

LONGINT

Длинное целое

-2 *109 … 2*109

REAL

Вещественный

10-38 …1038

CHAR

Символьный

Множество символов ASCII


Переменные описываются в разделе VAR с указанием типа, например: var a: integer; b,c: Real; R:char;.

Оператор ввода с клавиатуры READ() или READLN(), например:

а)READ(a, b) –программа ожидает ввода значений переменных a и b. Курсор остается на этой же строке;

б) READLN (a, b) –программа ожидает ввода данных и затем переводит курсор на новую строку.

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

Схема линейного алгоритма вычислений

Пример: Составьте программу нахождения суммы двух чисел:

VAR a,b,S: Integer;

Begin

a:=5;

b:=7;

S:=a+b;

WRITELN(‘сумма=’,S)

end.

Пример: Определить расстояние на плоскости между двумя точками с заданными координатами M1(x1,y1) и M2(x2,y2)
Решение: Математическая модель: расстояние на плоскости между двумя точками M1(x1,y1) и M2(x2,y2) высчитывается по формуле hello_html_m6d7be237.png

Составим схему алгоритма: hello_html_4fd5ba7c.png:

Переводим блок-схему на язык Паскаль:

program example1;

var x1, x2, y1, y2: integer;

d:real;

begin

write('x1= '); readln(x1);

write('y1= '); readln(y1);

write('x2= '); readln(x2);

write('y2= '); readln(y2);

d:=sqrt(sqr(x2-x1)+sqr(y2-y1));

writeln('d=',d);

end.



Сделайте вывод по работе.












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

Тема: программирование алгоритмов разветвляющейся структуры.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

Разработать алгоритм, составить программу решения задачи, подготовить тестовый пример и вычислить его на ПК.

1 вариант.

1. Вычислите значение у, используя расчетную формулу:

hello_html_634c6843.gifsin x, если х>0,

у=

х+1, если хhello_html_m7ceebba.gif0.


2. Вычислите значение у, используя расчетную формулу:

hello_html_634c6843.gif

х3, если хhello_html_m7ceebba.gif0,

у= log4x, если 0<х<10,

hello_html_7d4e9644.gif, если хhello_html_m78774d40.gif10.

3. Попадает ли точка с координатами (х;у) в указанную область?

hello_html_m5c8d763.png

4. Вычислить значение функции f(x), используя оператор выбора:

hello_html_m5e2238bb.gif х, при х=1,

у= x3, при х=2,

х4, при х=3,

0 в остальных случаях.


2 вариант.

1. Вычислите значение у, используя расчетную формулу:

hello_html_634c6843.gif

х3, если х>1,

у=

12-х, если хhello_html_m7ceebba.gif1.


2. Вычислите значение у, используя расчетную формулу:

hello_html_634c6843.gif

х4, если х<1,

у= log5x, если 1hello_html_m7ceebba.gifх<7,

hello_html_726ddc62.gif, если хhello_html_m78774d40.gif7.

3. Попадает ли точка с координатами (х;у) в указанную область?

hello_html_30a91eb8.png

4hello_html_m4de8e308.gif. Вычислить значение функции f(x), используя оператор выбора:

х2, при х=1,

у= x4, при х=2,

х, при х=3,

0 в остальных случаях.



Теоретические сведения к практической работе:

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

Полная форма команды ветвления:

IF условие

THEN оператор 1

ELSE оператор 2;

Неполная форма команды ветвления.

IF условие THEN оператор;

Команда IF выполняет после слов THEN, ELSE только один оператор.

Если требуются выполнить более чем один оператор, то цепочку операторов заключаем в операторные скобки BEGIN...END.

Для получения сложных условий простые условия объединяют с помощью скобок и операций AND(и), OR(или), NOT(не), например (х>-5) and (x<5) (простые условия заключаются в скобки и соединяются союзом).

Пример: Дана программа нахождения меньшего из двух чисел:

Var a,b, min: real;

BEGIN

READ(a,b);

IF A

THEN min: = a

ELSE min: = b;

writeln(min)

END.

Пример: Составить программу, позволяющую получить словесное наименование дня недели.

Var x: integer;

A: string;

Begin

Write (‘введите номер дня’);

Readln(х);

Case х of

1: a:=‘понедельник’;

2: a:=‘вторник’;

3: a:=‘среда’;

4: a:=‘четверг’;

5: a:=‘пятница’;

6: a:=‘суббота‘;

7: a:=‘воскресенье’;

else а:='такого дня недели нет';

end;

writeln(a)

end.

Пример: Дано действительное а. Для функций f(a),график которой представлен на рисунке, вычислить f(a).

hello_html_m55118cd3.jpg

Решение: Математическая модель: функция вычисляется по следующей формуле

hello_html_m93553bb.png

Составим схему алгоритма:

hello_html_m18ccc7cb.png


Program example1;

var a, f:real;

begin

write('Введите a> '); readln(a);

if a<-1 then f:= -a-1 else

if (a>=-1) and (a<0) then f:= a+1 else

if (a>=0) and (a<1) then f:= -a+1 else f:= a+1;

writeln('F= 'f);

end.


Сделайте вывод по работе.










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

Тема: программирование алгоритмов циклической структуры.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

Разработать алгоритм, составить программу решения задачи, подготовить тестовый пример и вычислить его на ПК.


1 вариант.

1. Найдите сумму двузначных натуральных чисел, кратных трем.

2. Найдите сумму п первых чисел ряда, если ап=hello_html_4eb80651.gif.

3. Вычислить значения функции у=хhello_html_5938cb2b.gifна [0;10] с шагом 1.


2 вариант.

1. Найдите сумму трехзначных натуральных чисел, оканчивающихся на 18.

2. Найдите сумму п первых чисел ряда, если ап=hello_html_56cd98db.gif.

3. Вычислить значения функции у=hello_html_m48c56d5f.gifна [1;10] с шагом 1.


Теоретические сведения к практической работе:

Оператор FOR используется, когда известно число повторений в цикле.

Этот оператор обеспечивает повторение цикла, управляемое переменной:

FOR переменная:=начальное значение TO конечное значение DO оператор;

где переменная -переменная порядкового типа, причем она последовательно принимает значения от начального до конечного с шагом 1, либо:

FOR переменная:=начальное значение DOWNTO конечное значение DO оператор,

где переменная принимает последовательно убывающие значения с шагом -1.

Если необходимо последовательно выполнять несколько операторов в теле цикла, их следует объединить в составной оператор с помощью операторных скобок BEGIN...END.

Схема универсального оператора цикла такова:

WHILE логическое выражение DO оператор; (оператор будет повторяться, пока истинно логическое выражение). Цикл необходимо составить так, чтобы перед каждым повторением оператора значение логического выражения вычислялось заново. Если необходимо повторять несколько операторов, их следует объединить составным оператором BEGIN...END.

Оператор FOR обеспечивает повторение цикла, управляемое переменной:

FOR переменная:=начальное значение TO конечное значение DO оператор;

где переменная – переменная порядкового типа, причем она последовательно принимает значения от начального до конечного с шагом 1.

FOR переменная:=начальное значение DOWNTO конечное значение DO оператор;, где переменная принимает последовательно убывающие значения с шагом -1.


Пример: Составить программу вычисления суммы 24 членов ряда: 1+2+3+...+24

var k,s: integer;

begin

s:=0;

for k:= 1 to 24 do

s:=s+k;

writeln('сумма=',s)

end.


Пример: Дана программа вычисления суммы S первых 100 членов ряда: 1+2+3+...+100:

var k,s: integer;

begin

s:=0;

k:=1;

while k<=100 do begin

s:=s+k;

k:=k+1;

end;

writeln('сумма=',s)

end.




Сделайте вывод по работе.
































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

Тема: одномерные массивы.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

Разработать алгоритм, составить программу решения задачи, подготовить тестовый пример и вычислить его на ПК.


1 вариант.

1. Нахождения суммы элементов одномерного массива, состоящего из N элементов, меньших 10.

2. Нахождения числа элементов одномерного массива, состоящего из N элементов, больших 0,5.

3. Замены элементов одномерного массива, состоящего из N элементов, их квадратами.

4. Нахождения наименьшего элемента одномерного массива, состоящего из N элементов.


2 вариант.

1. Нахождения суммы элементов одномерного массива, состоящего из N элементов, больших 4.

2. Нахождения числа элементов одномерного массива, состоящего из N элементов, не превосходящих 4.

3. Замены элементов одномерного массива, состоящего из N элементов, их кубами.

4. Нахождения количества элементов одномерного массива, состоящего из N элементов, равных первому.


Теоретические сведения к практической работе:

Под массивом понимается упорядоченная последовательность конечного числа данных одного типа, объединенных под общим именем. Имена массивов образуются так же, как и имена простых переменных. Одномерные массивы, т.е. наборы однотипных данных, можно описать следующим образом:

var имя массива : array [размер] of тип ;

Например: a:array [1..6] of integer;

А) Вводить данные в массив можно следующим образом, например: CONST f:array[1..10] of integer=(1,2,3,4,0,6,8,10,-5,6); {в массив из 10 элементов вводятся числа, указываемые в скобках}

Б) Вводить, выводить данные в массив и из массива, обрабатывать данные удобно с помощью циклов, например: for i:=1 to n do read(f[i]); {один из способов ввода данных в одномерный массив).};

В) for i:=1 to n do write(f[i],’ ‘); {вывод данных из одномерного массива).}

Пример: Найдите сумму положительных и отрицательных элементов одномерного массива.

Program Р;

uses crt;

var

M:array[1..200] of real;

s1,s2:real;

i,k:integer;

begin

clrscr;

s1:=0;

s2:=0;

write('Введите число элементов массива: ');

readln(k);

for i:=1 to k do begin

WRITE('M[',i,']=');

readln(M[i]);

end;

for i:=1 to k do begin

if M[i]<0 then s1:=s1+M[i];

if M[i]>0 then s2:=s2+M[i];

end;

writeln('Сумма отрицательных элементов: ',s1);

writeln('Сумма положительных элементов: ',s2);

readln;

end.

Пример: Найти сумму 6 элементов массива:

const a = array [1..6] of

integer = (5,-1,7,13,-8,21)

var i ,s: integer;

begin

s:=0;

for i:= 1 do 6 do

s:= s+a[i];

writeln ( s )

end.


Сделайте вывод по работе.




























Практическая работа № 6-7.

Тема: двумерные массивы.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

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


1 вариант.

1. Нахождения суммы элементов двумерного массива, меньших 10.

2. Нахождения числа элементов двумерного массива, больших 0,5.

3. Замены элементов двумерного массива их квадратами.

4. Нахождения произведения и количества элементов второй строки двумерного массива больших 8 и замены остальных элементов 1.

5. Нахождения суммы элементов двумерного массива hello_html_m7ceebba.gif2,5 и замены остальных элементов их квадратами. Элементы массива – случайные натуральные числа hello_html_m7ceebba.gif100.


2 вариант.

1. Нахождения суммы элементов двумерного массива, больших 4.

2. Нахождения числа элементов двумерного массива, не превосходящих 4.

3. Замены элементов двумерного массива их кубами.

4. Нахождения произведения и количества элементов первого столбца двумерного массива меньших 3 и замены остальных элементов 3.

5. Нахождения суммы элементов двумерного массива hello_html_m78774d40.gif8,3 и замены остальных элементов нулями. Элементы массива – случайные натуральные числа hello_html_m7ceebba.gif100.


Теоретические сведения к практической работе:

Под массивом понимается упорядоченная совокупность (последовательность, набор) конечного числа данных одного типа, объединенных под общим именем. Имена массивов образуются так же, как и имена простых переменных. Двумерные массивы можно описать следующим образом:

var имя массива ; array [размер] of тип, где в "размере" указывается на первом месте количество строк, а на втором месте – количество столбцов;

Например: var f: array[1..n,1..m] of real; {- массив, состоящий из n строк и m столбцов и в нем -n*m элементов вещественного типа}.

a:array [1..10,1..5] of integer {-массив, состоящий из 10 строк и 5 столбцов и в нем -10*5 элементов целого типа}.

а[i,j] - значение элемента массива a, первым указывается i - порядковый номер строки, вторым j - порядковый номер столбца, на пересечении которых находится данный элемент.

Вводить, выводить данные в массив и из массива, обрабатывать данные удобно с помощью циклов, например: for i:=1 to n do begin

for j:=1 to m do

write(а[i,j],’ ‘);

writeln;

end;

end;

Пример: Выведите на экран элементы двумерного массива.

Program Р;

Uses crt;

Var MA:array[1..20,1..20]of integer;

Sum:array[1..20] of longint;

k,i,j,imin:integer;

min:longint;

BEGIN

clrscr;

write('Введите число строк и столбцов: ');

readln(k);

Randomize;

Writeln('Введите элементы: ');

for i:=1 to k do

for j:=1 to k do

begin

write('MA[',i,',',j,']=');

Readln(MA[i,j]);

writeln;

end;

Пример: Составьте программу нахождения суммы элементов массива:

а)const a: array[1..2,1..10] of integer= ((5,7,0,3,-5,4,-5,7,0,1), (2,3,6,0,1,1,1,2,9,7));

var i, j, S, : integer;

begin

S:= 0;

for i:= 1 to 2 do

for j:= 1 to 10 do

S:= S + a [i,j] ;

Writeln ( S )

End.

б) var i, j, S, : integer;

a: array[1..2,1..10] of integer;

begin

for i:= 1 to 2 do

for j:= 1 to 10 do

read(a[i,j]);

S:= 0;

for i:= 1 to 2 do

for j:= 1 to 10 do

S:= S + a [i,j] ;


Writeln ( S )

End.


Сделайте вывод по работе.














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

Тема: подпрограммы.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

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

1 вариант.

1. Вычислить значение функции у=hello_html_35bc078e.gif, если A=20,B=60,C=45,D=30.

(Числовые значения углов даны в градусах).


2. Вычислить по формуле С=n!m!.

3. Вычислить значение выражения hello_html_m6bad376a.gif.

2 вариант.

1. Вычислить значение функции у= hello_html_m46ba2a9b.gif, если A=20,B=60,C=45,D=30.

(Числовые значения углов даны в градусах).

2. Вычислить по формуле С=hello_html_m56323b08.gif.

3. Вычислить значение выражения hello_html_9b74ae4.gif.

Теоретические сведения к практической работе:

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

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

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

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

Структура процедуры имеет вид :


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

(* раздел описаний *)

begin

(* раздел операторов *)

end;

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

Функции

Заголовок функции состоит из слова Function, за которым указывается имя функции, затем в круглых скобках записывается список формальных параметров, далее ставится двоеточие и указывается тип результата функции.

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

Общий вид описания функции:

Function Имя[(список формальных параметров)]:Тип результата;

описательная часть

Begin

тело функции, в которой обязательно должно быть

присваивание Имя_функции:=значение;

End;

Формальные параметры - параметры, определенные в заголовке процедуры.

Фактические параметры - выражения, задающие конкретные значения при обращении к процедуре.

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

Фактические параметры - это параметры, которые передаются процедуре при ее вызове.

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

hello_html_mfecd595.gif











program primer1;

var

a,b,c,d,z,z1,z2,x,y:real;

procedure w(x,y:real; var w:real);

begin

w:=cos(x)+sin(y)+3;

end;

begin

writeln(‘задайте a,b,c,d’);

readln(a,b,c,d);

x:=a*3.14/180;

y:=b*3.14/180;

w(x,y,z1);

x:=c*3.14/180;

y:=d*3.14/180;

w(x,y,z2);

z2:=sqrt(z2);

z:=z1/z2;

write(‘z=‘,z:4:2);

readln;

end.


Тестовый пример

A=20

B=60

C=45

D=30

Z=2.19


Пhello_html_754d8eb4.gifример 2:

Вычислить С=


N!=1*2*3*…*N

1!=1

2!=1*2=2

3!=1*2*3=6

4!=1*2*3*4=24

hello_html_m7e34e95e.gif


program primer2;

var

z,z1,z2,c:real;

k,m,n:integer;

function factorial(k:integer):integer;

var i,p:integer;

begin

p:=1;

for i:=1 to k do

p:=p*i;

factorial:=p;

end;

begin

writeln(‘задайте m’);

readln(m);

writeln(‘задайте n’);

readln(n);

z:=factorial(n);

z1:=factorial(m);

z2:=factorial(n-m);

c:=z/(z1*z2);

write(‘c=‘,c:4:2);

readln;

end.


Тестовый пример

m=2

n=5

c=10

Пример3: Вычислить значение выражения:

hello_html_m69ff920c.jpg

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


hello_html_3c38c4d2.jpg

program primer3;

var x,у:real;

function lg(x:real) :real; {Функция вычисления десятичного логарифма}

begin

lg:=ln(x)/ln(10);

end;

function tg (x: real) : real; {Функция вычисления тангенса}

begin

tg:=sin(x)/cos(x);

end;

BEGIN

writeln('Введите х');

readln(x);

y:=lg(sqr(tg(x))+sqr(cos(x)))/sqr(tg(x+sqr(lg(x)))+sqr(sin(x)));

writeln('y=',y:10:4);

END.

Тестовый пример:

Введите х

3.4
у=0.0045



Сделайте вывод по работе.













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

Тема: создание простейших графических изображений с помощью графических средств языка.

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

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

1 вариант.

1. Составить программу вывода на графический экран своего имени.

2. Составьте программу вывода на графический экран снеговика.


2 вариант.

1. Составить программу вывода на графический экран своего имени.

2. Составьте программу вывода на графический экран корабля.


Теоретические сведения к практической работе:

Графика

В графическом режиме экран рассматривается как последовательность точек (пикселей), из которых строится изображение.

Количество пикселей в строке и количество строк на экране характеризуют его разрешающую способность.

640х480 - в строке 640 пикселей , а строк всего 480.

Пиксель определяют: координаты X, Y и цвет. Х

hello_html_343addde.gifhello_html_7a7c3ed0.gif (0,0) (640,0)




(0,480) (640,480)

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

Драйвер находится в файле с расширением .TPU

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

USES GRAPH;

С момента подключения модуля GRAPH программисту доступны все находящиеся в ней подпрограммы.

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

Формат процедуры :

InitGraph( gd,gm,’’);

В программе нужно описать переменные gd,gm:

var

gd,gm : integer;

В разделе операторов, перед тем как написать первый графический оператор, следует выполнить:

gd:=vga;

gm:=vgahi ;

InitGraph( gd,gm,’’);

if Graphresult=grok then


Установка цвета и стиля заполнения

SetColor(N); - установка цвета графического изображения.

SetLineStyle(Ln,P,T); - установка способа закраски.

Ln- стиль линий

0

сплошная

1

пунктирная

2

штрихпунктирная

3

штриховая

Р- шаблон (0-для всех линий), Т- толщина линий

1

нормальная

3

толстая

Таблица цветов

Константа

Цвет

Имя

Значение

Black

0

Черный

Blue

1

Синий

Green

2

Зеленый

Cyan

3

Бирюзовый

Red

4

красный

Magenta

5

малиновый

Brown

6

коричневый

LightGray

7

светло-серый

DarkGray

8

темно-серый

LightBlue

9

ярко-голубой

LightGreen

10

ярко-зеленый

LightCyan

11

ярко-бирюзовый

LightRed

12

ярко-красный

LightMagenta

13

ярко-малиновый

Yellow

14

желтый

White

15

белый


Рисование геометрических фигур:

1. Вывод отрезка

Line(x1,y1,x2,y2);

(x1,y1) - координаты начала отрезка

(x2,y2) - координаты конца отрезка

!!! Обратите внимание на то, что в процедуре не задается цвет. В этом и аналогичных случаях цвет определяется процедурой SetColor(N).

2. Построение прямоугольника

Rectangle(x1,y1,x2,y2);

Точки с координатами (x1,y1) (x2,y2) должны быть противоположными вершинами прямоугольника.

3. Построение дуг, окружностей, эллипсов.

Circle(x,y,<радиус> ); - окружность указанного радиуса

Ellipse(x,y, <нач_угол>,<кон_угол>,xR,yR) - построение эллиптических дуг.

X,Y - координаты центра,

xR, yR - длина горизонтальной и вертикальной полуосей в пикселях.

Угол отсчитывается против часовой стрелки и указывается в градусах. Дуга эллипса вычерчивается от заданного начального угла до конечного угла. Если значение начального угла 0°, а конечного 360° - будет построен полный эллипс.

Arc(x,y, <нач_угол>,<кон_угол>,r);





hello_html_m7fce22a9.gifhello_html_34dd949c.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gifhello_html_m7eaa7d36.gif

10 20 30 40 50 60 70 80 90

x


hello_html_m27cc25a5.gifhello_html_5951fc3b.gifhello_html_5951fc3b.gifhello_html_5951fc3b.gifhello_html_5951fc3b.gifhello_html_5951fc3b.gif


10




20



30



40




50



Program primer;

USES GRAPH;

var

gd,gm : integer;

begin

gd:=vga; графический адаптер

gm:=vgahi ; графический режим 640х480

InitGraph( gd,gm,’’); включение графического режима

if Graphresult=grok then если режим включен успешно

begin

setcolor(5);

SetLineStyle(2,0,3);

Line(10,50,10,10);

Line(10,10,20,20);

Line(20,20,30,10);

Line(30,10,30,50);

Line(40,10,40,50);

Line(40,50,60,10);

Line(60,10,60,50);

Rectangle(70,10,90,40);

Line(70,40,70,50);

End;

Readln;

End.

Сделайте вывод по работе.













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

Тема: разработка и программирование задач с обработкой текстовой информации.

Цель работы: овладеть практическими навыками работы с символьными переменными, практическими навыками обработки текста, приобретение дальнейших навыков по отладке и тестированию программ.

Оборудование: Компьютер с установленной операционной системой Windows, Free Pascal.

Задания:

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

1 вариант.

1. Из слова «путеводитель» составьте слова «дело», «пудель», «водитель».

2. Дан текст. Сосчитайте количество запятых в нем.

3.Дан массив символьных переменных разной длины. Выведите на экран те из них, которые оканчиваются на букву «я».


2 вариант.

1. Из слова «водозаборный» составьте слова «забор», «вода», «завод».

2. Дан текст. Сосчитайте количество букв «и» в нем.

3.Дан массив символьных переменных разной длины. Выведите на экран те из них, которые начинаются с буквы «к».

Теоретические сведения к практической работе:

Работа с символьными величинами.

Символьная величина- это цепочка символов, заключенная в апострофах, длина которой не более 255 символов. Объявление символьных переменных осуществляется в разделе объявления переменных с помощью служебного слова char или string.

Операции над строковыми переменными:

1. Сравнения: <, >, <>, >=, <=,=.

2. Cложения: +.

3. Функции обработки:

а) delete(a, poz, n)- удаление из строки а, начиная с позиции poz n символов.

а:=’оператор’, delete(a,2,2), рез.: оратор

б) insert(str1, str2, poz) – вставка строки str1 в строку str2, начиная с позиции poz.

str1=’ка’, str2=’тропинка’, insert(str1, str2, 6), рез: тропиканка

в) length(str)- длина строки ( количество символов).

str1=’оператор’, length(str), рез: 8

г) copу(str, poz, n)-из строки str, начиная с позиции poz, берутся n символов.

str=’стройка’, copi(str, 2, 6), рез: ‘тройка’

д) str(v,s) – заданное число v преобразует в строку s

е) val(s,v,c) – если строка s состоит из цифр, они преобразуются в некоторое числовое значение и передаются переменной v

1)

program s1;

const a=’классшкола’;

b=’абвгд№0123456789’;

var

c,d: string;

begin

c:=copу(a,6,5)+’ ‘+copу(b,6,1)+copу(b,14,1);

d:=copу(a,1,5)+’ ‘+copу(b,length(b),1)+copу(b,2,1);

write(c,d);

readln;

end.


2) Подсчитайте количество букв «а» в некотором слове.

program s2;

var

c,d: string;

i,n: integer;

begin

writeln(c);

readln(c);

n:=0;

for i:=1 to length(c) do

begin

d:= copу(c,i,1);

if d=’a’ then n:=n+1;

end;

writeln(n);

readln;

end.


3) Дан символьный массив переменной разной длины. Вывести на экран те из них, которые начинаются с буквы «а».

program s3;

var

a: array[1..5] of string;

i:integer;

begin

for i:=1 to 5 do

begin

writeln(‘задайте слово’);

readln(a[i]);

end;

for i:=1 to 5 do

begin

if copу(a[i],1,1)=’a’ then writeln(a[i]);

end;

readln;

end.


Сделайте вывод по работе.

Краткое описание документа:

Методические указания для выполнения практических работ разработаны для студентов, изучающих программирование. Для проверки практических навыков программирования разработаны 10 практических работ по темам «Работа в командном режиме», «Программирование алгоритмов линейной структуры», «Программирование алгоритмов разветвляющейся структуры», «Программирование алгоритмов циклической структуры», «Одномерные массивы», «Двумерные массивы», «Подпрограммы», «Создание простейших графических изображений с помощью графических средств языка», «Разработка и программирование задач с обработкой текстовойинформации».

Автор
Дата добавления 31.01.2015
Раздел Информатика
Подраздел Другие методич. материалы
Просмотров276
Номер материала 353973
Получить свидетельство о публикации

Выберите специальность, которую Вы хотите получить:

Обучение проходит дистанционно на сайте проекта "Инфоурок".
По итогам обучения слушателям выдаются печатные дипломы установленного образца.

ПЕРЕЙТИ В КАТАЛОГ КУРСОВ

Похожие материалы

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