Требуется сформировать новый массив по алгоритму,
указанному в задании. Программа должна:
1) генерировать случайным образом элементы исходных массивов;
2) Сформировать массив из отрицательных элементов первого массива и элементов второго массива, небольших 3.
3) выводить:
§ исходные массивы,
· сформированный массив, если он был сформирован. В противном случае – соответствующее сообщение.
Исходные данные для отладки программы выбрать самостоятельно.
Другие языки программирования и технологии
В каждой из задач данного раздела заданы два массива случайных значении
Так как не уточняется порядок слияния массивов, то в третий массив сначала копируются удовлетворяющие условию элементы первого, затем - второго.
class
N74708534
create
make
feature {NONE}
random: RANDOM
time: TIME
i_seed: INTEGER
feature {NONE}
make
local
n, k: INTEGER
a, b, c: ARRAY[INTEGER]
do
create time.make_now
create random.set_seed (time.compact_time + time.milli_second)
io.put_string ("Первый массив A")
a := create_array
io.put_string ("Второй массив B")
b := create_array
create c.make_empty
n := 0
from
k := a.lower
until
k > a.upper
loop
if a[k] < 0 then
n := n + 1
c.force (a[k], n)
end
k := k + 1
end
from
k := b.lower
until
k > b.upper
loop
if b[k] <= 3 then
n := n + 1
c.force (b[k], n)
end
k := k + 1
end
if n = 0 then
io.put_string ("Третий массив не был сформирован")
else
io.put_string ("Третий массив C")
write_array(c)
end
io.read_character
end
feature {NONE}
create_array: ARRAY[INTEGER]
local
i: INTEGER
do
i_seed := i_seed + 1
create Result.make (1, random.i_th (i_seed).integer_remainder (81) + 20)
from
i := Result.lower
until
i > Result.upper
loop
i_seed := i_seed + 1
Result.put(random.i_th (i_seed).integer_remainder (56) - 5, i)
i := i + 1
end
write_array (Result)
end
write_array (a: ARRAY[INTEGER])
local
i: INTEGER
do
io.put_character ('(')
io.put_integer (a.capacity)
io.put_string ("):%N")
from
i := a.lower
until
i > a.upper
loop
io.put_integer (a[і])
io.put_character ('%T')
i := i + 1
end
io.put_new_line
end
end
P.S. Разумеется, библиотеку time нужно подключить вручную.
class
N74708534
create
make
feature {NONE}
random: RANDOM
time: TIME
i_seed: INTEGER
feature {NONE}
make
local
n, k: INTEGER
a, b, c: ARRAY[INTEGER]
do
create time.make_now
create random.set_seed (time.compact_time + time.milli_second)
io.put_string ("Первый массив A")
a := create_array
io.put_string ("Второй массив B")
b := create_array
create c.make_empty
n := 0
from
k := a.lower
until
k > a.upper
loop
if a[k] < 0 then
n := n + 1
c.force (a[k], n)
end
k := k + 1
end
from
k := b.lower
until
k > b.upper
loop
if b[k] <= 3 then
n := n + 1
c.force (b[k], n)
end
k := k + 1
end
if n = 0 then
io.put_string ("Третий массив не был сформирован")
else
io.put_string ("Третий массив C")
write_array(c)
end
io.read_character
end
feature {NONE}
create_array: ARRAY[INTEGER]
local
i: INTEGER
do
i_seed := i_seed + 1
create Result.make (1, random.i_th (i_seed).integer_remainder (81) + 20)
from
i := Result.lower
until
i > Result.upper
loop
i_seed := i_seed + 1
Result.put(random.i_th (i_seed).integer_remainder (56) - 5, i)
i := i + 1
end
write_array (Result)
end
write_array (a: ARRAY[INTEGER])
local
i: INTEGER
do
io.put_character ('(')
io.put_integer (a.capacity)
io.put_string ("):%N")
from
i := a.lower
until
i > a.upper
loop
io.put_integer (a[і])
io.put_character ('%T')
i := i + 1
end
io.put_new_line
end
end

P.S. Разумеется, библиотеку time нужно подключить вручную.
Похожие вопросы
- 1.Заполнить массив случайными числами. Вывести элементы массива на экран. Заменить все его минимальные элементы нулями.
- Программа не работает как надо (С++). Задача: Вывести сумму всех элементов массива, кратных данному числу К.
- С++, заполнение массива рандомными значениями.
- Как правильно задать одномерный массив в C++?
- Помогите решить задачу по паскалю на двумерные массивы.
- Как задать двумерный массив на C#, чтобы значения можно было писать при запуске программы?
- Задача по делфи на двухмерный массив.
- Задан массив m на n. Числа m и n вводятся вручную. Заполнить массив случайным образом. Найти произведение чисел от 10 до
- Заполните массив случайными числами. Отсортируйте массив по возрастанию методом пузырька.
- Задача pascal abc fr. Одномерный массив