Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
maket_Smirnova_i_dr_Informatika_ispr.pdf
Скачиваний:
50
Добавлен:
22.03.2015
Размер:
4.87 Mб
Скачать

ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ

Задание 1. Решение задач с использованием линейных алго-

ритмов

1.Дана блок-схема алгоритма (рис. 15). Определите, для решения какой задачи предназначен данный алгоритм. Какие значения будут выведены при исполнении алгоритма, если будут введены следующие данные:

а) x = 1, y = 1; б) x = -2, y = 3; в) x = 200, y = 7?

2.Дана блок-схема алгоритма (рис. 16). Определите, для решения какой задачи предназначен данный алгоритм. Какие значения будут выведены при исполнении алгоритма, если будут введены следующие данные:

а) x = 3, y = 4; б) x = 2, y = 0; в) x = 8, y = 6?

Начало

Ввод x, y

p := x x := y y := p

Вывод x, y

Конец

Рис. 15

Начало

Ввод x, y

z : x2 y2 P : x y z

Вывод

P

Конец

Рис. 16

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

68

t := t + b
Рис. 17
a > b
t := a

Задание 2. Решение задач с использованием оператора ветв-

ления

1. Используя составной оператор, упростите следующий фрагмент программы:

If x>0 then a:=1; If x>0 then b:=2; If x<=0 then a:=3;

да

t := t+1

нет

t := b

2. Имеется фрагмент блок-схемы алгоритма (рис. 17). Перед выполнением данного фрагмента были введе-

ны значения a = 4 и b = 4. Чему равно значение переменной t после выполнения фрагмента?

3.Запишите условный оператор, который будет находить сумму двух чисел, если первое из них – нечетное и произведение, если первое число – четное.

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

5.Напишите фрагмент программы, подсчитывающий количество положительных среди четырех данных чисел.

6.Составьте программу нахождения произведения наибольшего и наименьшего из трех данных чисел.

Задание 2. Решение задач с использованием цикла с пара-

метром

1. Сколько раз будут выполнены операторы из тел циклов в сле-

дующих фрагментах:

а) for i: =5 to 8 do ...

б) for i:= 5 to5 do ...

в) for i: = 0 to 10 do ...

г) for i: =45 to 8 do ...

д) n:=10; for i: =1 to n-1 do ...

69

2.Нарисуйте блок-схему для нахождения суммы квадратов целых чисел от A до B.

3.Напишите фрагмент программы, нахождения количества положительных нечетных чисел, меньших X.

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

5.Составьте программу, выводящую все целые числа из диапазона от А до B, которые кратны 3 и заканчиваются на цифры 2 или 4.

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

7.Сколько раз будут выполнены операторы из тел циклов в следующих фрагментах:

а) for i: =1 to 5 do for j: =1 to 6 do ...

б) for i:= 1 to10 do for j: =10 downto 5 do...

в) for i: = 2 to 8 do for j: =7 downto 4 do ...

8.Дано натуральное число S – площадь прямоугольника. Напишите программу для нахождения сторон всех таких прямоугольников, площадь которых равна S и длины сторон выражены натуральными числами.

Задание 3. Решение задач с использованием циклов с усло-

виями

1.Имеется схема алгоритма (рис. 18). Сколько чисел будет выведено на экран при выполнении этого алгоритма? Какой из видов циклов реализован в этом примере?

2.Дан фрагмент программы:

x:= 0; y := 0;

while x + y < 6 do

begin x := x + 1; y := y +2 end; z := x + y;

Сколько раз будет выполнено тело цикла? Какими будут значения переменных x, y, и z после завершения выполнения этого фрагмента?

Начало

а := 1

Вывод а

a := a + 2

нет

a > 8

да

Конец

Рис. 18

70

3. Для следующего фрагмента программы изобразите блок-схему. a := 1; b := 1; while а <= 3 do а := а + 1; b:= b +1;

Какими будут значения переменных а и b после выполнения?

4.Напишите программу, находящую наибольшую степень числа два, делящую данное целое число N.

5.Напишите программу, определяющую количество пассажиров, которые могут поместиться на борт самолета, если его грузоподъемность 8 тонн. Вес каждого пассажира (в килограммах) вводится пользователем.

6.Изобразите блок-схему и напишите программу для нахождения количества цифр в данном натуральном числе. Используйте операции div и mod.

Задание 4. Решение задач с использованием массивов

1.Может ли массив содержать один элемент? Если может, то дайте его описание. Если не может, то объясните почему.

2.Может ли типом индекса массива быть тип real?

3.Опишите массив из N действительных чисел с индексацией элементов, начинающейся с нуля.

4.Установите, какая задача решается в предложенном фрагменте программы:

s:=0;

for i:=1 to n do

if (1<=a[i]) and (a[i]<=n) then s:=s+a[i].

5.Напишите программу, меняющую местами в данном целочисленном массиве наибольший отрицательный и наименьший положительный элементы.

Задание 5. Решение задач с использованием подпрограмм

1. Дан фрагмент программы: var a:integer;

procedure p1(var b:integer); begin

71