steff77
?>

Построить логическую схему по выражению: f=(a& b)& (cvd)& c

Информатика

Ответы

abroskin2002
Алгоритм решения

пока текущее число больше нуля, увеличиваем счётчик количества цифр и отбрасываем последнюю цифру.

код (pascal)

var

  x, i, ans: integer;

procedure digitcount(k: integer; var c: integer);

begin

  c : = 0;

  while (k > 0) do

  begin

    c : = c + 1;

    k : = k div 10;

  end

end;

begin

  for i : = 1 to 5 do

  begin

    read(x);

    digitcount(x, ans);

    writeln(ans);

  end;

end.

файл решения прикреплён (1).

p.s. условие позволяет свести её решение к нахождению длины каждой из пяти введённых строк. такой вариант решения тоже прикреплён (2).

mbudilina
Алгоритм решения

для каждого числа будем убирать последнюю цифру, пока число не станет нулём. при этом для очередной последней цифры ответ умножаем на 10 и прибавляем к нему эту цифру.

для одного числа алгоритм будет выглядеть так:

while x > 0:

    ans = ans * 10 + (x mod 10)

    x = x // 10

где x - заданное число, ans - ответ на (перевёрнутое число), mod - операция получения остатка, // - операция целочисленного деления.

формально, x mod 10 возвращает последнюю цифру числа x ("остаток от деления x на 10"), а x // 10 возвращает число x без последней цифры ("разделить x на 10 и отбросить остаток").

решение (pascal)

var

  x, i, ans: integer;

begin

  for i : = 1 to 5 do

  begin

    read(x);

    ans : = 0;

    while (x > 0) do

    begin

      ans : = ans * 10 + (x mod 10);

      x : = x div 10;

    end;

    write(ans, ' ');

  end;

  writeln;

end.

файл решения прикреплён.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Построить логическую схему по выражению: f=(a& b)& (cvd)& c
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

akbmaslafarkop3175
ksvish2012
Андрей-Викторовна1910
korotinadasha07
archala
Наталья286
whitecatrussia5398
EVLAMPIN56
Измайлова-Алексей
Ushakova Sakhno
irinalav2705745
shilinmikhaillg
БашуроваОльга369
aifbon
varvara82193