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

Используй кубоид,составь программу,определяющему и называющию все цвета кубоида
ответьте ​

Показать ответ
Ответ:
Дима061
Дима061
07.04.2021 10:25
// PascalABC.NET 3.3.5, сборка 1644 от 23.03.2018
// Внимание! Если программа не работает, обновите версию!

function aToDec(n:string;k:integer):string;
// Перевод из системы по основанию k в десятичную
begin
  var s:='0123456789ABCDEF';
  Result:='';
  var PointPos:=Pos('.',n);
  if PointPos>0 then begin // есть дробная часть
    var sFracPart:=n[PointPos+1:];
    var r:=0.0;
    var p:=k;
    foreach var c in sFracPart do begin
      r+=(Pos(c,s)-1)/p;
      p*=k;
      end;
    Result:=r.ToString[2:]
    end
  else PointPos:=n.Length+1;
  var pa:=1;
  n:=n[:PointPos];
  var p:=0;
  foreach var c in n.Reverse do begin
    p+=pa*(Pos(c,s)-1);
    pa*=k
    end;
  Result:=p.ToString+Result
end;

function DecToa(n:string;k:integer):string;
// Перевод из десятичной системы в систему по основанию k
begin
  var s:='0123456789ABCDEF';
  Result:='';
  var PointPos:=Pos('.',n);
  var IntPart:integer;
  if PointPos>0 then begin // есть дробная часть
    var FracPart:=Frac(n.ToReal);
    var m:=0;
    while True do begin
      var r:=FracPart*k;
      Result+=s[Trunc(r)+1];
      FracPart:=Frac(r);
      m+=1;
      if (m=15) or (FracPart=0) then break
      end;
    IntPart:=n[:PointPos].ToInteger;
    end
  else IntPart:=n.ToInteger;
  if Result<>'' then Result:='.'+Result;
  while IntPart>0 do begin
    Result:=s[IntPart mod k+1]+Result;
    IntPart:=IntPart div k
    end;
  if Result='' then Result:='0';
  if Result[1]='.' then Result:='0'+Result
end;

function AtoB(s:string;A,B:integer):string;
// Перевод из системы по основанию A в систему по основанию B
begin
  if A=10 then Result:=DecToa(s,B)
  else
    if B=10 then Result:=aToDec(s,A)
    else Result:=DecToa(aToDec(s,A),B)
end;
   
begin
  var n:=ReadlnString('Какое число перевести?');
  var (a,b):=ReadInteger2('Исходное и результирующее основания:');
  Writeln(n,'(',a,') = ',AtoB(n,a,b),'(',b,')');
end.

Пример
Какое число перевести? 345.653
Исходное и результирующее основания: 8 16
345.653(8) = E5.D58(16)
0,0(0 оценок)
Ответ:
матвей468
матвей468
29.07.2022 10:08
//Microsoft (R) C/C++ Optimizing Compiler Version 19.00.23506 for x64

#include <iostream>
#include <array>
#include <random>
#include <algorithm>

int main()
{
    std::mt19937 gen{ std::random_device()() };
    std::uniform_int_distribution<> uid(0, 20);

    std::array<int, 10> a;
    std::generate(a.begin(), a.end(), [&uid, &gen]() 
    { return uid(gen); });
    std::cout << "Our array of numbers: "; 
    std::copy(std::begin(a), std::end(a),
          std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl << "Count of numbers multiple of 5: ";
    std::cout << 
         std::count_if(a.cbegin(), a.cend(), [&](const int &n) 
         { return !(n % 5); });
}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота