- •3. Система программитрования турбо паскаль
- •3.1 Окно среды разработчика
- •3.2. Элементы диалоговой среды
- •3.3. Команды редактора
- •3.4. Модули
- •4. Общие сведения о языке паскаль
- •4.1 Алфавит языка
- •4.2. Типы данных в TurboPascal 7.0
- •4.3. Операции и выражения в языке Паскаль
- •4.4 Стандартные функции в языке Паскаль
- •5. Линейные алгоритмы
- •5.1. Структура программы на языке Паскаль
- •5.2. Конструкция «следование»
- •6. Разветвляющиеся алгоритмы
- •And, * (умножение), / (деление), div, mod;
- •6.1. Операторы условных переходов
- •Var a, b, c : Real; lv : Boolean;
- •Var a, b, c : Real; lv : Boolean;
- •Var X, y : Real;
- •6.2. Оператор безусловного перехода
- •Var n, p, X : Real;
- •20: WriteLn('Факториал числа ' , n:4:2,' равен ' ,p:4:2);
- •7. Циклические алгоритмы
- •7.1. Цикл с предусловием While
- •X, xn, xk, dx, y, s, p: real;
- •7.2. Цикл с постусловием repeat
- •X1, x0, X, eps: real;
- •7.3. Цикл с параметром for
- •I: integer; c: char;
- •7.4. Принудительное завершение цикла
- •X, xn, xk, dx: real;
- •8. Символьный тип
- •8.1. Особенности символьного типа
- •8.2. Объявление символьной переменной
- •8.3. Операции с символами
- •Строковые переменные
- •9.1. Определение и типы строк
- •9.2. Упакованный строковый тип
- •9.3. Строковый тип
- •9.5. Примеры работы со строками
- •9.6. Индивидуальные задания по работе со строками и символами
- •10. Массивы
- •10.1. Организация данных в массиве
- •10.2. Объявление массивов
- •10.3. Ввод и вывод значений элементов массива
- •10.4. Подсчет количества элементов по заданному условию
- •10.5. Поиск минимального элемента массива
- •10.6. Вычисление произведения ненулевых элементов массива
- •10.7. Сортировка элементов массива
- •10.8. Заполнение массива случайными числами
- •10. 9. Индивидуальные задания по работе с массивам
- •11. Процедуры и функции
- •11.1. Понятие подпрограммы
- •11.2. Описание процедуры
- •11.3. Описание функции
- •11.4. Области действия имен
- •11.5. Индивидуальные задания по разработке процедур и функций
- •Var k,l; real;
10.8. Заполнение массива случайными числами
Случайные (точнее, псевдослучайные) числа формируются математической функцией RANDOM(N). Функция возвращает псевдослучайное число Х типа Word (целое без знака длиной 2 байта) в диапазоне 0≤ X < N. Если параметр диапазона N не задан, то возвращается псевдослучайное число в диапазоне 0≤ X < 1. Для того, чтобы числа не повторялись при каждом обращении к функции, необходимо инициировать программный генератор псевдослучайных чисел, вызвав процедуру RANDOMIZE.
Например, для заполнения одномерного массива из 10 элементов числами в диапазоне от 0 до 20 необходимо выполнить программу:
RANDOMIZE;
FOR I:=1 TO 10 DO MAS1[I]:=RANDOM(21);
Если диапазон случайных чисел требуется выбрать, начиная, например, с числа 5, то результат работы функции следует увеличить на эту величину, предусмотрев ограничение на максимальное значение функции. Для диапазона, например, от 5 до 20 программа изменится следующим образом:
RANDOMIZE;
FOR I:=1 TO 10 DO MAS1[I]:=RANDOM(16)+5;
10. 9. Индивидуальные задания по работе с массивам
Заполните массив десятью случайными целыми числами, каждое их которых лежит в пределах от 50 до 200, и выведите на экран их численные значения.
2. Заполните массив десятью случайными целыми числами, каждое их которых лежит в пределах от 5 до 30, и выведите на экран их численные значения.
Напишите программу вычисления среднего арифметического следующих десятичных чисел: 31, 19, 52, 65, 6, 8, 13, 16, 97, 33, вводимых с клавиатуры.
Найти сумму 1-го, 4-го, 9-го, 16-го и 81-го элементов массива, состоящего из 100 целых случайных чисел, каждое из которых лежит в пределах от 2 до 22.
Замените в массиве из 10 случайных целых чисел, каждое из которых лежит в пределах от 1 до 10, все четные элементы нулями и выведите полученный массив на экран.
Массив состоит из 60 случайных двузначных целых чисел. Выведите их на экран в обратном порядке по 6 чисел в строке.
В массиве содержатся 10 букв — С, Ф, О, И, К, Л, О, И, Л, Н. Выведите на экран слово, образованное буквами с четными индексами, и слово, образованное буквами с нечетными индексами.
Массив состоит из 20 целых положительных и отрицательных чисел, модуль каждого из которых в пределах от 2 до 12. Выведите на экран сначала отрицательные, а затем положительные числа. Определите, модуль суммы каких чисел больше — положительных или отрицательных.
Найдите максимальный и минимальный элементы массива из 10 случайных целых двузначных чисел и разность между ними. П
Даны два массива, заполненные каждый десятью случайными целыми числами, каждое из которых от 1 до 9 включительно. Сложите массивы поэлементно, результаты запишите в третий массив. На экран вывести все три массива.
Найдите скалярное произведение двух массивов А и В, состоящих из 5 элементов каждый, которые содержат случайные числа от 2 до 9 включительно. Воспользуйтесь формулой: Р=А1*В1+А2*В2+ ... +АN*ВN, где N — размер массива.
Определите объем каждого из 10 цилиндров, для которых заданы радиусы оснований R (случайные целые числа от 5 до 25 см) и высоты Н (случайные целые числа от 10 до 30 см).
Дан одномерный массив XV из 10 случайных целых чисел, каждое из которых лежит в пределах от 1 до 100. Получите новый массив К, где каждый элемент создается из массива делением соответствующего элемента на его индекс.
Дан массив X, состоящий из 100 целых случайных чисел, каждое из которых лежит в пределах от 3 до 13. С клавиатуры вводится целое число N, также лежащее в этих пределах. Определите количество элементов массива, равных числу N.