простейшие приемы обработки одномерных массивов

advertisement
ПРОСТЕЙШИЕ ПРИЕМЫ ОБРАБОТКИ ОДНОМЕРНЫХ МАССИВОВ
Следующие программы выполняют роль обзорных работ.
Задача 1
С помощью оператора INPUT ввести массив A(N), N=7 и найти сумму значений всех его элементов.
Решение. Бейсик.
10
20
30
40
50
60
70
80
DIM А(7)
S=0
FOR 1=1 ТО 7
INPUT A(I)
S=S+A(I)
NEXT I
PRINT "S = ";S
END
Задача 2
Операторами READ и DATA ввести массив A(N), N = 7, вывести значения его элементов на экран, найти
сумму значений элементов, стоящих в массиве на четных местах.
А = {4, -7, 34, -14, 73, 86, -92}.
Решение. Бейсик. 10 DIM А(7)
20 DATA 4, -7, 34, -14, 73, 86, -92
30 PRINT "Элементы массива А"
40 FOR 1=1 ТО 7
50 READ A(I)
60 PRINT A(I)
70 NEXT I
75 S=0
80 FOR 1=2 ТО 7 STEP 2
90 S=S+A(I) 100 NEXT I 110 PRINT "S =";S 120 END
Задача 3
Дан массив F(N), N = 10. F = {17, -2, 0, 16, -4, -13, 9, 44, 39, -14}. Найдите сумму значений элементов
массива, которые удовлетворяют условию -10 < F(I) < 20. Замените элементы массива, значения которых
являются отрицательными числами, числом 100. Полученные результаты выведите на экран.
Решение. Бейсик.
10 DIM F(10)
20 DATA 17, -2, 0, 16, -4, -13, 9, 44, 39, -14
30 PRINT "Массив F"
40 FOR 1=1 TO 10
50 READ F(I)
60 PRINT F(I)
70 NEXT I
75 S=0
80 FOR I = 1 TO 10
90 IF F(I)>-10 AND F(I)<20 THEN 100 ELSE 110 100 S = S+F(I) 105 NEXT I 110 PRINT "S=";S 120 FOR
1=1 TO 10 130 IF (I)<0 THEN F(I)=100 140 NEXT I 150 FOR 1=1 TO 10 160 PRINT F(I) 170 NEXT I 180
END
Задача 4
Дан массив F(N), N=10. F={33, -2, 33, 16, -4, 33, 9, 44, 33, -14). Найдите сумму таких элементов массива,
значения которых не равны 33. Подсчитайте, сколько раз в массиве встречаются элементы, значения
которых равны 33. Полученные результаты выведите на экран.
Решение. Бейсик.
10 DIM F(10)
20 DATA 33, -2, 33, 16, -4, 33, 9, 44, 33, -14
30 S=0: L=0
40 FOR 1=1 TO 10
50 READ F(I)
60 NEXT I
70 FOR 1=1 TO 10
80 IF F(I)=33 THEN L=L+1 ELSE S=S+F(I)
90 NEXT I 100 PRINT "S =";S
110 PRINT "Элементов, значения которых не равны 33 -' 120 END
;L
Задача 5
Дан массив R(N), N = 7. R = {12, -12, 49, 16, -4, 33, 94}. Значения элементов данного массива увеличьте в два
раза и поместите их в новый массив S(N). Подсчитайте, сколько раз в массиве R встречаются элементы,
значения которых являются отрицательными числами. Полученные результаты выведите на экран.
Решение. Бейсик.
10
20
30
40
50
60
70
DIM R(7) ,S(7)
DATA 12, -12, 49, 16,
FOR 1=1 TO 7
READ R(I)
PRINT R(I)
NEXT I
L=0
FOR 1=1 TO 7
IF R(I)<0 THEN L=L+l
-4, 33, 94
80 90
;L
100 S(I)=2*R(I)
110 NEXT I
130 PRINT "Элементов, значения которых < -'
140 FOR 1=1 TO 7
150 PRINT R(I) , S(I)
160 NEXT I
170 END
Задача 6
Ввести массив R(N), N = 1. R={12,-12, 49, 16, -4, 33, 94}. Определите порядковый номер элемента, значение
которого равно 49. Поменяйте местами элемент, значение которого равно 49, и первый элемент массива.
Полученные результаты выведите на экран.
Решение.
Бейсик.
10 DIM R(7)
20 DATA 12, -12, 49, 16, -4, 33, 94
40 FOR 1=1 TO 7
50 READ R(I)
60 PRINT R(I)
70 NEXT I
80 FOR 1=1 TO 7
90 IF R(I)=49 THEN L=I 100 NEXT I 130 PRINT "Элемент, значение которого равно 49, имеет
порядковый
номер - "; L 140 T=R(1) 150 R(1)=R(L) 160 R(L)=T 170 FOR 1=1 TO 7 180 PRINT R(I) 190 NEXT I 200
END
Задача 7
Ввести массив A(N), N = 10. A = {4, -9, 12, -3, -2, 15, 14, 22, 40,-100}. Подсчитать количество элементов
массива, значения которых кратны 2. Заменить элементы массива, значения которых являются
отрицательными числами, числом 111. Полученные результаты выведите на экран.
Решение. Бейсик.
10 DIM А(10)
20 DATA 4, -9, 12,-3, -2, 15, 14, 22, 40, -100
30 L=0
40 FOR 1=1 ТО 10
50 READ A(I)
60 PRINT A (I)
70 NEXT I
80 FOR 1=1 TO 10
90 Q=A(I)/2: Q1=INT(Q): R=Q-Q1
95 IF R=0 THEN PRINT "Значение элемента кратно 2": L=L+1 100 NEXT I
110 PRINT "Элементов, значения которых кратны 2 -";L 120 FOR 1=1 TO 10 130 IF A(I)<0 THEN
A(I)=lll 140 PRINT A (I) 150 NEXT I 160 END
Download