В программе используется одномерный целочисленный массив A с индексами от 0 до 9. Значения элементов равны 6; 9; 7; 2; 1; 5; 0; 3; 4; 8 соответственно,
5-9 класс
|
т.е. A[0] = 6; A[1] = 9 и т.д.
Определите значение переменной c после выполнения следующего фрагмента программы.
c := 0;
for i := 1 to 9 do
if A[i - 1] < A[i] then begin
c := c + 1;
t := A[i];
A[i] := A[i - 1];
A[i - 1] := t
end;
получится походу вот такой порядок: 9 7 5 3 4 8, я не совсем уверен
Решение: В программе используется одномерный целочисленный массив A с индексами от 0 до 9. Значения элементов равны 6, 9, 7, 2, 1, 5, 0, 3, 4, 8 соответственно, т.е. A[0] = 6, A[1] = 9 и … A[8] = 8 Определим значение переменной c после выполнения следующего фрагмента этой программы, записанного ниже на языке программирования Паскаль: c := 0; for i := 1 to 9 do if A[i-1] < A[i] then begin c := c + 1; t := A[i]; A[i] := A[i-1]; A[i-1] := t; end; Данный алгоритм делает значение текущего элемента равным значению предыдущего элемента, если значение предыдущего элемента меньше текущего. Изначальный порядок значений: 6, 9, 7, 2, 1, 5, 0, 3, 4, 8. 6 Первое изменение элементов: 9, 6, 7, 2, 1, 5, 0, 3, 4, 8. 6 Второе изменение элементов: 9, 7, 6, 2, 1, 5, 0, 3, 4, 8. Далее 6>2 и 2>1 не меняем, a 1 Третье изменение элементов: 9, 7, 6, 2, 5, 1, 0, 3, 4, 8. Далее 1>0 не меняем, но 0 Четвертое изменение элементов: 9, 7, 6, 2, 5, 1, 3, 0, 4, 8. 3>0 не меняем, но 0 пятое изменение элементов 9, 7, 6, 2, 5, 1, 3, 4, 0, 8. 0 Последнее изменение элементов: 9, 7, 6, 2, 5, 1, 3, 4, 8, 0. Всего изменение элементов массива произошло 6 раз. Переменная с увеличивается только в том случае, когда выполняется логическое условие c := c + 1; 1. с=0+1=1 2. с=1+1=2 3. с=2+1=3 4. с=3+1=4 5. с=4+1=5 6. с=5+1=6 Следовательно, переменная c = 6. Ответ: 6.
Другие вопросы из категории
рассуждения, кодирование, структурирование, поиск) будет производиться
при выполнении следующих действий:
а)
Радист записывает на русском языке сообщение, полученное с помощью азбуки Морзе
б)
момент броска мяч находится на высоте 2 м.
Читайте также
сначала задаются, а затем меняются.
For i:=0 to 10 do
A[i]:=i;
t:=A[0];
for i:=1 to 10 do
A[i-1]:=a[i];
A[10]:=t
Чему будут равны элементы этого массива?
1) 10 10 10 10 10 10 10 10 10 10
2)1 2 3 4 5 6 7 8 9 10 0
3) 0 0 0 0 0 0 0 0 0 0
4) 1 2 3 4 5 6 7 8 9 10 1
до 10. В приведенном ниже фрагменте программы массив сначала
заполняется, а потом изменяется:
for i:=0 to 10 do
A[i]:= i + 1;
for i:=1 to 10 do
A[i]:= A[i-1];
Как изменяются элементы этого массива?
1) все элементы, кроме последнего, сдвигаются на 1 элемент вправо
2) все элементы, кроме первого, сдвигаются на 1 элемент влево
3) все элементы окажутся равны 1
4) все элементы окажутся равны своим индексам
удваиваются , а элементы с нечетными индексами утраивает.Выведите на экран исходный и полученный массив.
б)составьте программу ,которая заполняет массив b[1..8 ] случайными целыми числами в диапозоне от 1 до 10 , затем изменяет знак элементов с четными индексами на противоположный .Выведите на экран исходный и полученный массивы.
5) а)составьте программу ,которая заполняет массив а[1..10 ] случайными целыми числами в диапозоне от 1 до 10 ,и находит количество элементов ,которые больше своего соседа слева
б)составьте программу ,которая заполняет массив b[1..8 ] случайными целыми числами в диапозоне от 1 до 10 и находит количество пар элементов с четными значениями.
6) а)составьте программу ,которая заполняет массив а[1..20 ] случайными целыми числами в диапозоне от 1 до 10 ,и находит среднее арифметическое элементов с четными значениями и нечетными индексами.
б) составьте программу ,которая заполняет массив b[1..15 ] случайными целыми числами в диапозоне от 1 до 20 и выводит все тройки элементов , упорядоченные строго по возрастанию.
изменяеться: for i:=0 to 10 do A[i]:= i + 1; for i:=1 to 10 do A[i]:= A[i-1]; Как изменяються элементы этого массива? 1) все элементты, кроме последнего, сдвинаются на 1 элемент вправо 2) все элементы, кроме первого, сдвигаются на 1 элемен влево 3) все элементы окажутся равны 1 4) все элементы окажутся равны своим индексам
удваиваются , а элементы с нечетными индексами утраивает.Выведите на экран исходный и полученный массив.
б)составьте программу ,которая заполняет массив b[1..8 ] случайными целыми числами в диапозоне от 1 до 10 , затем изменяет знак элементов с четными индексами на противоположный .Выведите на экран исходный и полученный массивы.
5) а)составьте программу ,которая заполняет массив а[1..10 ] случайными целыми числами в диапозоне от 1 до 10 ,и находит количество элементов ,которые больше своего соседа слева
б)составьте программу ,которая заполняет массив b[1..8 ] случайными целыми числами в диапозоне от 1 до 10 и находит количество пар элементов с четными значениями.
6) а)составьте программу ,которая заполняет массив а[1..20 ] случайными целыми числами в диапозоне от 1 до 10 ,и находит среднее арифметическое элементов с четными значениями и нечетными индексами.
б) составьте программу ,которая заполняет массив b[1..15 ] случайными целыми числами в диапозоне от 1 до 20 и выводит все тройки элементов , упорядоченные строго по возрастанию.
напишите хоть какое нибудь нужно к завтрому срочно