Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемЛидия Родина
1 1 Одномерные массивы Типовые алгоритмы A( I) номер элемента
2 2 Ввод одномерного массива При вводе одномерного массива необходимо организовать цикл : - цикл (по столбцам) Порядок ввода элементов определяется порядком изменения индексов в программе и для приведенной программы является следующим: А(1,1) А(1,2)…..А(1,м) A(1) A(2) ….A(m) CLS 1 INPUN введите количество столбцов; M IF M M THEN PRINT ошибка ввода: GOTO 1 DIM A(M) FOR I=1 TO M цикл по столбцам PRINT введите элемент ;J;-го столбца INPUT A(I) NEXT I
3 3 ВЫВОД ОДНОМЕРНОГО МАССИВА Одномерные массивы можно выводить в в строку или с столбец. PRINT распечатка исходного массива FOR J=1 TO M PRINT A(J); NEXT J Наглядность вывода может быть нарушена, если элементы массива А в памяти ЭВМ представляются различным числом значащих цифр. Для улучшения наглядности в этом случае можно предложить 3 способа: 1. В операторе PRINT вместо ( ; ) поставить (, ), если количество элементов не превышает Вывод всех элементов массива по единому формату с использованием оператора PRINT USING. 3. Вывод в столбец.В операторе PRINT (;) опускается.
4 4 Суммирование элементов одномерного массива Для одномерного массива необходимо вычислить : REM вычисление сумма элементов массива S=0 FOR J=1 TO M S=S+A(J) NEXT J PRINT сумма=;S
5 5 Суммирование и определение числа элементов массива,удовлетворяющих заданному условию. Для решения задачи надо организовать цикл по i и для каждого значения i проверять условие (T-заданное число). Если условие истинно,происходит накопление числа элементов и переход к следующему,иначе переход к следующему элементу. REM вычисление суммы и количества элементов массива _ удовлетворяющих задaнному условию S=0:K=0 FOR I=1 TO M IF A(I)
6 6 Cуммирование двух массивов одинаковой размерности`` Для одномерных массивов А(m) и В(m) необходимо вычислить Сj=Аj+Вj, j=1…m REM Алгоритм суммирования с формированием _третьего массива С(m) DATA 100 READ M DIM A(M),B(M),C(M) FOR J=1 TO M PRINT введите ;J;элемент массива А; INPUT A(J) PRINT введите ;J;элемент массива В; INPUT B(J) NEXT J FOR J=1 TO M C(J)=A(J)+B(J) NEXT J PRINT массив A(M),массивB(M),результат суммы C(M) FOR J=1 TO M PRINT A(J),B(J),C(J) NEXT J
7 7 Объединение двух массивов в один с чере- дованием элементов исходных массивов. Требуется объединить два массива А(М),В(М) и один массив С, который будет содержать 2М элементов,т.е. получить массив С= м-1 м н ч н ч н ч Можно заметить,что индекс элемента массива С зависит от индекса пересылаемого в него элемента массива А(или В),а именно, (т.к. элементы массива А стоят на нечетных местах) (элементы массива В стоят на четных местах). Т.о. организовав цикл и выполнив для каждого элемента эти присваивания мы решим задачу М-1м
8 8 Программа объединения массивов READ M DIM A(M),B(M),C(M) FOR J=1 TO M PRINT введите ;J;элемент массива А; INPUT A(J) PRINT введите ;J;элемент массива В; INPUT B(J) NEXT J REM Объединение массивов FOR I=1 TO М С(2*I-1)=A(I) C(2*I)=B(I) NEXT I PRINT Объединенный массив C(2*M) FOR I=1 TO 2*M PRINT C(I) NEXT I
9 9 Инвертирование массива. В массиве А(М) поменять местами элементы: A(N) A(1)_ A (N-1) A(2) и т.д. просмотр до половины массива A(N) Если количество элементов четное, параметр цикла изменяется FOR I=1 TO N\2. Если количество элементов не четное, параметр цикла изменяется FOR I=1 TO N\2 +1. или до N\2- центральный элемент массива остается без изменения
10 10 Программа инвертирования массива CLS REM МАССИВА А(N) DEFINT I-N OPTION BASE 1 1 INPUTВведите кол-во элементов;N IF N
11 11 Удаление элемента из массива Требуется удалить К-ый элемент из массива А (N),N-количество элементов в массиве. Удалить элемент,расположенный на К-ом месте в массиве, можно, сдвинув весь «хвост» массива, начиная с (К+1)-го элемента, на одну позицию влево,т.е. выполняя операцию,I=K,K+1…N-1 СХЕМА УДАЛЕНИЯ A(1) A(2) A(3) A(4) A(5) A(6) A(7) A(8) A(9) k k+1,,,,, N-1 N
12 12 Программа удаления элемента из массива CLS REM УДАЛЕНИЕ ЭЛЕМЕНТА ИЗ МАССИВА DEFINT I-N OPTION BASE 1 DATA 20 READ N DIM A(N) FOR I=1 TO N PRINT ВВЕДИТЕ;I;ЭЛЕМЕНТ МАССИВА INPUT A(I) NEXT I REM 1 INPUT ВВЕДИТЕ НОМЕР УДАЛЯЕМОГО ЭЛЕМЕНТА;K IF K N THEN 1 FOR I=K TO N-1 A(I)=A(I+1) NEXT I N=N-1 PRINT МАССИВ ПОСЛЕ УДАЛЕНИЯ FOR I=1 TO N PRINT A(I); NEXT I END
13 13 Включение элемента в заданную позицию массива Перед включением элемента в массив в К-ую позицию необходимо раздвинуть массива, т.е. передвинуть «хвост » массива вправо на одну позицию, выполняя операцию, i=N,N-1,…,K (т.к. передвигаем «хвост» ). Перемещение элементов массива нужно начинать с конца. В противном случае весь «хвост» будет заполнен элементом А(К). Далее, К-ому элементу присваивается значение В (введенное с клавиатуры). Размер массива увеличивается на 1. СХЕМА ВКЛЮЧЕНИЯ А(1) А(2) А(3) А(4) А(5) А(6) А(7) А(8) А(9) резервная К ячейка А(10)
14 14 ПРОГРАММА ВКЛЮЧЕНИЕ ЭЛЕМЕНТА В МАССИВ CLS REM ВКЛЮЧЕНИЕ ЭЛЕМЕНТА В МАССИВ DEFINT I-N OPTION BASE 1 REM Ввод данных DATA 100,-76.3,7 READ N,B,K DIM A(N) FOR I=1 TO N PRINT ВВЕДИТЕ ;I;ЭЛЕМЕНТ INPUT NEXT I REM ПЕРЕМЕЩЕНИЕ ЭЛЕМЕНТОВ В МАССИВЕ НАЧИНАЯ ОТ ПОСЛЕДНЕГО N-го REM К К -ОМУ FOR I= N-1 TO K STEP (-1) A(I+1)=A(I) NEXT I A(K)=B: N=N+1 PRINT МАССИВ ПОСЛЕ ВКЛЮЧЕНИЯ ЭЛЕМЕНТА FOR I=1 TO N PRINT A(I); NEXT I END
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.