Файл: Практическая работа 1. Образовательные информационные ресурсы.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.12.2023
Просмотров: 368
Скачиваний: 3
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Команда ветвления
Полное ветвление:
IF условие
THEN действия при выполнении условия
ELSE действия в противном случае;
Неполное ветвление:
IF условие
THEN действия при выполнении условия;
Условие может быть составным (состоящим из нескольких условий). Условия соединяются между собой логическими выражениями:
NOT – не OR – или AND – и
Примеры задач.
-
Даны 2 числа. Найти минимальное.
Program chisla;
Var a,b,min: real;
Begin
writeln(‘введите 2 числа’);
readln (a,b);
if a
then min:=a
else min:=b;
writeln(‘минимум=’,min:0:2);
End.
-
Найти максимум из трех целых чисел.
Program Max;
Var a,b,c,max :integer;
Begin
writeln (‘ введите три целых числа’);
readln (a,b,c);
if (a>b) and (a>c)
then max:=a;
if (b>a) and (b>c)
then max:=b;
if (c >b) and (c>a)
then max:=c;
writeln(‘максимум=’,max)
End.
-
Составьте программу, которая из трех чисел, введенных с клавиатуры, возводит в квадрат положительные, а отрицательные оставляет без изменения.
Program Zamena;
Var a,b,c: real;
Begin
Writeln( ‘введите три числа’);
Readln (a,b,c);
if (a>0)
then a:=sqr(a);
if (b>0)
then b:=sqr(b);
if (c>0)
then c:=sqr(c);
writeln(‘a=’,a:0:2, ‘ b=’,b:0:2, ‘ c=’,c:0:2);
End.
Задания.
Студенты решают задачи на компьютерах по вариантам с помощью среды программирования PascalABC.
Карточка №1
-
Даны 3 числа. Возвести в квадрат те из них, значения которых неотрицательны, и в четвертую степень – отрицательные. -
Подсчитать количество отрицательных чисел среди чисел a, b, c. -
Для вещественных x,y,z вычислить max(x+y+z,xyz). -
Вычислить значение функции . -
Вычислить значение функции .
Карточка №2
-
Даны действительные числа x и y, не равные друг другу. Меньшее из этих двух чисел заменить половиной их суммы, а большее – их удвоенным произведением. -
Подсчитать количество чисел больших 4 среди чисел a, b, c. -
Для вещественных x,y,z вычислить min(x+y+z/2,x+yz). -
Вычислить значение функции . -
Вычислить значение функции .
Карточка №3
-
Даны целые числа m и n. Если числа не равны, то заменить эти числа их произведением, а если равны, то заменить числа нулями. -
Подсчитать количество положительных чисел среди чисел a, b, c. -
Написать программу нахождения суммы большего и меньшего из 3-х чисел. -
Вычислить значение функции . -
Вычислить значение функции .
Практическая работа №5.
Решение циклических задач средствами языка Паскаль.
Цель работы: закрепление навыков решения циклических задач на языке Паскаль.
Оборудование: персональный компьютер, программа PascalABC, методические указания по работе (в электронном виде находятся в папке «Методические указания» на рабочем столе компьютера), карты-задания
Содержание и последовательность выполнения практической работы:
-
Инструктаж по технике безопасности -
Выполнение практического задания
Теория.
Цикл с предусловием.
While условие do
begin
действия
end;
Цикл повторяется до тех пор, пока выполняется условие.
Цикл с параметром.
FOR счетчик: =начальное значение TO конечное значение DO
begin
действия
end;
Начальное значение счетчика должно быть меньше конечного. При каждом выполнении цикла значение счетчика увеличивается на единицу.
Примеры задач.
-
Вычислить значение функции для всех x от 0 до π с шагом π/6. Вывести все полученные значения.
Program funct;
Var x,y: real;
Begin
x:=0;
while x<=6.28 do
begin
y:=sin(x);
writeln(‘x=’,x:0:2, ‘ y=’,y:0:2);
x:=x+3.14/6
end;
End.
-
Вычислить
Program summa;
Var i: integer;
x,s:real;
Begin
writeln(‘введите x’);
readln (x);
s:=0;
for i:=1 to 15 do
begin
s:=s+x+sqr(i);
end;
writeln(‘s=’,s:0:2);
End.
-
Вычислить значения функции для x от -2 до 3 с шагом 0,4.
Program funct;
Var x,y: real;
Begin
x:=-2;
while x<=3 do
begin
if x>0
then y:=2*sqr(x)-3
else y:=abs(x-5);
writeln(‘x=’,x:0:2, ‘ y=’,y:0:2);
x:=x+0.4
end;
End.
-
Дано натуральное число n. Вычислить .
Program proiz;
Var i,n: integer;
p:real;
Begin
writeln(‘введите n’);
readln (n);
p:=1;
for i:=1 to n do
begin
p:=p*(i-2);
end;
writeln(‘p=’,p:0:2);
End.
Задания.
Студенты решают задачи на компьютерах по вариантам с помощью среды программирования PascalABC.
Карточка №1
-
Вычислить значения функции для x от 2 до 4 с шагом 0,4. -
Дано натуральное число n. Вычислить . -
Дано натуральное число n и действительное число x. Вычислить . -
Дано натуральные числа n и m. Вычислить значение суммы . -
Дано действительное число y. Увеличивать его в 3 раза до тех пор, пока оно не будет больше 40.
Карточка №2
-
Вычислить значения функции для x от 1 до 3 с шагом 0,5. -
Дано натуральное число n. Вычислить . -
Дано натуральное число n и действительное число x. Вычислить . -
Даны натуральные числа n и m. Вычислить значение суммы . -
Дано действительное число х. Уменьшать его на 5 до тех пор пока оно не будет меньше 0.
Карточка №3
-
Вычислить значения функции для x от 0 до 5 с шагом 0,5. -
Дано натуральное число n. Вычислить . -
Дано натуральное число n и действительное число x. Вычислить . -
Дано натуральные числа n и m. Вычислить значение произведения . -
Дано действительное число х. Увеличивать его на 3 до тех пор пока оно не будет больше 25.
Карточка №4
-
Вычислить значения функции для x от -2 до 2 с шагом 0,4. -
Дано натуральное число n. Вычислить . -
Дано натуральное число n и действительное число x. Вычислить . -
Даны натуральные числа n и m.Вычислить значение произведения . -
Дано действительное число y. Уменьшать его в 2 раза до тех пор, пока оно не будет меньше 10.
Практическая работа №6.
Решение задач с использованием одномерных массивов.
Цель работы: закрепление навыков решения задач с использованием одномерных массивов на языке Паскаль.
Оборудование: персональный компьютер, программа PascalABC, методические указания по работе (в электронном виде находятся в папке «Методические указания» на рабочем столе компьютера), карты-задания
Содержание и последовательность выполнения практической работы:
-
Инструктаж по технике безопасности -
Выполнение практического задания
Теория.
В повседневной и научной практике часто приходится встречаться с информацией, представленной в табличной форме. Вот, например, таблица, содержащая значения температуры, за определенный год.
Месяц | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
Температура | -21 | -18 | -7,5 | 5,6 | 10 | 18 | 22,2 | 24 | 17 | 5,4 | -7 | -18 |
Такую таблицу называют линейной. Она представляет собой последовательность упорядоченных чисел. Если требуется какая-то математическая обработка данных, то для их обозначения вводят индексную символику.
Например:
Т1 – температура января;
Т5 – температура мая;
В общем виде множество значений, содержащихся в таблице, можно обозначить так: { Ti }, I = 1,2,3, …,12.
Порядковые номера элементов называются индексами. Индексированные величины удобно использовать для записи их математической обработки: . По данной формуле можно подсчитать среднегодовую температуру.
В языке Паскаль для записи линейных таблиц используют структурированный тип данных, который называется одномерным массивом. Одномерный массив представляет собой совокупность пронумерованных однотипных значений, имеющих общее имя. Элементы массива обозначаются переменными с индексами. Индексы записывают в квадратных скобках после имени массива.
Например: T[1], T[5], T[I] и т.п.
Описание одномерных массивов:
Переменная типа одномерный массив описывается в разделе описания переменных в следующем виде:
var имя массива: array[1..n] of тип;
n – количество элементов массива.
Пример: var T: array [1..12] of real;
Обработка массивов в программах производится поэлементно. Обращаются к элементам массива, указывая индекс.
Ввод массива (чтение массива):
writeln(‘введите ’,n,‘ элементов массива’);
for i:=1 to 12 do
readln (t[i]);
Выводмассива:
writeln(‘массив’);
for i:=1 to 12 do
writeln (‘t[’,i,‘]=’, t[i]:0:2);
Примеры задач.
-
Известны данные о среднемесячной температуре за год. Требуется вычислить среднегодовую температуру, а также ежемесячные отклонения от этой величины.
Program Example;
Const n=12;
Var t, dt:array[1..n] of real;
ts:real;
i:integer;
Begin {ввод исходных данных}
writeln (‘введите температуру за ’,n,‘ месяцев’);
for i:=1 to n do
readln (t[i]);
{вычисление средней температуры}
ts:=0;
for i:=1 to n do
ts:=ts+t[i];
ts:=ts/n;
{вычисление таблицы отклонений от среднего}
for i:=1 to n do
dt[i]:=t[i]–ts;
{вывод результатов}
writeln (‘среднегодовая температура =’ , ts:0:2);
writeln (‘отклонения от среднегодовой температуры:’);
for i:=1 to n do
writeln (i,‘ – месяц: ’, dt[i]:0:2);
End.
-
Дан массив из 8 элементов целого типа. Найти сумму положительных элементов массива.
Program summa;
Const n=8;
Var a:array[1..n] of integer;
i,s:integer;
Begin {ввод исходных данных}
writeln (‘введите ’,i,‘ целых чисел’);
for i:=1 to n do
readln (a[i]);
s: =0;
for i:=1 to n do
if a[i]>0
then s:=s+a[i];
writeln (‘сумма положительных чисел =’,s);
End.
-
Задать массив B из 12 элементов по следующей формуле: . Вывести полученный массив. Найти максимальный элемент массива.
Program maximum;
Const n=12;
Var b:array[1.. n] of integer;
i,max:integer;
Begin {получение массива}
for i:=1 to n do
if i<6
then b[i]:=sqr(i)-15
else b[i]:=i+8;
{вывод массива}
writeln(‘массив’);
for i:=1 to n do
writeln (‘b[’,i,‘]=’, b[i]);
{поиск максимального элемента массива}
max:=b[1];
for i:=1 to n do
if b[i]>max
then max:=b[i];
writeln (‘максимум=’,max);
End.
-
Получить массив C из 10 элементов следующего вида: . Вывести полученный массив. Сосчитать количество отрицательных элементов массива.