Методические рекомендации к лабораторным работам по программированию на языке Паскаль

Раздел Информатика
Класс -
Тип Другие методич. материалы
Автор
Дата
Формат doc
Изображения Есть
For-Teacher.ru - все для учителя
Поделитесь с коллегами:



Государственное автономное образовательное учреждение

среднего профессионального образования

«Ленинградский социально-педагогический колледж»

Краснодарского края















Методические рекомендации

к лабораторным занятиям

по дисциплине Основы алгоритмизации и программирования







для специальности

080802 Прикладная информатика

(по отраслям)

























2011



ББК 32.81

М 54

Печатается по решению редакционно-издательского совета ГАОУ СПО «Ленин­градский социально-педагогический колледж» Краснодарского края, протокол № 7 от «25» ноября 2011 года

Автор-составитель: Казарин Николай Петрович - преподаватель информатики высшей квалификационной категории.

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

Ленинградская: информационно-аналитический и издательский центр ГАОУ СПО «Ленинградский социально-педагогический колледж» Краснодарского края, 2011, - 20с.


Рекомендации адресованы студентам, обучающимся по специальности 080802 Прикладная информатика (по отраслям), содержит материалы, которые способствуют обобщению, систематизации, углублению, закреплению полученных теоретических знаний по конкретным темам общепрофессиональной дисциплины; формированию умений применять полученные знания на практи­ке, реализации единства интеллектуальной и практической деятельности; развитию интеллектуальных умений у будущих специалистов: аналитических, проектировочных, конструктивных и др.; выработке при решении поставленных задач таких профессио­нально значимых качеств, как самостоятельность, ответственность, точ­ность, творческая инициатива.

Рассмотрено и одобрено на заседании предметно-цикловой комиссии, протокол № 1 от «26»августа 2011 г. Председатель ПЦК: Харченко М.В.

Рецензент: ____________, Харченко Марина Викторовна, преподаватель информатики высшей квалификационной категории ГАОУ СПО «Ленинградский социально-педагогический колледж» Краснодарского края.






ББК 32.81

 Казарин Н.П.., 2011

 Ленинградский социально-педагогический колледж Краснодарского края, 2011

Пояснительная записка

Основная цель, которая ставится студенту при выполнении задания - практическое освоение всех этапов разработки надежной программы для решения задачи на ПЭВМ, начиная от анализа условия задачи и заканчивая сдачей отчета по написанной программе. Каждое лабораторное занятие состоит из одной или 2-х задач..

Для повышения эффективности составления алгоритма относительно больших программ применяется структурный подход к программированию. Это способствует уменьшению затрат на создание и дальнейшее использование программ при эксплуатации.

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

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

Критериями оценки результатов лабораторного занятия работы являются:

  • уровень усвоения студентом учебного материала;

  • умения студента использовать теоретические знания при выполнении практических заданий;

  • оформление материала в соответствии с требованиями.

































РАБОЧИЙ ПЛАН ПО ОРГАНИЗАЦИИ

ЛАБОРАТОРНЫХ ЗАНЯТИЙ


Лабораторное занятие № 1(2 часа)

"Программирование линейных алгоритмов."

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

Общие сведения:

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



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

Данные: x1,y1,x2,y2-Integer

Результаты: d-Real

Метод решения:

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


Методические рекомендации к лабораторным работам по программированию на языке Паскаль








Уточним содержимое блока "Вычисление и печать расстояния"


Методические рекомендации к лабораторным работам по программированию на языке Паскаль


Дальнейшая детализация не требуется. Переводим блок-схему на язык Паскаль.

program Pr1;

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);

readln

end.

Доработаем программу, так чтобы она обладала некоторым интерфейсом.:

program Pr1;

var x1, x2, y1, y2: integer;

d:real;

begin

writeln('Эта программа вычисляет расстояние между двумя точками на плоскости');

writeln('Введите координаты двух точек:');

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);

writeln('нажмите Enter для завершения работы программы');

readln;

end.

Набирите программу и запустите её.

Введите данные: x1=5, y1=6, x2=8, y2=10

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

  1. Каковы назначение и возможности системы Borland Pascal?

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

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

  4. Из каких разделов состоит программа на языке Pascal?

  5. В какой последовательности должны быть записаны разделы программы на языке Pascal?

  6. Как записываются операторы вывода на экран в Pascal?


Задачи:

1. Дана сторона квадрата a. Найти его периметр P = 4·a.и площадь S = a2.

2. Даны стороны прямоугольника a и b. Найти его площадь S = a·b и периметр P = 2·(a + b).

3. Дана длина ребра куба a. Найти объем куба V = a3 и площадь его поверхности S = 6·a2.

4. Даны длины ребер a, b, c прямоугольного параллелепипеда. Найти его объем V = a·b·c и площадь поверхности S = 2·(a·b + b·c + a·c).

5. Найти длину окружности L и площадь круга S заданного радиуса R:

L = 2··R, S = ·R2.

Лабораторное занятие № 2 (2 часа)

«Программирование разветвляющихся алгоритмов».".

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

Выполнение работы:

  1. Запустить интегрированную среду Turbo Pascal.

  2. В окне редактора наберите программу и сохраните файл под именем LR2.PAS в своей паке (Фамилие. дата) на Рабочем столе


    Program LR2;



    Usec Crt;



    Var A, B: Integer;



    Begin



    Clrscr;



    Write ('Введите числа А, B - ');



    Readln (A, B);



    If A > B Then



    WriteLn ('Число А - больше')



    Else



    WriteLn ('Число B - больше');



    WriteLn ('Программа завершила свою работу');



    Readln;



    End.


    1



    2



    3



    4



    5



    6



    7



    8



    9



    10



    11



    12



    13



    14



  3. Начертите в тетради таблицу:


    Значение

    А

    Значение

    В

    Результат выполнения программы

    Результат выполнения программы с begin - end

    1

    23

    9



    2

    23

    34



    3

    23

    23



    1. Начертите в тетради блок-схему, которая соответствует приведенной программе.

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

    3. Результат выполнения программы (какие сообщения выдаются на экран монитора) запишите в четвертый столбец таблицы.

    4. Объясните в каждом случае, как работает условный оператор If.

  4. Поставьте «;» после оператора WriteLn ('Число А - больше') в строке 9. Выполните компилирование программы. Появилось сообщение об ошибки «Error 113: Error in statement». Почему это произошло? Исправьте ошибку.

  5. Внесите изменения в программу в строки 11 - 12, добавив составной оператор begin - end.


    begin WriteLn ('Число B - больше');

    WriteLn ('Программа завершила свою работу'); end;


    11

    12

    1. Начертите в тетради блок-схему, которая соответствует полученной программе.

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

    3. Результат выполнения программы (какие сообщения выдаются на экран монитора) запишите в пятый столбец таблицы.

    4. Объясните в каждом случае, как работает условный оператор If.

6. Запишите ответы на вопросы

Вопросы.

  1. Что такое составной оператор и для чего он используется?

  2. Изобразите полную схему разветвляющегося алгоритма. Укажите ее основные элементы.

  3. Запишите формат условного оператора.

  4. Чем отличаются полная и сокращенная форма условного оператора?


Лабораторное занятие № 3 (2 часа)


"Операторы цикла ".

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

Выполнение работы:

  1. Запустить интегрированную среду Turbo Pascal.


  1. В окне редактора наберите программу и сохраните файл под именем LR3.PAS в своей паке (Фамилие. дата) на Рабочем столе

Program zikl;

Uses Crt;

Var I, A, B : Integer;

Begin

ClrScr;

Write ('Введите начальное значение - ');

ReadLn (A);

Write ('Введите конечное значение - ');

ReadLn (B);

For I := A To B do

WriteLn ( 'Значение I = ' , I );

Readln;

End.


1

2

3

4

5

6

7

8

9

10

11

12

3. Выполните программу, введя различные исходные значения для переменных A, B, и запишите в тетрадь полученные результаты в виде таблицы:

п/п

Значения A

Значения B

Результат вывода на экран

1

2

5

2

2

2

3

4

3

4. Исправьте программу, заменив цикл FOR на цикл WHILE. В окне редактора наберите программу и сохраните файлы под именем LR31.PAS в своей паке (Фамилие. дата) на Рабочем столе


5. Выполните программу, введя различные исходные значения для переменных A, B, и запишите в тетрадь полученные результаты в виде таблицы:

п/п

Значения A

Значения B

Результат вывода на экран

цикл WHILE

Результат вывода на экран

цикл UNTIL

1

2

5

2

2

2

3

4

3



Вопросы для повторения


  1. Решение каких задач можно осуществлять, используя циклический алгоритм?

  2. Для чего используется оператор For?

  3. Чем отличается форма For - to от For - downto?

  4. Каков порядок выполнения оператора For?

  5. Какое значение (тип выражения) может принимать начальное и конечное значение переменной цикла?

  6. При каком условии оператор цикла не будет выполняться?

  7. Каков порядок выполнения оператора UNTIL?

  8. Каков порядок выполнения оператора WHILE?



Лабораторное занятие № 4 (2 ч.)

«Использование процедур в программировании».


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


Выполнения работы:

  1. Запустить интегрированную среду Turbo Pascal.

2. В окне редактора наберите программу, исполните её и сохраните файл под именем LR4.PAS в своей паке (Фамилие. дата) на Рабочем столе

program LR4;

uses crt;

var a,b,s:real;

procedure summa(x,y:real;var s:real);

begin

s:=x+y;

Writeln(x:3:1,'+',y:3:1,'=',s:3:1);

end;

begin

clrscr;

writeln('Введите два числа');

readln(a,b);

summa(a,b,s);

readln;

end.

3. Составте блок-схему алгоритма для данной программы.

4. Какая используется процедура в программе?

5. Измените программу так ,

(Вариант 1: чтобы она находила разность и частное двух чисел.)

(Вариант 2: чтобы она находила сумму произведение двух чисел.)

Каждое действие оформите в виде процедуры используя глобальные параметры x и y.

6. В окне редактора наберите программу, исполните её и сохраните файл под именем LR41.PAS в своей паке (Фамилие. дата) на Рабочем столе


Ответьте на вопросы:

1. Что такое подпрограмма?

2. Что такое стандартная процедура?

3. Что такое глобальные переменные?

4. Что такое локальные переменные?

5. Где в программе описывается процедура?



Лабораторное занятие № 5 (2 ч.)


«Работа с массивами»

1. Цель работы:

  1. Получение практических навыков при работе с массивами.

  2. Знакомство с алгоритмами задания массива.

Выполнение работы.

  1. Запустить интегрированную среду Turbo Pascal.

2. В окне редактора наберите программу, исполните её и сохраните файл под именем LR5.PAS в своей паке (Фамилие. дата) на Рабочем столе


program LR5;

Uses CRT;

var

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

i: byte;

begin

Clrscr;

for i:=1 to n do begin

a[i]:=random(21)-10;

Writeln('a[',i,']=',a[i];

end;

readln;

end.


3. Составьте блок-схему этой программы.

4. Какому отрезку принадлежат элементы этого массива?

5. Исполните данную программу и запишите результат в тетрадь.

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

А. Вариант -положительных элементов массива.

Б. Вариант -отрицательных элементов массива.

7. Начертите блок - схему данной программы.

8. Исполните данную программу и запишите результат в тетрадь.

9. Сохраните данную программу в файле LR51.PAS в своей паке (Фамилие. дата) на Рабочем


Лабораторное занятие № 6 (2 ч.)

«Строковые данные в программировании»

Цель работы:

Получение практических навыков работы со строками в программировании.

Выполнение работы.

  1. Запустить интегрированную среду Turbo Pascal.

2. В окне редактора наберите программу, исполните её и сохраните файл под именем LR6.PAS в своей паке (Фамилие. дата) на Рабочем столе


program LR6;

uses CRT;

Var s,s1:string;

i:integer;

begin

Clrscr;

Writeln('введите строку');

Readln(s);

s1:='';

for i:=1 to length(s) do

s1:=s[i]+s1;

Writeln('введенное слово ',s,' наоборот ',s1);

readln;

end.


3. Составьте блок-схему этой программы.

4. Исполните данную программу и запишите результат в тетрадь.

5. Какая задача решается данной программой?

6. Исправьте данную программу так , чтобы она давала ответ, является ли данное слово перевертышем (например: 'казак'='казак'; а 'сон'<>'нос').

7. Начертите блок - схему данной программы.

8. Исполните данную программу и запишите результат в тетрадь.

9. Сохраните данную программу в файле LR61.PAS в своей паке (Фамилие. дата) на Рабочем столе

10. Ответьте на вопросы:

  • Как описываются строковые переменные?

  • Какая максимальная длина строки допустима в Pascal?

  • Какие операции допустимы над строковыми данными?

Какие стандартные процедуры и функции для работы со строками вы знаете.


Лабораторное занятие № 7 (2 ч.)

«Использование записей в программировании.»

Цель работы:

  1. Получение навыков в организации ввода/вывода значений комбинированного типа данных.

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

Постановка задачи:

Пример: Из ведомости 3-х студентов с их оценками ( порядковый номер, Ф.И.О. и три оценки) определить количество отличников и средний бал каждого студента.

Program Spic;
Type wed = record
n : integer ;
fio : string[40] ;
bal : array [1..3] of integer
end;
Var spisok : wed ;
i, j, kol, s : integer; sr : real;
Begin
kol:=0;
With spisok do
For i:=1 to 3 do
begin
n:=i;
Write (' Vvedite FIO # ', i ,' ');
Readln (fio);
s:=0;
For j:= 1 to 3 do
begin
write ( 'Vvedite ocenky: ' );
readln ( bal [j] );
s := s+ bal [j];
end;
if s=15 then kol:=kol+1;
sr := s/3; writeln ( fio, ', Sredniy bal = ', sr:4:1); end;
writeln ( ' Kolichestvo otlichnikov = ', kol );
readln;
end.

1.Запустить программу и выполните её.

2. Запишите программу и результат её работы в тетрадь.

3. Сохраните данную программу в файле LR7.PAS в своей паке (Фамилие. дата) на Рабочем столе .

4. Запишите имя записи,используемой в программе, перечислите поля записи и укажите их тип.

Лабораторная работа 8

Работа с файлами

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

Общие сведения

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

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

Пример

Пример1. . Открыть файл f86.txt и сохранить в нем N целых чисел в пределах от 65 до 90:

А) считайте информацию из данного файла;

Б) найдите сумму элементов, находящихся в файле.


Program fi186;

Uses CRT;

var f:file of integer;

n,m,i,s:integer;

a:string;

begin

clrscr; s:=0;

a:='e:\work\f86';

assign(f,a);rewrite(f);

randomize;

write('введите количество чисел n=');readln(n);

writeln('числа записанные в файл');

for i:=1 to n do begin


m:=trunc(random(25))+65;

write(f,m);


write(m,'; ');

end;

close(f);

writeln;

assign(f,a);reset(f);

Writeln('числа считанные из файла');

while not eof(f) do begin

read(f,n);

write(n,'; ');

s:=s+n

end;

close(f);

writeln;

writeln('сумма чисел, считанных из файла s=',s);

readln;

end.

1.Запустить программу и выполните её.

2. Запишите программу и результат её работы в тетрадь.

3. Сохраните данную программу в файле LR8.PAS в своей паке (Фамилие. дата) на Рабочем столе .

4. Запишите имя внутреннего и ванешнего файлов, используемых программой.

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

  1. Что такое файл? Какие существуют виды файлов?

  2. Какими стандартными процедурами и функциями располагает Borland Pascal для работы с файлами?

  3. Каково должно быть содержание программы по созданию файла и его корректировки (замена элементов, добавление элементов, удаление элементов)?

  4. Какие бывают файлы?











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

по дисциплине Основы алгоритмизации и программирования


Ответственный редактор и корректор Казарин Н.П.

Компьютерный набор Казарин Н.П.

Верстка и дизайн Дорохова Н.Г.

Методические рекомендации к лабораторным работам по программированию на языке Паскаль


Сдано в набор 7.11.2011г. Подписано в печать 9.11.2011г.

Формат 60x84/16 Усл. печ. л. 2,75 Тираж 15 экз.

Заказ № 205 Бумага тип. №1

Методические рекомендации к лабораторным работам по программированию на языке Паскаль

Информационно-аналитический и издательский центр Ленинградского социально-педагогического колледжа Краснодарского края. 353740, Краснодарский край, станица Ленинградская, ул. Красная, 152. Тел.(86145) 7-01-40, 7-37-21. Факс: (86145) 7-31-41;

е-mail: [email protected]; lpk31.ru.

Методические рекомендации к лабораторным работам по программированию на языке Паскаль

Отпечатано в типографии ГАОУ СПО «Ленинградский социально-педагогический колледж» Краснодарского края





© 2010-2022