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


Написание программы на Паскале с использованием операторов ввода-вывода данных, операторов присваивания и безусловного перехода



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

Методические указания:

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

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

Решение задачи.

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

Блок-схема алгоритма:

 

Рис. 1. Блок-схема алгоритма

 

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

program example1; 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: 6: 2); Writeln('нажмите Enter для завершения работы программы'); Readln; end.

Контрольные задания.

Задание 1. Даны x, y. Составить программу вычисления значения выражения:

1.1) 1.2) 1.3)
1.4) 1.5) 1.6)
1.7) 1.8) 1.9)
1.10) 1.11) 1.12)
1.13) 1.14) 1.15)

 

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

2.1) Дана длина ребра куба. Найти объем куба и площадь его боковой поверхности.

2.2) Известна длина окружности. Найти площадь круга, ограниченного этой окружностью.

2.3) Вычислить высоту треугольника, опущенную на сторону а, по известным значениям длин его сторон a, b, c.

2.4) По данным сторонам прямоугольника вычислить его периметр, площадь и длину диагонали.

2.5) Три сопротивления R1, R2, R3 соединены параллельно. Найти сопротивление соединения.

2.6) Определить расстояние, пройденное физическим телом за время t, если тело движется с постоянным ускорением а и имеет в начальный момент времени скорость V0.

2.7) Вычислить площадь треугольника по формуле Герона, если заданы его стороны.

2.8) Определить координаты вершины параболы y=ax2+bx+c.

2.9) Вычислите число А, если его часть В составляет С%.

2.10) Треугольник задан координатами своих вершин. Найти периметр треугольника.

2.11) Треугольник задан координатами своих вершин. Найти площадь треугольника.

2.12) Определить время падения камня на поверхность земли с высоты h.

2.13) Вычислить площадь треугольника по известным значениям длин его сторон a, b, c.

2.14) Дано действительное число а. Не пользуясь никакими другими операциями, кроме умножения, получить а7 за четыре операции.

2.15) Дано действительное число а. Не пользуясь никакими другими операциями, кроме умножения, получить а8 за три операции.


ЛАБОРАТОРНАЯ РАБОТА №3-4.

Написание программы на Паскале с использованием условных операторов и оператора выбора Case

Написание программы на Паскале с использованием

Операторов повтора (For, Repeat)

Цель работы: Научиться правильно использовать условный оператор IF и оператор выбораCASE; научиться составлять программы решения задач на разветвляющиеся алгоритмы.

Методические указания.

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

Перед выполнением работы необходимо ознакомится с правилами записи логических выражений, операций сравнения, операторов IF, CASE.

Условный оператор if … then … else

Условный оператор предназначен для выбора одного из двух действий, в зависимости от результата проверки условия. В языке Паскаль условный оператор состоит из ключевых слов if (читается как ЕСЛИ), then (ТО, ТОГДА), else (ИНАЧЕ), и имеет два вида – полную и сокращенную формы записи:

IF «условие» THEN «оператор ELSE «оператор2»;

где " условие" - выражение логического типа;

" оператор1" выполняется, если условие верно ( True ),

" оператор2" выполняется, если условие не верно ( False ).

Сокращенная форма записи условного оператора:

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

В этом случае, если условие истинно, то выполняется оператор стоящий за THEN, если же оно ложно, то управление передается оператору, следующему за оператором IF.

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

IF условие

THEN оператор1

ELSE оператор2;

или так:

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

ELSE оператор2;

Если после Then или Else необходимо выполнить несколько действий подряд в зависимости от условия, то используют составной оператор, который имеет вид:

BEGIN оператор1; оператор2; …END

В этом случае последовательность операторов, заключенных между служебными словами Begin и End (они называются операторными скобками) воспринимаются Паскалем как один оператор.

Условные операторы могут быть также " вложены" друг в друга, а также содержать сложные условия, составленные с помощью логических операций (not (НЕ), or (ИЛИ), and (И)). Отношения, связываемые логическими операциями, заключаются в скобки!!! Например, требуется определить, есть ли среди чисел А, В, С хотя бы одно отрицательное. Эту задачу решает следующий оператор ветвления:

if (A < 0)or(B < 0)or(C < 0)

then write ( 'YES ')

else write( 'NO ');

Пример 1. Определить большее из 3 чисел.

Блок-схема алгоритма:

Структура этого алгоритма - вложенные ветвления.

Program Primer1;

var А, В, С, D: real;

begin readln(А, В, С);

if A> B

then if A> C then D: =A else D: =B

else if B> C then D: =B else D: =C;

writeln(D)

End.

Обратите внимание на то, что перед else точка с запятой не ставится. Вся ветвящаяся часть структуры алгоритма заканчивается на точке с запятой после оператора D: =C.

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

Program Primer2;

var X, Y, С: real;

begin readln(X, Y);

if X> Y

then begin С: =X;

X: =Y;

Y: =C

end;

write(X, Y)

End.

Оператор выбора CASE

Оператор CASE (случай) служит для выбора одного из помеченных вариантов действия (операторов), в зависимости от значения " параметра". Оператор имеет вид:

Case " параметр" Of

" список помеченных операторов"

Else " оператор"

End;

Здесь " параметр" - выражение или переменная простого порядкового типа (целый, символьный, логический), называемая селектором или переключателем.

Из " списка помеченных операторов" выполняется оператор с меткой, включающей значение " параметра", иначе оператор после слова Else. Отметим, что переключатель и метки должны быть одного и того же скалярного типа (но не тип Real! ).

Конструкция Else " оператор" может отсутствовать.

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

Program Primer3;

Var

day: byte;

Begin

Write (‘Введите номер дня недели: ’); Readln (day);

case day of

1: writeln (‘Понедельник’);

2: writeln (‘Вторник’);

-----------------------------------------

6: writeln (‘Суббота’)

else writeln (‘Воскресение’)

End

End.

 

Пример 4. Найти наибольшее из двух действительных чисел, используя оператор выбора. (Здесь селектором является логическая величина).

Program Primer4;

Var Max, X, Y: Real;

Begin

Write (‘Введите два неравных числа: ’); Readln (X, Y);

case X> Y of

true: Max: =X;

false: Max: =Y

End;

WriteLn (‘Максимальное из двух есть’, Max: 12: 6)

End.

Пример 5. В старояпонском календаре был принят двенадцатилетний цикл. Годы внутри цикла носили названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, петуха, собаки и свиньи. Написать программу, которая по номеру года определяет его название в старояпонском календаре, если известно, что 1996 г. был годом крысы – началом очередного цикла.

Поскольку цикл является двенадцатилетним, поставим в соответствие название года остатку от деления номера этого года на 12. При этом учтем, что остаток от деления 1996 на 12 равен 4.

Program Primer5;

Var Year: integer;

Write (‘введите год’); readln (Year);

case Year mod 12 of

0: WriteLn (‘Год Обезьяны’);

1: WriteLn (‘Год Петуха’);

2: WriteLn (‘Год Собаки’);

3: WriteLn (‘Год Свиньи’);

4: WriteLn (‘Год Крысы’);

5: WriteLn (‘Год Коровы’);

6: WriteLn (‘Год Тигра’);

7: WriteLn (‘Год Зайца’);

8: WriteLn (‘Год Дракона’);

9: WriteLn (‘Год Змеи’);

10: WriteLn (‘Год Лошади’);

11: WriteLn (‘Год Овцы’)

End

End.

Контрольные задания.

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

1.1) = 1.2) =
1.3) = 1.4) =
1.5) = 1.6) =
1.7) = 1.8) =
1.9) = 1.10) =
1.11) = 1.12) =
1.13) = 1.14) =
1.15) =  

Задание 2

2.1) По номеру y (y> 0) некоторого года определить С – номер его столетия. Учесть, что, к примеру, началом ХХ столетия был 1901, а не 1900 год.

2.2) По номеру дня недели вывести на печать рабочий это день или выходной, считая выходными субботу и воскресенье.

2.3) По номеру месяца указать, к какому времени года он относится.

2.4) По номеру месяца вывести на печать количество дней в нем.

2.5) Единицы массы пронумерованы следующим образом: 1 – килограмм, 2 – миллиграмм, 3 – грамм, 4 – тонна. Дан номер единицы массы и масса тела M в этих единицах (M - вещественное число). Вывести массу данного тела в килограммах.

2.6) Написать программу, которая бы по введенному номеру времени года (1 – зима, 2 – весна, 3 – лето, 4 – осень) выдавала соответствующие этому времени года месяцы, количество дней в каждом из месяцев.

2.7) Пусть элементами прямоугольного равнобедренного треугольника являются: 1) катет а; 2) гипотенуза b; 3) высота h, опущенная из вершины прямого угла на гипотенузу; 4) площадь S. Составить программу, которая по заданному номеру и значению соответствующего элемента вычисляла бы значение всех остальных элементов треугольника.

2.8) Дано натуральное число N. Если оно делится на 4, вывести на экран ответ N = 4k (где k – соответствующее частное); если остаток от деления на 4 равен 1 – N = Ak + 1; если остаток от деления на 4 равен 2 – N = 4k + 2; если остаток от деления на 4 равен 3 – N = 4k + 3. Например, 12 = 4 • 3, 22 = 4 • 5 + 2.

2.9) Пусть элементами равностороннего треугольника являются: 1) сторона а; 2) площадь S; 3) высота h; 4) радиус вписанной окружности r; 5) радиус описанной окружности R. Составить программу, которая по заданному номеру и значению соответствующего элемента вычисляла бы значение всех остальных элементов треугольника.

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

2.11) Составить программу, которая для любого натурального числа печатает количество цифр в записи этого числа.

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

2.13) Для целого числа А от 1 до 99 напечатать фразу «Мне k лет», учитывая при этом, что при некоторых значениях k слово «лет» надо заменить на слово «год» или «года». Например, 11 лет, 22 года, 51 год.

2.14) Для каждой введенной цифры (0 – 9) вывести соответствующее ей название на английском языке (0 – zero, 1 – one, 2 – two,... ).


ЛАБОРАТОРНАЯ РАБОТА №5-6.

 


Поделиться:



Популярное:

  1. III. МЕТОДИЧЕСКОЕ СОПРОВОЖДЕНИЕ ПРОГРАММЫ ВОСПИТАНИЯ
  2. Автор программы доцент кафедры общей психологии Терещенко В.В.
  3. Анализ схемы с помощью программы EWB
  4. Антимонопольная политика проводится с использованием различных инструментов, но основными ее задачами являются снижение цен и увеличение объемов продаж на рынке.
  5. Вопрос 21.Сущность аграрного вопроса и программы политических партий.Столыпинские реформы и их итоги.Объективная необходимость индустриализации.
  6. Вопрос 41. Начало перехода к рыночой экономике.Кризисные явления в стране и поиск путей их преодоления.
  7. Временные ряды с использованием процесса скользящего среднего могут иметь место, когда уровни динамического ряда характеризуются случайной колеблемостью.
  8. Второй блок программы включает в себя 4 занятия общей продолжительностью 6 часов 30 минут.
  9. Гадание по девяти картам с использованием карты настроения
  10. Гадание по трем картам с использованием карты настроения
  11. Гадание по шести картам с использованием карты настроения
  12. Глава 6 Обзор программы создания бренда


Последнее изменение этой страницы: 2016-03-25; Просмотров: 1897; Нарушение авторского права страницы


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