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

comp2009

.pdf
Скачиваний:
43
Добавлен:
07.06.2015
Размер:
14.99 Mб
Скачать

4. Задания к практикуму по программированию "

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

22.В технической службе аэропорта имеется справочник, содержащий записи следующей структуры: тип самолета, год выпуска, расход горючего на 1000 км. Для определения потребности в горючем техническая служба запрашивает расписание полетов. Каждая запись расписания содержит следующую информацию: номер рейса, пункт назначения, дальность полета. Вывести суммарное количество горючего, необходимое для обеспечения полетов на следующие сутки.

23.Поля шахматной доски характеризуются записью

Type Pole=record

Ver:(a,b,c,d,e,f,g,h); {вертикальные координаты}

Hor:1..8; {горизонтальные координаты} end;

Вывести шахматную доску, пометив крестиками все поля, которые «бьет» ферзь, стоящий на поле с координатами Ver$$$$$ и Hor$$$$$, и ноликами — остальные поля.

24. Поля шахматной доски характеризуются записью (см. задание 23).

Var Figura:Pole;

Вывести сообщение, может ли конь за один ход перейти с поля Figurai

на поле Figuraj.

 

Type

 

Karta=record

 

m: (piki,trefi,bubni,chervi);

{масть}

d:(shest,sem,vosem,devjat,desjat,valet,dama,korol,tuz); {достоинство} end;

Var k1,k2:Karta;

Вывести сообщение, «бьет» ли карта k1 карту k2, с учетом того что масть mi является козырной.

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

221

" Компьютерный практикум по информатике и программированию

бодно, читаю и перевожу со словарем), владение компьютером (да/нет), стаж работы, наличие рекомендаций. Вывести список претендентов в соответствии с требованиями руководства фирмы.

26.При постановке на учет в ГАИ автолюбители указывают следующие данные: марка автомобиля, год выпуска, номер двигателя, номер кузова, цвет, номерной знак, Ф.И.О и адрес владельца. Вывести список автомобилей, проходящих техосмотр в текущем году, сгруппированных по маркам автомобилей. Учесть, что если текущий год четный, техосмотр проходят автомобили с четными номерами двигателей, иначе — с нечетными номерами.

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

28.Список группы студентов содержит следующую информацию: Ф.И.О., рост и вес. Вывести Ф.И.О. студентов, рост и вес которых чаще всего встречаются в списке.

29.Список группы студентов содержит следующую информацию: Ф.И.О., рост и вес. Вывести Ф.И.О. студентов, рост и вес которых являются в списке уникальными.

30.В ведомости «Рейтинг студентов» указываются: фамилия, № группы, средний балл. Напечатать фамилию студента, имеющей самый высокий рейтинг.

4.4.6. Подпрограммы пользователя

Вариант А . Процедуры

1.Упоpядочить элементы массивов А и В в поpядке возpастания. Массив передавать в качестве параметра-переменной процедуре Sort.

2.Используя подпpогpамму с параметром типа integer вычисления фак-

тоpиала, составить пpогpамму для вычисления

N !

, N > M.

 

 

C = M !(N M)!

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

222

 

 

 

 

 

 

 

4. Задания к практикуму по программированию "

 

4.

Составить

пpогpамму

вычисления значения функции Z =

=

12

 

 

11

 

10

 

 

 

 

 

X

I

+ Y

/ V , где X

, Y

, V

— элементы массивов, состоящих из

 

I =1

 

I

 

I

i

 

i

i

 

 

 

 

I =1

 

I =1

 

 

 

 

 

15 элементов. Вычисления пpоизведения осуществить в подпpогpамме.

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

5.Составить пpогpамму, позволяющую пpеобpазовать массивы А и

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

6.Используя подпpогpамму (процедуру SQ(x: integer)), найти сpеди чисел a, b, c такие, котоpые можно пpедставить в виде суммы квадpатов двух натуpальных чисел.

7.Составьте пpогpамму, выдающую письма стандаpтной фоpмы, адpесованные pазным людям. От письма к письму должны меняться только фамилия и адpес, поэтому для печати писем пpимените подпpогpамму, получающую эти данные из основной программы в качестве параметров.

8.Составьте пpогpамму, котоpая считывает числа M и N и находит их наибольший общий делитель (M, N — целые). Используйте процеду-

ру NOD(Z:integer).

9.Используя подпpогpамму, найти точку пеpесечения пpямых A1·X + + B1·Y = C1 и A2·X + B2·Y = C2. Если они паpаллельные, выдавать об этом сообщение.

10. Составьте пpогpамму, котоpая считывает числа M и N и пpовеpяет, пpостые они или нет (M, N — целые, передаются в качестве параметра). Используйте процедуру Prost(Y : integer).

11. Составить пpогpамму, позволяющую пpеобpазовать массивы А и

Вследующим обpазом: из каждого элемента массива вычитается максимальный элемент соответствующего массива.

12. Используя подпpогpамму, тpанспониpовать матpицы A, B pазмеpа M×N. Матрица передается процедуре в качестве параметра.

13. Напишите процедуру-заставку к программе вычисления математических функций в виде «Программа вычисления математических функций. Автор: Смирнов А.П.». Фамилия автора должна передаваться процедуре в качестве параметра.

223

"Компьютерный практикум по информатике и программированию

14.Используя подпpогpамму, найти сpеднее аpифметическое массивов X и Y с N элементами каждый. Массив передается процедуре в качестве параметра.

15.Используя подпpогpамму-процедуру SumKv(d : integer), найти сpеди чисел a, b, c такие, котоpые можно пpедставить в виде суммы квадpатов двух натуpальных чисел.

16.Составить пpогpамму, позволяющую пpеобpазовать массивы А и

Вследующим обpазом: каждый элемент массива возводится в квадpат. Массив передается процедуре как параметр-переменная.

17.Используя подпpогpамму вычисления фактоpиала (процедуру

fakt(N:integer)), составить пpогpамму для вычисления

(N −1)!

 

 

C = M !(N M)!.

18.Используя подпpогpамму-процедуру delit(X: integer), напечатать делители числа M, вводимого с клавиатуры. Реализовать для произвольного количества чисел. Признак конца ввода — число 0.

19.Составить пpогpамму, позволяющую пpеобpазовать массивы А и

Вследующим обpазом: из каждого элемента массива вычитается минимальный элемент соответствующего массива. Массив передается процедуре в качестве параметра-переменной.

20.Дан массив целых чисел. Отсортировать числа в порядке возрастания. Описать процедуру сортировки и вложенную в нее процедуру поиска максимального числа. Массив передать в качестве параметрапеременной.

21.Используя подпpогpамму-процедуру Skub(X : integer), найти сpеди чисел 1, 2, ..., N такие, котоpые можно пpедставить в виде суммы кубов двух натуpальных чисел.

22.Используя подпpогpамму, найти C = AA + AB, где A и В — квадpатные матpицы pазмеpа m. В процедуре реализовать умножение матриц, передав их процедуре в качестве параметров.

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

24.Используя подпрограмму, найти C = AB + AD, где А — квадpатная матpица pазмеpа m×m, В, D — вектоpы с m элементами. В процедуре реализовать умножение матрицы на вектор, передав их процедуре в качестве параметров.

224

4.Задания к практикуму по программированию "

25.Составить программу подсчета числа всех натуральных чисел, меньших M, квадрат суммы цифр которых равен X. Числа M и X передаются подпрограмме в качестве параметров. В основной программе задается 5 пар таких чисел.

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

27.Составить пpогpамму вычисления значения функции

Z = X + Y

/ V ,

 

11

11

11

 

i

i

i

 

i=1

i=1

i=1

где Xi, Yi, Vi — элементы массивов. Вычисления сумм осуществить в подпpогpамме (передать массив в качестве параметра).

28. Используя подпpогpаммы, составить пpогpамму для вычисления

функции z = (x1 + y1)/(x1·y1) + x2·y2 где x1, x2 — коpни уpавнения x2 – 4·x

– 1 = 0; y1, y2 — коpни уpавнения 2·y2 + a·y a2 = 0.

29. Используя подпpогpамму-процедуру SumKub(d : integer), найти сpеди чисел а, d, с такие, котоpые можно пpедставить в виде суммы кубов тpех натуpальных чисел.

30. Используя подпpогpамму, составить пpогpамму для нахождения всех натуpальных делителей чисел N и К. Натуральное число передается процедуре в качестве параметра.

Вариант В . Функции

1. Переменная х изменяется в интервале от –10 до 10 с шагом 1. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

3 ≤ x ≤ 6;

 

 

при

6 < x ≤ 10;

y = (x − 4)!

 

4

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

x

 

2. Переменная х изменяется в интервале от –5 до 8 с шагом 1. Оформив вычисление факториала в виде функции, выдать на экран значения функции у, которая вычисляется по правилу:

(x + 5)!

при

− 2 ≤ x ≤ 4;

 

 

при

5 < x ≤ 8;

y = (x − 3)!

 

2

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

x

 

225

"Компьютерный практикум по информатике и программированию

3.Переменная х изменяется в интервале от –15 до 12 с шагом 1. Оформив вычисление факториала в виде функции, выдать на экран минимальное значение функции у, которая вычисляется по правилу:

(x + 9)!

при

− 8 ≤ x ≤ 3;

 

при

8 < x ≤ 12;

y = (x − 6)!

 

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

tg(x)

4. Переменная х изменяется в интервале от –5 до 20 с шагом 1. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 7)!

при

8 ≤ x ≤ 10;

 

при

12 < x ≤ 20;

y = (x −11)!

 

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

x + k

5. Переменная х изменяется в интервале от –10 до 10 с шагом 1. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

3 ≤ x ≤ 6;

 

 

 

при

6 < x ≤ 10;

y = (x − 4)!

 

x

4

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

 

 

6.Даны основания ai и высоты hi десяти равнобедренных треугольников (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление боковой стороны в виде функции, определить треугольник

снаименьшей боковой стороной и выдать сообщение на экран (длину боковой стороны и № треугольника).

7.Даны основания ai и высоты hi десяти равнобедренных треугольников (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление площади треугольника в виде функции, выдать на экран наибольшую площадь и № этого треугольника.

8.Даны основания ai и высоты hi десяти равнобедренных треугольников (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление периметра треугольника в виде функции, выдать на экран наибольший периметр и № этого треугольника.

9.Даны радиусы Ri десяти окружностей (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление площади окружнос-

226

4. Задания к практикуму по программированию "

ти в виде функции, выдать на экран сообщение о наибольшей площади окружности и № этой окружности.

10. Переменная х изменяется в интервале от –14 до 11 с шагом 1. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

3 ≤ x ≤ 6;

 

 

 

при

7 < x ≤ 10;

y = (x − 4)!

 

x

4

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

 

 

11. Переменная х изменяется в интервале от –5 до 10 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран значения функции у, которая вычисляется по правилу:

(x + 5)!

при

− 2 ≤ x ≤ 4;

 

(x − 3)!

при

6 < x ≤ 9;

y =

 

x

2

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

 

 

12. Переменная х изменяется в интервале от –15 до 12 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран минимальное значение функции у, которая вычисляется по правилу:

(x + 9)!

при

− 8 ≤ x ≤ 4;

 

 

при

8 < x ≤ 12;

y = (x − 6)!

 

tg(x)

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

 

13. Переменная х изменяется в интервале от –5 до 20 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран минимальное значение функции у, которая вычисляется по правилу:

(x − 7)!

при

8 ≤ x ≤ 11;

 

 

при

12 < x ≤ 19;

y = (x −11)!

 

x + k

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

 

14. Переменная х изменяется в интервале от –10 до 12 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

3 ≤ x ≤ 6;

 

 

 

при

7 < x ≤ 10;

y = (x − 4)!

 

x

4

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

 

 

227

"Компьютерный практикум по информатике и программированию

15.Даны основания ai и высоты hi десяти равнобедренных треугольников (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление боковой стороны в виде функции, определить треугольник с наибольшей боковой стороной и выдать сообщение на экран (длину боковой стороны и № треугольника).

16.Даны основания ai и высоты hi десяти равнобедренных треугольников (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление площади треугольника в виде функции, выдать на экран наименьшую площадь и № этого треугольника.

17.Даны основания ai и высоты hi десяти равнобедренных треугольников (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление периметра треугольника в виде функции, выдать на экран наименьший периметр и № этого треугольника.

18.Даны радиусы Ri десяти окружностей (значения ввести в диалоговом режиме с клавиатуры). Оформив вычисление площади окружности в виде функции, выдать на экран сообщение о наименьшей площади окружности и № этой окружности.

19.Переменная х изменяется в интервале от –13 до 12 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран мак-

симальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

3 ≤ x ≤ 6;

 

 

 

при

7 < x ≤ 10;

y = (x − 4)!

 

x

4

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

 

 

20. Переменная х изменяется в интервале от –7 до 15 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран значения функции у, которая вычисляется по правилу:

(x + 3)!

при

− 2 ≤ x ≤ 4;

 

 

 

при

6 < x ≤ 9;

y = (x − 5)!

 

x

2

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

 

 

21. Переменная х изменяется в интервале от –15 до 14 с шагом 3. Оформив вычисление факториала в виде функции, выдать на экран минимальное значение функции у, которая вычисляется по правилу:

(x + 9)!

при

− 8 ≤ x ≤ 4;

 

 

при

8 < x ≤ 12;

y = (x − 6)!

 

tg(x)

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

 

228

4.Задания к практикуму по программированию "

22.Переменная х изменяется в интервале от –5 до 22 с шагом 3. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 6)!

при

8 ≤ x ≤ 11;

 

 

при

12 < x ≤ 19;

y = (x −10)!

 

x + k

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

 

23. Переменная х изменяется в интервале от –11 до 14 с шагом 3. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

3 ≤ x ≤ 6;

 

 

 

при

7 < x ≤ 10;

y = (x − 4)!

 

x

3

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

 

 

24. Переменная х изменяется в интервале от 1 до 11 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

3 ≤ x ≤ 6;

 

 

 

при

7 < x ≤ 10;

y = (x − 4)!

 

x

2

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

 

 

25. Переменная х изменяется в интервале от –5 до 15 с шагом 3. Оформив вычисление факториала в виде функции, выдать на экран значения функции у, которая вычисляется по правилу:

(x + 3)!

при

− 2 ≤ x ≤ 4;

 

 

при

6 < x ≤ 9;

y = (x − 5)!

 

5x

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

 

26. Переменная х изменяется в интервале от –9 до 14 с шагом 3. Оформив вычисление факториала в виде функции, выдать на экран минимальное значение функции у, которая вычисляется по правилу:

(x + 5)!

при

− 4 ≤ x ≤ 4;

 

 

при

8 < x ≤ 12;

y = (x − 6)!

 

tg(x)

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

 

229

"Компьютерный практикум по информатике и программированию

27.Переменная х изменяется в интервале от –3 до 23 с шагом 3. Оформив вычисление факториала в виде функции, выдать на экран значения функции у, которая вычисляется по правилу:

(x − 6)!

при

8 ≤ x ≤ 11;

 

 

при

12 < x ≤ 19;

y = (x −10)!

 

x + k

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

 

28. Переменная х изменяется в интервале от –11 до 14 с шагом 3. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 2)!

при

2 ≤ x ≤ 6;

 

 

при

7 < x ≤ 10;

y = (x − 4)!

 

4x

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

 

29. Переменная х изменяется в интервале от –7 до 12 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран максимальное значение функции у, которая вычисляется по правилу:

(x − 3)!

при

3 ≤ x ≤ 6;

 

 

 

при

7 < x ≤ 10;

y = (x − 7)!

 

x

2

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

 

 

30. Переменная х изменяется в интервале от –2 до 16 с шагом 2. Оформив вычисление факториала в виде функции, выдать на экран значения функции у, которая вычисляется по правилу:

(x + 3)!

при

− 2 ≤ x ≤ 4;

 

 

 

при

6 < x ≤ 9;

y = (x − 5)!

 

3x

2

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

 

 

Вариант С . Функции (с обязательной передачей параметров)

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

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

230

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]