Задания уровня 1


Упражнение 1.

     Найти максимальный и минимальный элементы массива x(n).

1. Наберите текст программы:


Первый вариант

Program din_mas1;
type massiw=array [1..150] of real;
var x:^massiw;
i, n: integer; max, min: real;
begin
new(x); {Выделяем память под динамический массив из 150 вещественных чисел}
writeln ('Введите размер массива'); readln(n);
for i:=1 to N do
begin
write ('x(', i, ')='); readln(x^[i]);
end;
max:=x^[1]; min:=x^[1];
for i:=2 to N do
begin
if x^[i] > max then max:=x^[i];
if x^[i] < min then min:=x^[i];
end;
writeln ('максимум= ', max:1:4, ' минимум= ', min:1:4);
dispose(x); {Освобождаем память}
end.

 


Второй вариант

Program din_mas2;
type massiw=array [1..150] of real;
var x:^massiw;
i, n: integer; max, min: real;
begin
writeln ('Введите размер массива'); readln(n);
getmem (x, n*sizeof(real)); {Выделяем память под n элементов массива}
for i:=1 to N do
begin
write ('x(', i, ')='); readln(x^[i]);
end;
max:=x^[1]; min:=x^[1];
for i:=2 to N do
begin
if x^[i] > max then max:=x^[i];
if x^[i] < min then min:=x^[i];
end;
writeln ('максимум= ', max:1:4, ' минимум= ', min:1:4);
freemem (x); {Освобождаем память}
end.

2. Проанализируйте работу программ
3. Запустите программы на выполнение и проверьте их работу: Ctrl-F9
4. Для просмотра результатов выполненных программ необходимо нажать: Alt-F5
5. Сохраните программы на своем диске: A:\P12PR1 и A:\P12PR2 соответственно

Задания уровня 2

1. Записать все элементы массива X= (x1, x2, …, xn), удовлетворяющие условию xiЄ[1,2], подряд в массив Y= (y1, y2, …, yn). Определить минимальный элемент массива X. Записать программу под именем P12PR3
2. Переписать элементы массива целых чисел X= (x1, x2, …, xn) в обратном порядке в массив Y=(y1, y2, …, yn). Вычислить количество четных, нечетных и нулевых элементов массива Y. Сохранить программу под именем P12PR4

Задания уровня 2

3. Во входном файле расположена последовательность целых чисел. Определите, имеются ли среди этих чисел два совпадающих? Сохранить программу под именем P12PR5
4. Во входном файле расположен символ, за которым следуют 20 различных целых чисел, если этот символ есть i, или 30 различных действительных чисел, если этот символ есть r. Написать программу в результате выполнения которой выводится часть данной последовательности чисел, начиная с первого по порядку и заканчивая минимальным из данных. Сохранить программу под именем P12PR6
Контрольные вопросы:
1. Чем отличаются динамические переменные от статических?
2. Что такое указатель?
3. Если все указатели хранят адреса, зачем различать типы указателей?
4. Какие есть процедуры для работы с указателями?
5. В чем преимущество динамического выделения памяти?
6. Каков порядок работы при использовании динамических переменных?