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

Сколько существует натуральных чисел, которые одновременно удовлетворяют двум следующим условиям: запись числа в десятичной системе счисления имеет ровно три значащих разряда. если перевести это число в девятеричную систему счисления, то запись числа останется трехразрядной, но значение каждого разряда (кроме самого левого, отвечающего за вторую степень, он увеличивается лишь на единицу), увеличится на двойку по сравнению со значениями соответствующих разрядов в записи этого числа в десятеричной системе счисления.

👇
Ответ:
vNeronRazerv
vNeronRazerv
03.04.2020
Умножение числа на 2 в двоичной системе эквивалентно его сдвигу влево на один разряд. При этом старший разряд старшей тетрады должен перейти в новую, третью тетраду или он будет утерян. Но по условию, после умножения число по-прежнему имеет два разряда, следовательно мы должны потерять старший разряд безболезненно, а это возможно только если он нулевой.
Тогда первоначальное число должно быть записано как

а после удвоения его запись примет вид

Запишем сумму цифр исходного числа p1:

Теперь запишем сумму удвоенного числа p2:

По условию эти две суммы равны и мы составляем уравнение:

Полученное уравнение решается на множестве двоичных чисел.
Поскольку исходное число двузначное, по крайней мере в старшем разряде оно содержит цифру, отличную от нуля. Следовательно, b3 не может равняться нулю и остается только положить b3=1. Тогда уравнение (1) примет следующий вид:

Учитывая, что каждый бит может принимать значения только 0 и 1, мы должны найти такие комбинации бит, которые дадут в сумме 7=4+2+1, потому что у нас в уравнении только такие коэффициенты. Сгруппируем члены в (2):

Полученная система уравнений будет иметь 7 вариантов решений (вариант a2=a1=a0=0 исключается в силу необходимости наличия цифры в старшем разряде), которым в старшем разряде будут соответствовать цифры от 001(2) до 111(2) или от 1(10) до 7(10).

ответ: 7

Замечание: Из (3) можно легко найти числа, которые соответствуют заданным условиям: 30, 45, 60, 75, 90, 105, 120 (все в десятичной системе счисления). В 16-ричной системе они запишутся как 1E, 2D, 3C, 4B, 5A, 69, 
4,5(13 оценок)
Открыть все ответы
Ответ:
racinskaulana
racinskaulana
03.04.2020

Program qw;
uses crt;
Type
   Atlas=Record
       country,capital:string;
       area,people:real;
     end;
   ps=File of atlas;
Var f:ps;
    z,t:atlas;
Begin
  assign(f,'1.dat');
  rewrite(f);
    z.country:='Латвия'; z.area:=67.7;
    z.people:=2.6; z.capital:='Рига';
    write(f,z);
    z.country:='Литва'; z.area:=65.2;
    z.people:=3.4; z.capital:='Вильнюс';
    write(f,z);
    z.country:='Польша'; z.area:=313;
    z.people:=34.8; z.capital:='Варшава';
    write(f,z);
    z.country:='Украина'; z.area:=603.7;
    z.people:=50; z.capital:='Киев';
    write(f,z);
    z.country:='Россия'; z.area:=17075.4;
    z.people:=139; z.capital:='Москва';
    write(f,z);
  Close(f);
  assign(f,'1.dat');
  reset(f);
  read(f,t);
  while not(eof(f)) do
    begin
      read(f,z);  
      if t.people/t.area < z.people/z.area then t:=z;
    end;
  close(f);
  writeln('Cтранa с наибольшей плотностью населения:');
  writeln(t.country,' (плотность населения равна ',t.people/t.area:9:6,' млн на кв.км)');
end.

4,4(26 оценок)
Ответ:
макс3095
макс3095
03.04.2020

Program MashaLukianova2;
uses crt;
const n=20;
var
  mas:array[1..n] of integer;
  b,i,left,right,temp:integer;
begin
  writeln('*** alphaues is thinking... ***');
  writeln('***          OK             ***');
  writeln();
  write('Введите загадочное число B ');
  readln(b);
  writeln('Элементы массива:');
  {создание и вывод начального массива}
  randomize;
    for i:=1 to n do
      begin
        mas[i]:=random(100)-50;
        write (mas[i]:4);
      end;
  writeln();
  left:=0;
  right:=n;
  while left <> right do         {просматриваем массив с концов к середине, пока "левый" и "правый" текущие элементы не встретятся}
    begin
      if mas[left+1]<=b then

        {если текущий "левый" элемент меньше или равно В, то просто идём смотреть следующий }
        begin
          left:=left+1;
        end
        else
          if mas[right]>=b then
        {если текущий "правый" элемент больше или равно В, то просто идём смотреть следующий }

            begin
              right:=right-1;
            end
          else

        {иначе меняем "левый" и "правый" местами}
            begin
              temp:= mas[left+1];
              mas[left+1]:=mas[right];
              mas[right]:=temp;
              left:=left+1;
              right:=right-1;
            end;
    end;
  writeln();
  {вывод массива-результата}
  for i:=1 to n do
      begin
        write (mas[i]:4);
      end;
  writeln();
end.

4,7(88 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ