Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Дьяченко В.Б. ЛП_И

.pdf
Скачиваний:
15
Добавлен:
13.03.2016
Размер:
913.62 Кб
Скачать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ВАРИАНТЫ ЗАДАНИЙ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если H2

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w 2gH ,

 

 

 

 

приизменении wот wн до wксшагом w

1. Q

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

2gZ

,

 

 

если H

2

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,5

n c,

 

 

 

если n 1

 

 

 

 

 

 

 

 

2. y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

при изменении c от cн до cк c шагом ∆c

 

 

n c,

 

 

если n 1

 

 

 

 

1,3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100r ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если P 50

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

при изменении r от rн до rк c шагом ∆r

3. L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100

 

 

 

 

 

,

 

 

 

 

 

если P 50

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100r P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L2

 

 

 

Q2

 

 

если a

L

 

 

P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

6

 

 

 

 

 

 

 

 

 

 

 

2

 

приизменении Рот Рн до Рксшагом Р

4. M

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если a

 

L

 

 

P

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

763

 

 

 

,

 

 

 

 

 

 

 

 

 

 

HL2

 

 

 

 

 

 

 

если H 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 ,

 

 

 

 

 

 

 

 

 

 

 

 

5. g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

приизменении Lот Lн до Lксшагом L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

64 3 HL2

 

 

если H 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S

,

 

 

 

 

 

 

 

 

 

 

если n 30

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6. Cv

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

приизменении S от Sн до Sксшагом S

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S

 

 

 

,

 

 

 

 

 

если n 30

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P L,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если P P

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

2

 

 

 

 

 

 

 

 

 

 

 

P

P L

 

 

 

 

 

 

 

 

 

 

приизменении Lот Lн до Lксшагом L

7. F

P L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

2

 

,

 

 

если P P

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

1

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,1V

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если H2

0

 

2g

 

Z

 

 

o

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2g

 

 

 

 

 

 

 

 

 

 

 

8. V

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

приизмененииV 0 отV 0н доV 0к сшагом V 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2g

 

H

 

 

1,1V 2

,

 

если H

 

0

 

 

 

 

 

 

 

o

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

21

sin ,

 

 

 

 

 

 

если 90

 

 

 

180

 

 

 

 

 

 

 

 

 

 

 

приизменении от н до ксшагом

9. A

 

 

 

 

 

 

 

 

 

 

 

 

 

0,7 0,35

,

 

 

если 90

 

 

 

 

 

 

 

 

90

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

qL2

,

 

 

 

 

 

 

 

 

 

 

 

если a b

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

 

 

приизменении от н до ксшагом

10. M q

L x q

 

 

 

 

3

 

 

 

 

 

 

 

 

L x

, если a b

6

L a

6b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

H12 h12

 

 

 

 

если j 1

K

 

 

 

 

 

 

 

 

 

 

,

2 Lp m2h1

 

 

 

 

 

 

 

приизменении K от Kн до Kк сшагом K

11. q

 

 

H12 H22

 

 

 

 

 

 

 

K

,

 

 

 

если j 2

 

2 Lp lдр

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 2 K

,

 

 

 

 

 

 

если n 1

 

 

 

2K2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

приизменении K от Kн до Kк сшагом K

12. L

1 2 K sin

 

 

 

,

если n 2

 

 

 

 

2K2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13.J

H1 H2 ,n lпл

tg H1,

1 n г1 n г

если j 0 приизменении H1 от H1н до H1к сшагом H1

если j 0

K, если b 18

о , если b 18 приизмененииn от nн доnк сшагом n

bh,

 

 

 

 

 

 

 

если j 1

 

 

 

 

 

 

 

 

 

приизмененииb от bн доbк сшагом b

15.

2

 

 

 

 

 

 

 

d

b

 

 

 

если j 2

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 2gZo

,

если n 1

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

приизменении Z0 от Z0н до Z0к сшагом Z0

16. Q

 

 

 

 

 

 

 

 

2gZ

o

,

 

если n 2

 

 

 

 

 

 

 

 

 

 

22

ЛАБОРАТОРНАЯ РАБОТА № 6

ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ

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

З а д а н и е к р а б о т е

1.Разработать последовательность решения в соответствии с заданием.

2.Составить блок-схему алгоритма решения задачи и написать программу на алгоритмическом языке ПАСКАЛЬ.

3.Набрать программу в среде Pascal АВС.

4.Выполнить программу на ПК.

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

6.Записать результат работы программы.

Пример выполнения работы

1.Алгоритм решения отображаем на блок-схеме.

2.Составляем программу на языке ПАСКАЛЬ.

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

4.Набираем программу, проверяем и при наличии ошибок исправляем, используя порядок работы в Pascal АВС.

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

6.Записываем результаты работы программы.

Задание

В одномерном массиве В(N) определить произведение положительных элементов, изменить массив, заменяя отрицательные элементы на найденное произведение.

Входные данные:

В – имя одномерного массива; N – размерность массива;

I – порядковый номер элемента массива;

Выходные данные:

Р – произведение положительных элементов (B [I] > 0);

B – изменённый массив, полученный заменой элементов (B [I]<0) на найденное произведение положительных элементов.

НАЧАЛО

Ввод

N

I=1

Ввод

B [I]

I= I+1

да

I<=N

нет

P=1

1

23

Блок-схема

нет

1

I=1

B[I]>0

да

P=P*B[I]

I= I+1

да

I<=N

нет

2

24

Блок-схема (продолжение)

2

Вывод

P

I=1

нет B[I]<0

да

B[I]=P

Вывод

B[I]

I= I+1

I<=N да

нет

КОНЕЦ

25

Программа program z6; VAR

B: array [ 1..20] of real ; I, N : integer ;

P : real;

BEGIN

writeln (‘Ввод N’); readln (N);

writeln (‘Ввод элементов массива B’);

FOR I: =1 то N do

read ( B[I]);

 

 

P:=1;

 

 

FOR I: =1 то N do

if B[I] > 0 then

P := P * B [ I ] ;

 

 

writeln (‘Произведение положительных элементов массива В:’,P:8:2);

writeln (‘Изменённый массив B: ’);

FOR I: =1 то N do

 

Begin

 

 

if B[I] < 0 then

B[ I ] := P ;

write (B[ I ] : 10 : 2); End;

END.

Тестовый вариант

Исходные данные:

размерность массива: N =7; элементы одномерного массива В:

3, -2, -1, 4, 10, -5, -8.

Вычисляем произведение положительных элементов (B [I] > 0): Р = 120, изменяем массив B [I], заменой элементов (B [I] < 0) на произведение:

3, 120, 120, 4, 10, 120, 120

Результат работы программы

Произведение положительных элементов массива В: 120.00 Изменённый массив B:

3.00 120.00 120.00 4.00 10.00 120.00 120.00

26

ВАРИАНТЫ ЗАДАНИЙ

В о д н о м е р н о м м а с с и в е

определить характеристику:

1)отношение наибольшего элемента к наименьшему элементу;

2)среднее значение положительных элементов;

3)количество положительных элементов.

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

Взаданиях 4-7 требуется определить:

4)количество отрицательных элементов;

5)среднее значение отрицательных элементов;

6)наименьшее значение среди элементов массива;

7)наибольшее значение среди элементов массива.

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

Взаданиях 8-11 требуется определить:

8)количество элементов меньше среднего;

9)количество элементов больше среднего;

10)минимальное значение;

11)максимальное значение.

Образовать новый массив, заменой отрицательных элементов на найденную характеристику.

Взаданиях 12-17 требуется определить:

12)среднее отрицательных значений;

13)среднее положительных значений;

14)наибольшее из отрицательных значений;

15)наименьшее из положительных значений;

16)количество значений меньше среднего;

17)количество положительных элементов.

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

27

ЛАБОРАТОРНАЯ РАБОТА № 7

ОБРАБОТКА ДВУМЕРНЫХ МАССИВОВ

(Особенности ввода)

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

З а д а н и е к р а б о т е

1.Разработать последовательность решения в соответствии с заданием.

2.Составить блок-схему алгоритма решения задачи и написать программу на алгоритмическом языке ПАСКАЛЬ.

3.Набрать программу в среде Pascal АВС.

4.Выполнить программу на ПК.

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

6.Записать результат работы программы.

Пример выполнения работы

1.Алгоритм решения отображаем на блок-схеме.

2.Составляем программу на языке ПАСКАЛЬ.

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

4.Набираем программу, проверяем и при наличии ошибок исправляем, используя порядок работы в Pascal АВС.

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

6.Записываем результаты работы программы.

Задание

В двумерном массиве D(m,n) определить количество отрицательных элементов.

Входные данные:

D – имя двумерного массива; m– число строк;

n – число столбцов;

i– порядковый номер элемента в строке;

j– порядковый номер элемента в столбце.

Выходные данные:

k– количество отрицательных элементов (D[i] < 0).

28

Программа на языке Паскаль

program z7; var

D: array [1..10,1..15] of real; m,n,I,J: integer;

k: integer; begin

writeln (‘введи m,n;’); read (m,n);

k:=0;

writeln (‘Введи массив D’); for I:=1 to m do

for J:=1 to n do begin

read (D[I,J]);

if D[I,J]<0 then k:=k+1; end;

writeln (‘k=’, k:3); end.

Блок-схема

НАЧАЛО

Ввод

m,n

k=0

I=1

1

1

J=1

Ввод

D[I,J]]

нет

D[I,J]<0

да

k= k+1

J= J+1

да

J<=n

нет

I= I+1

да

I<=m

нет

Вывод k

КОНЕЦ

29

Тестовый вариант

Исходные данные:

Размеры массива (m,n) 3, 4

Элементы двумерного массива (матрица):

4

-1

-5

2

3

7

6

1

9

3

8

-2

Вычисляем: k – количество отрицательных элементов: k = 3.

Результат работы программы k = 3

Правила ввода

Приведенные ниже правила ввода необходимы при выполнении лабораторных работ.

1. Перед вводом массива вводятся его размеры (m,n):

m – число строк, n – число столбцов (не более 4 на 4). Пример. Необходимо ввести: m = 3; n = 4. Вводим с клавиатуры:

3 4 Enter

(Здесь нажали клавиши: «3», «пробел», «4», «Enter»)

2. Ввод элементов двумерного массива выполняется в виде матрицы, числа вводят через пробел, в конце строки нажимают клавишу Enter .

Пример.

4

-1-5 2

Enter

3

76

1

Enter

9

38

-2 Enter