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

Завдання

вирішіть ці завдання, використовуючи конструкції if і умови.

1. ваша місячна вага

якби ви зараз були на місяці, ваш вага склала б 16,5 відсотків від земного. щоб дізнатися, скільки це, помножте свій земний вага на 0,165.

якби щороку протягом наступних 15 років ви додавали по одному кілограму ваги, яким би виявилася ваша місячний вага в кожен з щорічних візитів на місяць аж до 15-го року? напишіть програму, яка за циклу for друкує на екрані вашу місячну вагу в кожному році.

Показать ответ
Ответ:
taisijaljalko
taisijaljalko
06.08.2022 19:26
Var
  n, k, d2, d1, d0: integer;
  e2, e1, e0: integer;

procedure GetDigits(m: integer; var d2, d1, d0: integer);
{Перевод числа [100..FFF]в 16-ю систему счисления}
begin
  d0 := m mod 16;
  m := m div 16;
  d1 := m mod 16;
  d2 := m div 16
end;

begin
  n := 0;
  {Рассматриваем шестнадцатиричные числа от 100 до 7FF}
  for k := $100 to $7FF do
  begin
    GetDigits(k, d2, d1, d0);
    if (d2 = 2) or (d1 = 2) or (d0 = 2) then
    begin
      GetDigits(2 * k, e2, e1, e0);
      if d0 + d1 + d2 = e0 + e1 + e2 then n := n + 1
    end
  end;
  writeln('n=', n)
end.

Тестовое решение:

n=23
0,0(0 оценок)
Ответ:
Дима22222222
Дима22222222
14.03.2023 13:34

#include <iostream>

typedef long long   ll;

using namespace std;

bool ll_is_valid(ll t, ll N, ll x, ll y)

{

return  t / x + (t - x) / y >= N;

}

ll f(ll N, ll x, ll y)

{

   ll R = 1;

   while (!ll_is_valid(R,N,x,y)) R *= 2;

ll L = R / 2;

while(R - L > 1)

{

 ll M   =   (L + R) / 2;

 

 if (!ll_is_valid(M,N,x,y)) {L = M;}

 else {R = M;}

}

return  R;

}

int  main()

{

ll N,x,y;

cin >> N >> x >> y;

if(x > y) swap( x, y );  

cout << f(N, x, y) <<  std::endl;

}

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