Оглавление:
Задача — Функция заполнения массива случайными числами
— программирование на Pascal, Си, Кумир, Basic-256, Python
Написать функцию, которая заполняет массив случайными числами в диапазоне, указанном пользователем. Функция должна принимать два аргумента — начало диапазона и его конец, при этом ничего не возвращать. Вывод значений элементов массива должен происходить в основной ветке программы.
В основной ветке программы:
- Считать два значения — минимум и максимум диапазона.
- Вызвать функцию (или процедуру в Pascal), передав в качестве аргументов ссылку на массив, минимум и максимум.
- В цикле вывести на экран значения массива.
В функции (процедуре) массив заполняется случайными числами.
Pascal
const N = 10;
type arr = array[1..N] of integer;
var
i: byte;
nums: arr;
p,q: integer;
procedure func(var a: arr; s: integer; e: integer);
begin
randomize;
for i:=1 to N do
a[i] := random(e-s+1)+s;
end;
begin
readln(p,q);
func(nums,p,q);
for i:=1 to N do
write(nums[i]:4);
writeln;
end. -10
0
-5 -5 -5 -3 -1 -8 -5 -5 0 -10
Язык Си
#include <stdio.h>
#define N 10
void arr_make(int arr[], int min, int max);
main () {
int arrI[N], i, mn, mx;
scanf(«%d%d», &mn, &mx);
arr_make(arrI, mn, mx);
for (i=0; i<N; i++)
printf(«%d «, arrI[i]);
printf(«n»);
}
void arr_make(int arr[], int min, int max) {
int i;
srand(time(NULL));
for (i=0; i<N; i++)
arr[i] = rand() % (max — min + 1) + min;
} 5 10
6 7 7 5 5 5 5 6 6 9
Python
from random import random
N = 10
def func(a,mn,mx):
for i in range(N):
a[i] = int(random() * (mx-mn+1)) + mn
a = [0] * N
p = int(input())
q = int(input())
func(a,p,q)
print(a) 5
10
[5, 10, 10, 10, 6, 10, 6, 6, 8, 10]
КуМир
цел N = 10
цел таб arr[1:N]
алг
нач
цел p, q, i
ввод p, q
array(p,q)
нц для i от 1 до N
вывод arr[i], » »
кц
кон
алг array(цел mn, mx)
нач
цел j
нц для j от 1 до N
arr[j] := int(rand(mn,mx+1))
кц
кон -5 4
3 -1 -4 2 -5 4 -3 -5 1 -4