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

Каждая цифра представлялась с трёх символов, имевших значения:

«ракушка» * — ноль,
«точка» . — один,
«черта» | — пять.
Комбинация этих символов являлась корректной записью цифры, если: сумма их значений равна значению записываемой цифры, количество использованных символов минимально, символы «точка» предшествуют символам «черта». Например, цифра три записывалась как "..." , а цифра двенадцать — как "..||".

Требуется по двум заданным в записи майя числам определить их сумму и представить в той же записи.

Входные данные
Входной файл состоит из двух строк, в каждой из которых находится по одному натуральному числу в записи майя. Символ «ракушка» обозначается '*' (ASCII 42), «точка» — '.' (ASCII 46), «черта» — '|' (ASCII 124). Разряды отделяются друг от друга пробелом (ASCII 32). Оба числа не превосходят 109. Строки во входном файле содержат от 1 до 255 символов.
Выходные данные
Выходной файл должен содержать единственную строку — сумму чисел из входного файла в записи майя.
Примеры тестов
входные данные
.
..
выходные данные
...
входные данные
.. | .||
| ..||
выходные данные
.. .|| ...
входные данные
.|
|
выходные данные
|||

Показать ответ
Ответ:
viktorpadalck
viktorpadalck
08.11.2021 12:54
А)
var    s:string;    mas:array ['a'..'z'] of longint;{индексы элементов соответствуют латинице}    c:char;    i:longint; begin      read(s);      for c:='a' to 'z' do{заполнение нулями элементов массива, для запоминания количества элементов в латинице}          mas[c]:=0;      for i:=1 to ord(s[0]) do{пробегаем по всей строке ord(s[0]) это количесвто элементов в строке (только паскаль)}          mas[s[i]]:=mas[s[i]]+1;      for c:='a' to 'z' do{пробегаем по массиву значений и выводим только неповторяющиеся}          if(mas[c]=1) then                       writeln(c); end.
0,0(0 оценок)
Ответ:
D202
D202
22.05.2023 00:21
// PascalABC.NET 3.0, сборка 1156 от 30.01.2016
function Avg(a:array[,] of integer):real;
begin
  var s:=0; var k:=0;
  foreach var e:integer in a do
    if e>0 then begin s+=e; Inc(k) end;
  if k>0 then Result:=s/k else Result:=1e-100;
end;

begin
  var A:=MatrixRandom(4,4,-50,50); Writeln(A);
  Writeln('Среднее арифметическое положительных равно ',Avg(A):0:3);
  var B:=MatrixRandom(5,5,-30,30); Writeln(B);
  Writeln('Среднее арифметическое положительных равно ',Avg(B):0:3);
  var C:=MatrixRandom(4,5,-25,38); Writeln(C);
  Writeln('Среднее арифметическое положительных равно ',Avg(C):0:3);
end.

Тестовое решение:
[[35,35,5,-47],[14,34,35,-13],[25,-5,35,-29],[-7,10,-12,12]]
Среднее арифметическое положительных равно 24.000
[[-12,-17,-10,19,14],[20,17,-27,-2,16],[-3,-21,30,2,10],[5,-3,-17,-3,18],[0,-26,29,1,-22]]
Среднее арифметическое положительных равно 15.083
[[-5,-11,17,-4,15],[15,17,-24,36,15],[-8,-3,-22,28,-25],[-21,6,12,31,-1]]
Среднее арифметическое положительных равно 19.200
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота