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

У исполнителя Утроитель две команды, которым присвоены номера:
1. прибавь 1
2. умножь на 3
Сколько есть программ, которые число 1 преобразуют в число 20?

*можно без решения*

Показать ответ
Ответ:
refwqef
refwqef
18.04.2020 08:50
//Pascal ABC.NET v3.0 сборка 1111

var
 i,a,b:integer;
 ar:array[1..10] of integer;

 procedure oddDec(var a,b:integer);  //подпрограмме переданы аргументы a и b
//процедура для вычитания в нечётном элементе
begin;
a:=a-b;
end;

procedure NotoddInc(var a,b:integer); //подпрограмме переданы аргументы a и b
//процедура для сложения в чётном элементе
begin;
a:=a+b;
end;

begin
randomize;
readln(a); //ввод a
readln(b); //ввод b
writeln('Array:');
for i:=1 to 10 do //весь массив
 begin;
  ar[i]:=random(-20,80); //случайные числа от -20 до 80 включительно
  write(ar[i]:4); //вывод
  if odd(i) then oddDec(ar[i],b) else NotoddInc(ar[i],a);
  {если нечётное, то первая процедура, иначе вторая. Обращаю внимания на то, что элементы меняются сразу после вывода}
 end;
writeln;
writeln('Final array:'); //вывод получившегося массива
for i:=1 to 10 do
write(ar[i]:4);
end.

Пример ввода:
20
10
Пример вывода:
Array:
  10  16   0  60  23   4  22 -20   4  55
Final array:
   0  36 -10  80  13  24  12   0  -6  75  
0,0(0 оценок)
Ответ:
dgrigoref
dgrigoref
19.06.2022 11:18
Программа, которая использует два массива

var 
c, a: array[1..20] of integer; 
i: integer;
begin 
write('Первый массив '); 
for i := 1 to 20 do   begin   
c[i] := i * (-5);   
write(c[i], ' '); 
end; 
writeln; 
write('Преобразованный массив '); 
for i := 1 to 20 do   begin   
a[i] := c[20 - i + 1];   
write(a[i], ' '); 
end;  
end.

ИЛИ  Программа не использующая два массива, а просто переворачивающая первый

var 
c: array[1..20] of integer; 
i: integer;
begin  write('Первый массив '); 
for i := 1 to 20 do   begin   
c[i] := i * (-5);   
write(c[i], ' '); 
end; 
writeln; 
write('Преобразованный массив '); 
for i := 20 downto 1 do  write(c[i], ' '); 
end.

Обе программы работают!
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота