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

Ввести четырехзначное число. Найти разницу между числом из первых двух цифр и числом из последних двух цифр. Напишите код на паскале

Показать ответ
Ответ:
katyaibadova
katyaibadova
07.12.2022 11:47
Var
  i,j,n:integer;
  m: array[1..10,1..10] of integer;
  flag:boolean;
  sum: array[0..1] of longint;
 begin
  readln(n);
  flag:=true;
  for i:=1 to n do
   begin
    for j:=1 to n do
     read(m[i,j]);
    readln;
   end;
     //Проверяем строки
  i:=1;
  for j:=1 to n do
      sum[i mod 2]:=sum[i mod 2]+m[i,j];
  while ((i<n) and flag) do
    begin
     i:=i+1;
     for j:=1 to n do
      sum[i mod 2]:=sum[i mod 2]+m[i,j];
     if sum[0]<>sum[1] then flag:=false;
     sum[(i+1) mod 2]:=0;
    end;
    //Проверяем столбцы
  sum[0]:=0;
  sum[1]:=0;
  j:=1;
  for i:=1 to n do
      sum[j mod 2]:=sum[j mod 2]+m[i,j];
  while ((j<n) and flag) do
    begin
     j:=j+1;
     for i:=1 to n do
      sum[j mod 2]:=sum[j mod 2]+m[i,j];
     if sum[0]<>sum[1] then flag:=false;
     sum[(j+1) mod 2]:=0;
    end;
  sum[0]:=0;
  sum[1]:=0;
  j:=1;
  for i:=1 to n do
   begin
    sum[0]:=sum[0]+m[i,j];
    sum[1]:=sum[1]+m[n-i+1,j];
    j:=j+1;
   end;
  if  sum[0]<>sum[1] then flag:=false;
  if flag then writeln('Магический');
 end.
0,0(0 оценок)
Ответ:
тарлан4
тарлан4
29.03.2021 02:38
17_{10}=10001_{2}

17:2=8 (остаток 1)
8:2=4 (остаток 0)
4:2=2 (остаток 0)
2:2=1 (остаток 0)

Складываем все полученные остатки от конца к началу, записывая первым числом частное последнего примера: 1+0+0+0+1=10001

46_{10}=101110_{2}

46:2=23 (остаток 0)
23:2=11 (остаток 1)
11:2=5 (остаток 1)
5:2=2 ( остаток 1)
2:2=1 (остаток 0)

Делаем то же самое: 1+0+1+1+1+0=101110

10110_{2}=22_{10}
Ставим над каждой цифрой числа 10110 цифры, начиная с 0 (степень числа), начиная с конца: 43210\\10110
Умножаем каждую из цифр числа 10110 на число 2 (так как двоичная система счисления) в степени числа, которое указано над каждой из цифр числа 10110 (от 4 до 0), и складываем полученные произведения: 1*2^{4}+0*2^{3}+1*2^{2}+1*2^{1}+0*2^{0}=16+0+4+2+0=22

11101_{2}=29_{10}

Делаем то же самое: 1*2^4+1*2^3+1*2^2+0*2^1+1*2^0=16+8+4+0+1=29
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота