Добавить материал и получить бесплатное свидетельство о публикации в СМИ
Эл. №ФС77-60625 от 20.01.2015
Свидетельство о публикации

Автоматическая выдача свидетельства о публикации в официальном СМИ сразу после добавления материала на сайт - Бесплатно

Добавить свой материал

За каждый опубликованный материал Вы получите бесплатное свидетельство о публикации от проекта «Инфоурок»

(Свидетельство о регистрации СМИ: Эл №ФС77-60625 от 20.01.2015)

Инфоурок / Информатика / Конспекты / Изучаем язык BASIC. Занятие 13. Заполнение массива случайным образом.
ВНИМАНИЮ ВСЕХ УЧИТЕЛЕЙ: согласно Федеральному закону № 313-ФЗ все педагоги должны пройти обучение навыкам оказания первой помощи.

Дистанционный курс "Оказание первой помощи детям и взрослым" от проекта "Инфоурок" даёт Вам возможность привести свои знания в соответствие с требованиями закона и получить удостоверение о повышении квалификации установленного образца (180 часов). Начало обучения новой группы: 28 июня.

Подать заявку на курс
  • Информатика

Изучаем язык BASIC. Занятие 13. Заполнение массива случайным образом.

библиотека
материалов

Занятие 13

Заполнение массива случайным образом.

Для создания случайных чисел в языке Basic служит стандартная функция RND. Она создает случайное число в диапазоне от 0 до 1. Умножив его на 3, мы получаем случайное число от 0 до 3. А взяв от него целую часть (с помощью функции INT), получим целое случайное число в диапазоне от 0 до 2. Заполнение массива случайными числами из диапазона [x,y] производится с помощью RND по формуле

C=(RND*(yx) + x) – для вещественных чисел, где y > x

C=INT(RND*(yx) + x) – для целых чисел

Пример: для чисел из диапазона [-15,30] C=INT(RND*45– 15)

Пример: Составить программу заполнения массива из 15 элементов случайными числами в диапазоне от -15 до 30. Предусмотреть вывод массива на экран.

CLS

INPUT N
DIM A(N)
FOR I=1 TO N
A(I)= INT(RND*45 – 15 )
NEXT I
PRINT "
Вывод массива"
FOR I=1 TO N
PRINT A(I);
NEXT I
END

CLS - очистка экрана. Точка с запятой (;) в операторе PRINT позволяет выводить элементы массива в строку.

Пример: Вывести количество отрицательных элементов массива.

CLS

INPUT "n", n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*45 – 15 )
PRINT A(I);

NEXT I

k=0
FOR I=1 TO n
IF A(I)<0 THEN k=k+1
NEXT I
PRINT
PRINT "
Число отрицательных элементов: ",k
END

Подсчет количества отрицательных элементов массива происходит в цикле:
FOR I=1 TO n
IF
A(I)<0 THEN k=k+1
NEXT
I

Задача. Задан массив A(N) заполненный целыми числами из диапазона [-25,25]. Найти количество элементов кратных 2, их сумму и среднее арифметическое

CLS

RANDOMIZE TIMER

INPUT "Введите число элементов массива", n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*50 – 25 )

PRINT A(I);

NEXT I
S=0: K=0: SR=0

FOR I=1 TO n
IF A(I)/2=A(I)\2 THEN k=k+1: S=S+A(I)

NEXT I
SR=S/K
PRINT "k= ";k

PRINT “S= “;S

PRINT “SR=”;SR

END

Задача. Задан массив A(N) заполненный целыми числами из диапазона [-19,26]. Найти количество положительных четных элементов не кратных 3, их сумму и среднее арифметическое

CLS

RANDOMIZE TIMER

INPUT "Введите число элементов массива", n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*45 – 19 )

PRINT A(I);

NEXT I
S=0: K=0: SR=0

FOR I=1 TO n
IF A(I)/3<>A(I)\3AND A(I)/2=A(I)\2 AND A(I)>0 THEN k=k+1: S=S+A(I)

NEXT I
SR=S/K
PRINT "k= ";k

PRINT “S= “;S

PRINT “SR=”;SR

END

Пример: Составить программу для вычисления максимального элемента массива А(N), заполненного числами из диапазона [-20,15] и указать его адрес.

CLS
INPUT "
Введите число элементов массива", n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*35 – 20 )

PRINT A(I);

NEXT I
max= - 1000
FOR I=1 TO n
IF A(I)>max THEN max=A(I): K=I
NEXT I
PRINT
PRINT "max= "; max, "
с номером "; K
END

Задание выполняется в строчках:
max=-1000
FOR I=1 TO n
IF A(I)>max THEN max=A(I): K=I
NEXT I
Вначале примем за максимальный элемент – минимальное число -1000. Затем перебирая все элементы по очереди сравниваем их со значение max и если А(I)>max, то принимаем этот элемент за максимальный.

Задача. Составить программу для вычисления минимального элемента массива А(N), заполненного числами из диапазона [-20,15] и указать его адрес.

Задача. Составить программу для вычисления минимального четного элемента массива А(N), заполненного числами из диапазона [-20,15] и найти сумму элементов кратным 7, но не кратных 3.

CLS
INPUT "
Введите n ", n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*35 – 20 )

PRINT A(I);

NEXT I

S=0: min= 1000
FOR I=1 TO n
IF A(I)

IF A(I)/3<>A(I)\3 AND A(I)/7=A(I)\7 THEN S=S+A(I)
NEXT I
PRINT
PRINT "min= "; min, "
с номером "; K
END

Домашнее задание

  1. Задан массив A(N) в диапазоне [-20,16]. Найти сумму положительных элементов расположенных на нечетных позициях и подсчитать их количество.

CLS

INPUT "n", n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*36 – 16 )
PRINT A(I);

NEXT I

S=0 : k=0
FOR I=1 TO n
IF A(I)>0 AND I/2 <> I\2 THEN k=k+1 : S=S+A(I)
NEXT I
PRINT
PRINT "S= "; S; “k=”;k
END


  1. Дано натуральное число N массив A(N) в диапазоне [-21.21]. Найти среднее арифметическое четных элементов массива, если в массиве нет четных элементов, то ответом должно служить произведение ненулевых элементов.

CLS

RANDOMIZE TIMER

INPUT "Введите число элементов массива", n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*42 – 21 )

PRINT A(I);

NEXT I
S=0: K=0: P=1

FOR I=1 TO n
IF I/2=I\2 THEN k=k+1: S=S+A(I)

NEXT I
FOR I=1 TO n
IF k=0 AND A(I)>0 THEN P=P*A(I)

NEXT I
IF k<>0 THEN PRINT "SR= ";S/k

IF k=0 PRINT “P= “;P

END


  1. Задан массив A(N) из диапазона [-15,18] среди элементов, расположенных на четных позициях найти min и указать его номер.

CLS
INPUT "N="; n
DIM A(n)
FOR I=1 TO n
A(I)= INT(RND*33 – 15 )

PRINT A(I);

NEXT I
min= 1000
FOR I=1 TO n
IF A(I)NEXT I
PRINT
PRINT "min= "; min, "
с номером "; K
END



Подайте заявку сейчас на любой интересующий Вас курс переподготовки, чтобы получить диплом со скидкой 50% уже осенью 2017 года.


Выберите специальность, которую Вы хотите получить:

Обучение проходит дистанционно на сайте проекта "Инфоурок".
По итогам обучения слушателям выдаются печатные дипломы установленного образца.

ПЕРЕЙТИ В КАТАЛОГ КУРСОВ

Автор
Дата добавления 23.09.2015
Раздел Информатика
Подраздел Конспекты
Просмотров687
Номер материала ДВ-004622
Получить свидетельство о публикации
Похожие материалы

Включите уведомления прямо сейчас и мы сразу сообщим Вам о важных новостях. Не волнуйтесь, мы будем отправлять только самое главное.
Специальное предложение
Вверх