Другие языки программирования и технологии

В каждой из задач данного раздела заданы два массива случайных значении

Требуется сформировать новый массив по алгоритму,
указанному в задании. Программа должна:
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 нужно подключить вручную.
Даня Федоров
Даня Федоров
51 590
Лучший ответ