М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
FOXI66666
FOXI66666
11.10.2021 05:15 •  Информатика

For i: = 0 to 9 do;

a[i]: = i + 1;

t: =a[0];

for i: = 1 to 9 d0;

a[i-1]: =a[i];

a[9]: =t;

👇
Ответ:
Kinder2571
Kinder2571
11.10.2021

В результате элементы массива А равны

A[0] := 2   A[1] := 3   A[2] := 4   A[3] := 5   A[4] := 6  

A[5] := 7   A[6] := 8   A[7] := 9   A[8] := 10   A[9] := 1

Объяснение:

Сначала задаются элементы массива с индексами от 0 до 9 равные от 1 до 10.

Затем переменной t присваивается значение первого элемента массива (с индексом 0 и равного 1).

Потом происходит сдвиг значений элементов на один влево по индексу (первый элемент с индексом 0 становится равным второму элементу с индексом 1 и т.д. до 8 элемента).

В конце последнему элементу массива с индексом 9 присваивают значение их переменной t.

for i := 0 to 9 do A[i] := i + 1;

A[0]:= 0 + 1 = 1

A[1] := 1 + 1 = 2

A[2] := 2 + 1 = 3

A[3] := 3 + 1 = 4

A[4] := 4 + 1 = 5

A[5] := 5 + 1 = 6

A[6]  :=6 + 1 = 7

A[7] := 7 + 1 = 8

A[8] := 8 + 1 = 9

A[9] := 9 + 1 = 10

t := A[0];

t := 1

for i:= 1 to 9 do A[i-1] := A[i];

A[1-1] := A[1]       A[0] := 2

A[2-1] := A[2]       A[1] := 3

A[3-1] := A[3]       A[2] := 4

A[4-1] := A[4]       A[3] := 5

A[5-1] := A[5]       A[4] := 6

A[6-1] := A[6]       A[5] := 7

A[7-1] := A[7]       A[6] := 8

A[8-1] := A[8]       A[7] := 9

A[9-1] := A[9]       A[8] := 10

A[9] := t;

A[9] := 1

4,6(86 оценок)
Открыть все ответы
Ответ:
Tusovik
Tusovik
11.10.2021

Так как язык не указан, приведу пример на SWI-Prolog.

Код:

read_int(Int) :- read(Int), integer(Int).split_int_by_numbers(0, []) :- !.split_int_by_numbers(N, [Number|Ints]) :- Number is mod(N, 10), RestN is div(N, 10), split_int_by_numbers(RestN, Ints).test_to_div(_, []).test_to_div(N, [Number|Ints]) :- mod(N, Number) =:= 0, test_to_div(N, Ints). test(Int) :- split_int_by_numbers(Int, Numbers), test_to_div(Int, Numbers), write(Int), write(" - Yes!"), nl.test(Int) :- write(Int), write(" - No!"), nl.?- read_int(Int), test(Int).
Напишите программу: С клавиатуры вводится трёхзначное число (число десятков и число единиц не равна
Напишите программу: С клавиатуры вводится трёхзначное число (число десятков и число единиц не равна
Напишите программу: С клавиатуры вводится трёхзначное число (число десятков и число единиц не равна
4,6(3 оценок)
Ответ:
allonso
allonso
11.10.2021
1. В "реальном мире" это решается примерно так:

// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
begin
  var a:=ArrRandom(ReadInteger('n='),0,2); a.Println;
  a.Sorted.Println
end.

Тестовое решение:
n= 15
1 2 0 2 2 0 2 0 2 0 0 1 0 0 2
0 0 0 0 0 0 0 1 1 2 2 2 2 2 2

2. Но, поскольку считается, что школьникам больше заняться нечем, их заставляют писать примерно в таком стиле (и время займет, и ощибок понаделают):

// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
const
  nn=100;
var
  i,j,n,t:integer;
  a:array[1..nn] of integer;
begin
  Write('n='); Read(n);
  Randomize;
  for i:=1 to n do begin
    a[i]:=Random(3);
    Write(a[i],' ')
    end;
  Writeln;
  for i:=1 to n-1 do
    for j:=1 to n-1 do
      if a[j]>a[j+1] then begin
        t:=a[j]; a[j]:=a[j+1]; a[j+1]:=t
        end;
  for i:=1 to n do Write(a[i],' ');
  Writeln;
end.

Тестовое решение:
n=15
0 1 1 0 2 1 0 2 1 2 1 0 0 2 0
0 0 0 0 0 0 1 1 1 1 1 2 2 2 2
4,5(50 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ