- Выберите правильный способ заполнения массива случайными числами
- Одномерные массивы в Паскале
- Работа с одномерными массивами на языке программирования Паскаль
- Одномерный числовой массив
- Способы заполнения одномерных массивов
- Тест с ответами: “Одномерные массивы”
- Заполнение массива рандомными значениями
- Решение
- Решение
- Pascal: Занятие № 5. Одномерные массивы в Паскале
- Одномерные массивы в Паскале
- Объявление массива
- Инициализация массива
- Вывод элементов массива
- Функция Random в Pascal
- Числа Фибоначчи в Паскале
- Максимальный (минимальный) элемент массива
- Поиск в массиве
- Циклический сдвиг
- Перестановка элементов в массиве
- Выбор элементов и сохранение в другой массив
- Сортировка элементов массива
- admin
- Bronislav
- Владимир
- Aurangzeb
Выберите правильный способ заполнения массива случайными числами
1)Выберите правильный способ заполнения массива случайными числами:
x[i]:=random[100];
x[i]:=randam(100);
x[i]:=random(100);
x[i]:=randam[100];
2)Укажите правильную запись для присваивания элементу массива числа в диапазоне от – 100 до 100:
a[i]:=random(201)-100;
a[i]:=random(100)-100;
a[i]:=random(100-100);
a[i]:=random(200)-100;
3)Дан фрагмент программного кода, в котором используется одномерный целочисленный массив A с индексами от 1 до 10. Значения элементов равны 1; 4 1; 7; 10; 8; 7; 7; 8; 1 соответственно, т. е. A[1] = 1; A[2] = 4 и т. д. Чему равно значение Min_i?
Написать программу заполнения целочисленного массива из 10 элементов случайными числами от 10 до 100
Написать программу заполнения целочисленного массива из 10 элементов случайными числами от 10 до.
Пользователь задает размер массива и он заполняет массив случайными целыми числами, в диапазоне от -100 до 100
Как это реализовать
Найти количество отрицательных чисел, одномерного массива размером 30 элементов, заполненного случайными числами из отрезка [-100;100]
Всем привет, нужна помощь с решением задачи. 2) Найдите количество отрицательных чисел.
Js документ для заполнения матрицы X и Y случайными числами j 100 до 999
Помогите пж создать документ для заполнения матрицы X и Y случайными числами j 100 до 999
Создать процедурой два массива с вещественными случайными числами ( через random) Определить функцией
Создать процедурой два массива с вещественными случайными числами ( через random) Определить.
Массив размерностью 30 заполнить случайными числами, лежащими в диапозоне от -100 до 100
Массив размерностью 30 заполнить случайными числами, лежащими в диапозоне от -100 до 100. Заменить.
Заполнить массив состоящий из N элементов случайными числами в интервале от -100 до 100
Как заполнить массив состоящий из N элементов случайными числами в интервале от -100 до 100. В.
Заполнить массив из 100 элементов случайными целыми числами в диапазоне от 1 до 100
Мне очень нужна помощь, надеюсь откликнетесь. помогите написать, пожалуйста! 1. Заполнить.
Источник
Одномерные массивы в Паскале
Работа с одномерными массивами на языке программирования Паскаль
Массив — самая распространенная структура хранения данных, присутствующая в любом языке программирования.
В Pascal используются одномерные и двумерные массивы. В школьной программе обычно их изучают в 9-10 классах.
Одномерный массив — это конечное количество однотипных элементов, объединенных общим именем. Каждому элементу присвоен свой порядковый номер. Обращение к элементам происходит по имени массива и индексу (порядковому номеру).
Одномерный числовой массив
Одномерные массивы называют линейными, так как элементы расположены друг за другом. Их можно представить в виде таблицы, в которой всего две строки. В первой перечислены индексы элементов, а во второй — значения элементов.
Одномерный массив. Обозначение элементов
Имя массива формируется по тем же правилам, что и имя любой другой переменной в программе. Границы индексов задают при описании массива в квадратных скобках. Удобнее задавать начальный индекс равный единице. Конечный индекс определяется условием задачи и численно равен размеру массива — количеству элементов. Числовые массивы могут содержать целые и действительные числа. Тип элементов указывается в описании. Смотрите рисунок выше.
Способы заполнения одномерных массивов
В наших примерах будем использовать одномерный массив целых чисел, состоящий из пяти элементов. Для этого выполним его описание в разделе переменных
Источник
Тест с ответами: “Одномерные массивы”
1. Укажите, какой из операторов используется для различного вывода значений массива:
for i:=1 to 10 do write (a[i], ‘ ‘);
а) вывод значений в одну строку +
б) вывод значений столбиком
в) правильны оба варианта
2. Укажите какой из операторов используется для различного вывода значений массива:
for i:=1 to 10 do writeln (a[i], ‘ ‘);
а) вывод значений в одну строку
б) вывод значений столбиком +
в) правильны оба варианта
3. Укажите правильное описание массива:
а) Var a: array 97 of integer;
б) Var a: array [1:100] of integer;
в) Var a:array[1..100] of integer; +
4. Указан фрагмент программы: const b: array [1..5] of integer = (4, 2, 3, 5, 7). Укажите значение элемента массива b[4]:
а) 5 +
б) 3
в) 7
5. Сопоставьте способы заполнения массива значениями:
Ввод каждого значения с клавиатуры:
а) randomize;
for i:=1 to 10 do a[i]:=random(100)
б)
в) for i:=1 to 10 do read (a[i]) +
6. Сопоставьте способы заполнения массива значениями:
С помощью оператора присваивания (случайными числами):
а) for i:=1 to 10 do read (a[i])
б) randomize;
for i:=1 to 10 do a[i]:=random(100) +
в)
7. Сопоставьте способы заполнения массива значениями:
С помощью оператора присваивания (по формуле):
а) randomize;
for i:=1 to 10 do a[i]:=random(100)
б) for i:=1 to 10 do read (a[i])
в)
8. Что называется массивом:
а) совокупность конечного числа данных одного тип +
б) совокупность бесконечного числа данных одного типа
в) совокупность конечного числа данных различных типов
9. Какой ряд данных можно назвать целочисленным массивом:
а) 1,5,f,c,7
б) сентябрь, октябрь, ноябрь, декабрь
в) 1,3,5,7,9 +
10. Целочисленный массив обозначается:
а) А: array [1..5] of real;
б) А: array [1..5] of integer; +
в) А: array [1..5] of strong;
11. В массиве индексом называется:
а) порядковый номер элемента массива +
б) значение элемента массива
в) имя массива
12. В записи “a[5]=10” – А обозначает:
а) значение пятого элемента массива
б) имя массива +
в) индекс элемента массива
13. Что называется одномерным массивом:
а) совокупность конечного числа данных однотипных типов +
б) совокупность конечного числа данных различных типов
в) совокупность бесконечного числа данных однотипных типов
14. Целочисленный массив А заполнен последовательно числами: 15, 17, 13, 19. Укажите, значение элемента массива А[3]:
а) 17
б) 15
в) 13 +
15. Для заполнения массива путем ввода чисел с клавиатуры в Паскале используется оператор:
а) readln +
б) for i:=1 to 10 do
в) writeln
16. Выберите способ описания в программе массива F, состоящего из 20 целых чисел:
а) Var f:array[1..20] of real;
б) Var f:array[1..20] of integer; +
в) Var f:array[1..n] of integer;
17. Фрагмент программы
t:=a[n];
for i:=n−1 downto 1 do
a[i]:=a[i+1];
a[1]:=t;
а) сдвигает все элементы массива а вправо на одну позицию
б) присваивает первому элементу массива а значение переменной t
в) сдвигает все элементы массива а влево на одну позицию +
18. Оператор: for i:=1 to 20 do
if a[i] 0 then writeln (a[i]);
выводит на экран:
а) отрицательные элементы массива а
б) ненулевые элементы массива а +
в) положительные элементы массива а
23. Фрагмент программы заполнения целочисленного массива А десятью случайными числами из интервала [0, 10]:
а) for i:=1 to 10 do a[i]:=random(10);
б) for i:=1 to 9 do a[i]:=random(11)−1;
в) for i:=1 to 10 do a[i]:=random(11); +
24. Описание одномерного целочисленного массива:
а) var а: array [1..5] of real;
б) var а: array [1..5] of integer; +
в) var а: array [1..5] of char;
25. Каким способом можно заполнить массив:
а) классическим
б) циклическим
в) ввод с клавиатуры +
26. Каким способом можно заполнить массив:
а) табличным
б) по формуле +
в) графическим
27. Каким способом можно заполнить массив:
а) случайным образом +
б) теоретическим
в) любым удобным
28. Для печати массива в окне результатов в Паскале используется оператор:
а) readln (a[i]);
б) for i:=1 to 10 do
в) writeln(‘a[‘,i,’]=’,a[i]); +
29. Найдите правильное описание массива:
а) D: array [1..5] of integer; +
б) D [1..5]: array of integer;
в) D: of [1..5] array of integer;
30. Массив данных имеет:
а) один тип данных
б) общее имя и один тип данных +
в) общее имя
Источник
Заполнение массива рандомными значениями
Здравствуйте. Начал изучать c++. Помогите, пожалуйста, с одним заданием.
Нужно написать программу, в которой массив будет заполнятся рандомными значениями, и из этих значения будет выбрано наименьшее и наибольшее число. Пока получилось только так, что и «Минимум», и «Максимум» — одно и то же число. Подскажите пожалуйста, что можно здесь придумать.
Заполнение массива рандомными числами
Здравствуйте! Нужно заполнить массив float рандомными числами от 0.3 до 0.9 #define MIN 0.3.
Заполнение массива рандомными числами
Мне необходимо создать массив из 20000 элементов порядок элементов по возрастанию и по убыванию.
Заполнение двумерного массива рандомными числами
Здравствуйте! Стоит задача заполнить двумерный массив случайными значениями, для этого я.
Заполнение массива рандомными числами без повторений
Здравствуйте! Пытаюсь заполнить массив рандомными числами без повторений, в коде есть проверка на.
Решение
Решение
Вроде и работает, но при каждом запуске программы она выдает одни и те же числа. А как сделать так, чтобы числа были всегда разные?
Добавлено через 4 минуты
Перепроверил еще раз — действительно, работает как нужно.
Заполнение массива значениями
Всем привет! В результате данная программа выдает массив. Но не могу понять, почему он заполняется.
Заполнение массива случайными значениями в С
Необходимо заполнить масив случайными значениями в диапазоне 1-9, причем они каждый раз должны быть.
Заполнение массива рассчитанными значениями
Мне нужно заполнить массив значениями M=Sin(n), где n=1,2,3. 50. У меня в массив записывается.
Заполнение целого массива случайными значениями
1.Написать программу, организующую заполнение целого массива из n элементов случайными значениями.
Заполнение txt файла значениями из массива
Добрый день! вот мне нужно заполнить txt файл значениями из массива, вот сам код #include.
Источник
Pascal: Занятие № 5. Одномерные массивы в Паскале
Одномерные массивы в Паскале
Объявление массива
Массивы в Паскале используются двух типов: одномерные и двумерные.
Определение одномерного массива в Паскале звучит так: одномерный массив — это определенное количество элементов, относящихся к одному и тому же типу данных, которые имеют одно имя, и каждый элемент имеет свой индекс — порядковый номер.
Описание массива в Паскале (объявление) и обращение к его элементам происходит следующим образом:
var dlina: array [1..3] of integer; begin dlina[1]:=500; dlina[2]:=400; dlina[3]:=150; .
Объявить размер можно через константу:
Инициализация массива
Кроме того, массив может быть сам константным, т.е. все его элементы в программе заранее определены. Описание такого массива выглядит следующим образом:
const a:array[1..4] of integer = (1, 3, 2, 5);
Заполнение последовательными числами:
var a: array of integer; var n:=readInteger; a:=new integer[n];
var a: array of integer; var n:=readInteger; SetLength(a,n); // устанавливаем размер
begin var a: array of integer; a := new integer[3]; a[0] := 5; a[1] := 2; a[2] := 3; end.
или в одну строку:
begin var a: array of integer; a := new integer[3](5,2,3); print(a) end.
Ввод с клавиатуры:
writeln (‘введите кол-во элементов: ‘); readln(n); <если кол-во заранее не известно, - запрашиваем его>for i := 1 to n do begin write(‘a[‘, i, ‘]=’); read(a[i]); . end; .
✍ Пример результата:
var a:=ReadArrInteger(5); // целые var a:=ReadArrReal(5); // вещественные
Вывод элементов массива
var a: array[1..5] of integer; <массив из пяти элементов>i: integer; begin a[1]:=2; a[2]:=4; a[3]:=8; a[4]:=6; a[5]:=3; writeln(‘Массив A:’); for i := 1 to 5 do write(a[i]:2); <вывод элементов массива>end.
Для работы с массивами чаще всего используется в Паскале цикл for с параметром, так как обычно известно, сколько элементов в массиве, и можно использовать счетчик цикла в качестве индексов элементов.
[Название файла: taskArray0.pas ]
В данном примере работы с одномерным массивом есть явное неудобство: присваивание значений элементам.
for var i:=0 to a.Length-1 do a[i] += 1;
Проход по элементам (только для чтения):
Пример:
foreach var x in a do Print(x)
Функция Random в Pascal
Для того чтобы постоянно не запрашивать значения элементов массива используется генератор случайных чисел в Паскаль, который реализуется функцией Random . На самом деле генерируются псевдослучайные числа, но суть не в этом.
Диапазон в Паскале тех самых случайных чисел от a до b задается формулой:
var f: array[1..10] of integer; i:integer; begin randomize; for i:=1 to 10 do begin f[i]:=random(10); < интервал [0,9] >write(f[i],’ ‘); end; end.
Для вещественных чисел в интервале [0,1]:
var x: real; . x := random(0.0,1.0);;
или с дополнительными параметрами (диапазон [5;15]):
[Название файла: taskArray1.pas ]
Числа Фибоначчи в Паскале
Наиболее распространенным примером работы с массивом является вывод ряда чисел Фибоначчи в Паскаль. Рассмотрим его.
Получили формулу элементов ряда.
var i:integer; f:array[0..19]of integer; begin f[0]:=1; f[1]:=1; for i:=2 to 19 do begin f[i]:=f[i-1]+f[i-2]; writeln(f[i]) end; end.
На данном примере, становится понятен принцип работы с числовыми рядами. Обычно, для вывода числового ряда находится формула определения каждого элемента данного ряда. Так, в случае с числами Фибоначчи, эта формула-правило выглядит как f[i]:=f[i-1]+f[i-2] . Поэтому ее необходимо использовать в цикле for при формировании элементов массива.
[Название файла: taskArray2.pas ]
Максимальный (минимальный) элемент массива
Псевдокод:
Поиск максимального элемента по его индексу:
// … var (min, minind) := (a[0], 0); for var i:=1 to a.Length-1 do if a[i]
[Название файла: taskArray_min.pas ]
[Название файла: taskArray4.pas ]
[Название файла: taskArray5.pas ]
[Название файла: taskArray6.pas ]
Пример:
[Название файла: taskArray7.pas ]
Поиск в массиве
Рассмотрим сложный пример работы с одномерными массивами:
Для решения поставленной задачи понадобится оператор break — выход из цикла.
Решение Вариант 1. Цикл for:
var f: array[1..10] of integer; flag:boolean; i,c:integer; begin randomize; for i:=1 to 10 do begin f[i]:=random(10); write(f[i],’ ‘); end; flag:=false; writeln(‘введите образец’); readln(c); for i:=1 to 10 do if f[i]=c then begin writeln(‘найден’); flag:=true; break; end; if flag=false then writeln(‘не найден’); end.
begin var a := new integer[10]; a := arrRandomInteger(5,0,5); //[1,3,5,4,5] print(a.IndexOf(3)) // 1 end.
или метод a.Contains(x) наравне с x in a :
begin var a := new integer[10]; a := arrRandomInteger(5,0,5); //[1,3,5,4,5] print(a.Contains(3)); // True print(3 in a)// True end.
Рассмотрим эффективное решение:
Задача: найти в массиве элемент, равный X , или установить, что его нет.
Алгоритм:
- начать с 1-го элемента ( i:=1 );
- если очередной элемент ( A[i] ) равен X , то закончить поиск иначе перейти к следующему элементу.
решение на Паскале Вариант 2. Цикл While:
Поиск элемента в массиве
Предлагаем посмотреть подробный видео разбор поиска элемента в массиве (эффективный алгоритм):
Пример:
[Название файла: taskArray8.pas ]
Циклический сдвиг
Решение:
Программа:
// … var v := a[0]; for var i:=0 to a.Length-2 do a[i] := a[i+1]; a[a.Length-1] := v;
// … var v := a[a.Length-1]; for var i:=a.Length-1 downto 1 do a[i] := a[i-1]; a[0] := v;
[Название файла: taskArray9.pas ]
Перестановка элементов в массиве
Рассмотрим, как происходит перестановка или реверс массива.
Решение:
Псевдокод:
Программа:
begin var a: array of integer := (1,3,5,7); var n := a.Length; for var i:=0 to n div 2 — 1 do Swap(a[i],a[n-i-1]); End.
Решение 2 (стандартная процедура Reverse() ):
begin var a:=new integer[10]; a:=arrRandomInteger(10); print(a);// [41,81,84,63,12,26,88,25,36,72] Reverse(a); print(a) //[72,36,25,88,26,12,63,84,81,41] end.
[Название файла: taskArray10.pas ]
Выбор элементов и сохранение в другой массив
Решение:
Вывод массива B:
writeln(‘Выбранные элементы’); for i:=1 to count-1 do write(B[i], ‘ ‘)
// . for var i := 0 to a.length — 1 do if a[i]
[Название файла: taskArray11.pas ]
Сортировка элементов массива
- В таком типе сортировок массив представляется в виде воды, маленькие элементы — пузырьки в воде, которые всплывают наверх (самые легкие).
- При первой итерации цикла элементы массива попарно сравниваются между собой:предпоследний с последним, пред предпоследний с предпоследним и т.д. Если предшествующий элемент оказывается больше последующего, то производится их обмен.
- При второй итерации цикла нет надобности сравнивать последний элемент с предпоследним. Последний элемент уже стоит на своем месте, он самый большой. Значит, число сравнений будет на одно меньше. То же самое касается каждой последующей итерации.
Pascal | PascalABC.NET |
Pascal | PascalABC.NET |