В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
DanilNaumov
DanilNaumov
26.01.2022 16:05 •  Информатика

В программе описан одномерный целочисленный массив с индексами от 0 до 10. В приведенном ниже фрагменте программы массив сначала заполняется, а потом изменяется:
нц для i от 0 до 10
A[i]:= i – 1
кц
нц для i от 1 до 10
A[i-1]:= A[i]
кц
A[10] := 10
Как изменяются элементы этого массива?
​1) все элементы, кроме последнего, окажутся равны между собой
​2) все элементы окажутся равны своим индексам
​3) все элементы, кроме последнего, сдвигаются на один элемент вправо
​4) все элементы, кроме последнего, уменьшаются на единицу
2) Определите значение целочисленных переменных a и b после выполнения фрагмента программы:
a := 1819;
b := (a div 100)*10+9;
a := (10*b–a) mod 100;
3) Определите значение переменной s после выполнения следующего фрагмента программы:
n := 4;
s := 0;
цн пока n <= 8
s := s + 15;
n := n + 1
кц
4) Определите значение переменной с после выполнения следующего фрагмента программы:
a := 30;​
b := 6;​
a := a * 3 div b;​
если a< b
то с:= 2*a - 10* b
иначе с:= 2*a + 10* b;
все
5) В таблице Ball хранятся отметки по контрольной работе (Ball[1] – отметка 1 ученика, Ball[2] – отметка 2 ученика и т.д.). Определите, что будет напечатано в результате работы следующего алгоритма. Объясните, что определяется в данном алгоритме.
алг
нач
цел k, c
целтаб Ball[1:10]
c:=0;
Ball[1]:=4; Ball[2]:=5; Ball[3]:=3; Ball[4]:=4;
Ball[5]:=2; Ball[6]:=5; Ball[7]:=4; Ball[8]:=3; Ball[9]:=4; Ball[10]:=5;
нц для k от 1 до 10
если Ball[k] >3
то c:=c+1;
все
кц
вывод c
кон

Показать ответ
Ответ:
браинли56
браинли56
25.02.2021 12:45
R=A+B+C, где
A=53₁₀,
B=653₈,
C=DA₁₆,
R=R₂
Эту задачу можно решать разными выбор зависит от умения решающего выполнять сложение в той или иной системе счисления. Но в любом варианте, сначала нужно представить А, В, С в какой-то одной системе счисления.

Посмотрим, как это будет выглядеть, если пользоваться привычной нам десятичной системой.
653₈ = 6·8²+5·8¹+3·8⁰ = 6·64+5·8+3 = 427
DA₁₆ = 13·16¹+10·16⁰ = 218
R₁₀ = 53+427+218 = 698
Переводим полученное число в двоичную систему, получая R₂:
698/2=349, остаток 0
349/2=174, остаток 1
174/2=87, остаток 0
87/2=43, остаток 1
43/2 =21, остаток 1
21/2=10, остаток 1
10/2=5, остаток 0
5/2=2, остаток 1
2/2=1, остаток 0
1/2=0, остаток 1
Выписываем остатки в обратном порядке: 1010111010.
Это и есть ответ.

А теперь допустим, что мы хорошо владеем восьмеричной системой счисления.
1) получим А₈
53/8=6, остаток 5
6/8=0, остаток 6
Выписываем остатки в обратном порядке: А₈=65
2) получим С₈, для чего перейдем сначала в двоичную систему
С₂=1101 1010 (просто заменяем каждую цифру четырьмя двоичными).
А теперь разобьем справа налево полученное значение по три разряда и каждую полученную триаду заменим восьмеричной цифрой.
11 011 010₂ = 332₈
3) Выполним сложение R₈=A₈+B₈+C₈
    65          740
+653        +332
       
  740        1272
Складывать в восьмеричной системе просто, если знать одну маленькую хитрость. 8 отличается от 10 на 2, поэтому и результат сложения в восьмеричной системе на 2 больше, чем в десятичной, если число превышает 7. Смотрим: 5+3=8, но это в десятичной, а в восьмеричной это на 2 больше, т.е. 10. Поэтому мы пишем 0 и +1 идет в следующий разряд. 6+5=11 и еще +1 от переноса, итого 12. Но в восьмеричной на 2 больше, т.е. 14. 4 пишем. +1 перенос. 6 и +1 от переноса - 7. Вот и получили 740.
4) Мы нашли R₈, переходим к R₂.
Заменяем каждую восьмеричную цифру тремя двоичными:
1272₈=1 010 111 010₂
Мы получили тот же ответ, что и в предыдущем расчета.

Так что - дело привычки. Второй вариант кажется "непосвященному" сложнее, но на самом деле в нем меньше арифметики и если нет под рукой калькулятора, то может оказаться и быстрее, и удобнее.

ответ: 1010111010
0,0(0 оценок)
Ответ:
milana0512
milana0512
12.11.2020 20:45
{1}

const
 n = 6;
var
 a:array[1..n,1..n] of integer;
 i,j:integer;
 t:integer;

begin
 for i := 1 to n do
 for j := 1 to n do
  read(a[i,j]);
 
 for j := 1 to n div 2 do
 for i := 1 to n do
  begin
  t := a[i,j];
  a[i,j] := a[i,n+1-j];
  a[i,n+1-j] := t;
  end;
 
 for i := 1 to n do
  begin
  writeln;
  for j := 1 to n do
    write(a[i,j],' ');
  end
end.

{2}

const
 n = 6;
var
 a:array[1..n,1..n] of integer;
 i,j:integer;
 t:integer;

begin
 for i := 1 to n do
 for j := 1 to n do
  read(a[i,j]);
 
 for i := 1 to n do
 for j := i+1 to n do
  begin
  t := a[i,j];
  a[i,j] := a[j,i];
  a[j,i] := t;
  end;
 
 for i := 1 to n do
  begin
  writeln;
  for j := 1 to n do
    write(a[i,j],' ');
  end
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота