Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4_Метод_Часть_4_Массивы.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
620.54 Кб
Скачать

1.3. Задачи для дополнительного решения

  1. Дан массив. Напечатать все неотрицательные элементы.

  2. Дан массив целых чисел. Напечатать все четные элементы.

  3. Дан массив чисел. Напечатать второй, четвертый, и т.д. элементы.

Задача 4*. Дан массив. Вывести на экран сначала неотрицательные элементы массива, потом отрицательные.

  1. Дан массив целых чисел. Вывести на экран сначала четные элементы массива, потом нечетные.

  2. Дан двумерный массив. Вывести на экран элементы следующим образом сначала элементы первой строки справа налево, затем второй строки слева направо и т.п.

Задача 7*. Дан двумерный массив. Вывести на экран часть массива расположенную выше главной диагонали (определение главной и побочной диагонали смотри в главе 3.7).

  1. Дан двумерный массив размером. Вывести на экран часть массива расположенную ниже главной диагонали.

  2. Дан двумерный массив размером. Вывести на экран часть массива расположенную выше побочной диагонали.

  3. Дан двумерный массив размером. Вывести на экран часть массива расположенную ниже побочной диагонали.

2. Примеры решения типовых задач с использованием одномерных массивов

2.1. Определение суммы, произведения, количестваэлементов массива

Алгоритм решения

Допускается что начальное значение суммы или количества равно нулю (для произведения за начальное значение принимается 1). Затем циклически производится сложение (перемножение) элементов массива.

Программная реализация

для подсчета суммы

для подсчета произведения

S = 0

FOR i = 1 TO n

S = S + A(i)

NEXT i

P = 1

FOR i = 1 TO n

P = P * A(i)

NEXT i

п ример 3

Дан массив чисел. Найти сумму положительных элементов.

Тест

Данные

Результат

N=5

A=(3, 5, -2, 4, 0)

S=12

Исполнение алгоритма

i

Проверка условия

S

0

1

A(1)>0 (истина)

3>0

0+A(1)=0+3=3

2

A(2)>0 (истина)

5>0

A(1)+А(2)=3+5=8

3

А(3)>0 (ложь)

-2<0

сумма остается прежней

4

A(4)>0 (истина)

4>0

A(1)+А(2)+А(4)=3+5+4=12

5

А(3)>0 (ложь)

0=0

сумма остается прежней

Блок-схема алгоритма

Начало

Ввод n

i=1,n

Ввод Ai

S=0

i=1,n

+ Ai > 0 -

S = S+Ai

S

Конец

программа

CLS

INPUT "введи размер массива " ; n

DIM A%(n)

PRINT "введи массив"

'Цикл по элементам массива

FOR i = 1 TO n

'Ввод элементов массива

INPUT A(i)

NEXT i

'Присваивание начального значения суммы

S = 0

FOR i = 1 TO n

'Суммирование положительных элементов массива

IF A(i) > 0 THEN S = S + A(i)

NEXT i

PRINT "Сумма положительных элементов ="; S

END

пример 4

Дан массив целых чисел. Найти количество четных и нечетных значений.

программа

CLS

INPUT "введи размер массива " ; n

DIM A%(n)

PRINT "введи массив"

FOR i = 1 TO n

'Ввод элементов массива

INPUT A(i)

NEXT i

'Задание начального значения счетчиков количества четных и нечетных элементов.

K1 = 0

K2 = 0

FOR i = 1 TO n

'Проверка элементов массива на четность

IF A(i) MOD 2 = 0 THEN K1 = K1 + 1 ELSE K2 = K2 + 1

NEXT i

PRINT "количество четных элементов ="; K1

PRINT "количество нечетных элементов ="; K2

END