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

Определить четность и нечетность числа(решение) 1011111²,773⁸,111¹⁶.

👇
Ответ:

1011111²,773⁸,111¹⁶.

1011111 - число нечетное., т.к. последняя цифра нечётная, а система счисления четная

С остальными так же. Все они заканчиваются на нечетную цифру, и всех их чётные системы счисления.

1011111²= 1+2+4+8+16+64= 95

773 =7*8*8+7*8+3=58*9=522

111=1+16+16*16=256+16+1=273

4,4(43 оценок)
Открыть все ответы
Ответ:
yackubovitchso
yackubovitchso
16.04.2023
1. Современное решение

// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var s:=ReadLines('input.txt').Select(s->s.ToWords).
      Select(w->(w[0]+' '+w[1],
      (w[2].ToInteger+w[3].ToInteger+w[4].ToInteger)/3)).ToArray;
  var max:=s.Max(fb->fb[1]);
  s.Where(fb->fb[1]=max).Select(fb->fb[0]).Println(NewLine)
end.

2. Школьное решение в стиле "TurboPascal 1983г"

const
  n=50; // максимум лучших учеников
var
  f:Text;
  i,p,pa,b,sum,max:integer;
  sb:real;
  s,fio:string;
  flag:boolean;
  a:array[1..n] of string;
begin
  Assign(f,'input.txt');
  Reset(f);
  max:=0;
  pa:=1;
  while not Eof(f) do begin
    Readln(f,s);
    fio:='';
    flag:=true;
    for i:=1 to Length(s) do
      if s[i]<>' ' then fio:=fio+s[i]
      else
        if flag then begin
          fio:=fio+' ';
          flag:=false
          end
        else break;
    p:=Length(fio)+2;
    sum:=0;
    for i:=1 to 3 do begin
      b:=Ord(s[p])-Ord('0');
      sum:=sum+b;
      p:=p+2
      end;
    if sum>max then begin
      a[1]:=fio; pa:=2; max:=sum
      end
    else
      if sum=max then begin
        a[pa]:=fio; pa:=pa+1
        end;
    end;
  Close(f);
  for i:=1 to pa-1 do Writeln(a[i]);
end.

3. Пример выполнения

Исходные данные (файл во вложении)
Иванов И.И. 4 5 4
Сидорова С.С. 5 3 4
Петров П.П. 5 5 4
Козлов К.К. 3 3 5
Васечкин В.В. 4 4 4
Сорокина С.С. 5 5 4
Тарасова Т.Т. 5 4 5

Результат
Петров П.П.
Сорокина С.С.
Тарасова Т.Т.

Предвижу возражение, что современное решение "непонятно". А что, школьное понятнее? Текст в 42 строчки понятнее чем в 5 строк? (я выкинул из обоих текстов по одному begin и end, окаймляющие программу).
Что дольше писать и отлаживать? Где больше ошибок можно сделать? В конце-концов, что проще изучить с нуля - программирование в 5 строк или  в 42?
Вот и вопрос - для чего в школах массово изучают такое несуразное программирование?
4,7(60 оценок)
Ответ:
kiry42rus
kiry42rus
16.04.2023
Function V(h,r:real):real;
Begin
result:=1/3*Pi*r*r*h // ABC, ABC.net
// V:=1/3*Pi*r*r*h // Turbo, Free
End;

Function SPP(h,r:real):real;
Begin
result:=Pi*r*(R+Sqrt(r*r+h*h));
End;

Var
   h,r,V0,S,SumS,SumV:real;

Begin
Write('h1 = ');ReadLn(h);
Write('r1 = ');ReadLn(r);
V0:=V(h,r);
SumV:=V0;

S:=SPP(h,r);
SumS:=S;
WriteLn('V1 = ',V0);
WriteLn('S1 = ',S);
WriteLn;

Write('h2 = ');ReadLn(h);
Write('r2 = ');ReadLn(r);
V0:=V(h,r);
SumV:=SumV+V0;

S:=SPP(h,r);
SumS:=SumS+S;
WriteLn('V2 = ',V0);
WriteLn('S2 = ',S);
WriteLn;

Write('h3 = ');ReadLn(h);
Write('r3 = ');ReadLn(r);
V0:=V(h,r);
SumV:=SumV+V0;

S:=SPP(h,r);
SumS:=SumS+S;
WriteLn('V3 = ',V0);
WriteLn('S3 = ',S);
WriteLn;

WriteLn('Sum V = ',SumV);
WriteLn('Sum S = ',SumS);
End.
4,7(10 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ