1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Босова (Сам и контр)
Вариант 1 Самостоятельная работа 4 ГДЗ Самостоятельные и контрольные работы Босова 9 класс (Информатика)
Босова, Босова, Лобанов
9 класс
Автор
Босова, Босова, Лобанов

Вариант 1 Самостоятельная работа 4 ГДЗ Самостоятельные и контрольные работы Босова 9 класс (Информатика)

Задача

ОДНОМЕРНЫЕ МАССИВЫ ЦЕЛЫХ ЧИСЕЛ
ВАРИАНТ 1
1. Дан одномерный массив а из шести элементов:
-125 200 10 6 43 11
1) Как объявить этот массив в программе, записанной на языке Паскаль?
2) Чему равно значение элемента массива с индексом 4?
3) Чему равно значение элемента массива а [а [4] ]?
1)
Паскаль:
Переменный массив:
var
a: array [1..6] of integer=(-125,200,10,6,43,11);
Если массив постоянный:
const
a: array [1..6] of integer = (-125,200,10,6,43,11)
Python:
from array import*
a = array (‘i’, [-125, 200, 10, 6, 43,11])
Или списком:
a = [-125, 200, 10, 6, 43,11]
2)
6
3)
11
2. Программа обрабатывает одномерный целочисленный массив Dat:
і 1 2 3 4 5 6 7 8 9 10
Dat [і] 70 80 90 100 80 40 40 70 80 90
Заполните трассировочную таблицу и определите, какие числа будут выведены в результате выполнения следующего фрагмента программы.
Ответ: m=40 k=6
3. Дополнительное задание. Программисту было поручено написать программу нахождения суммы отрицательных элементов одномерного целочисленного массива. Программист разработал программу, но допустил в ней одну ошибку. Текст программы с ошибкой представлен ниже:
program nl;
var а: array [1..8] of integer;
s, k: integer;
begin
for k := 1 to 8 do readln (a[k]);
s := 0;
for k := 1 to 8 do
if a[k] < 0 then s := s + a[l]; writein(s) end Каким окажется ответ после исполнения этой программы, если в качестве элементов массива будут введены числа 1, 2, 3, 4, -1, -2, -3, -4? Как исправить программу, чтобы она решала поставленную перед программистом задачу? Вывод программы по представленному варианту: 4 (четыре раза сложит первый элемент массива, который равен 1) Ошибка: s:=s+a[1] Исправление: s:=s+a[k]

Подробный ответ

1) Массив из шести элементов можно объявить в Паскале так:

var
a: array [1..6] of integer = (-125, 200, 10, 6, 43, 11);

Если массив задаётся как константа, то:

const
a: array [1..6] of integer = (-125, 200, 10, 6, 43, 11);

2) Элемент с индексом 4 равен $$a[4]=6$$.

3) Тогда $$a[a[4]] = a[6] = 11$$.

2. По трассировочной таблице видно, что после выполнения программы получаются значения $$m=40$$ и $$k=6$$.

3. В программе ошибка в строке сложения: вместо текущего элемента массива используется первый элемент. Поэтому при данных $$1, 2, 3, 4, -1, -2, -3, -4$$ программа сложит отрицательные элементы, но каждый раз прибавит $$a[1]=1$$. Таких элементов четыре, значит результат будет:

$$s=1+1+1+1=4$$

Исправленная строка:

s := s + a[k];

Ответ

1)

var
a: array [1..6] of integer = (-125, 200, 10, 6, 43, 11);

2) $$6$$

3) $$11$$

2. $$m=40,\ k=6$$

3. Вывод программы: $$4$$. Исправление: s := s + a[k];



Общая оценка
3.7 / 5
Другие учебники
Другие предметы