Vladimirovna Viktorovna
?>

Требовалось написать программу вычисления факториала числа n (факториал числа n есть произведение всех целых чисел от 1 до n программист торопился и написал программу неправильно. ниже фрагмент его программы, в котором содержится пять ошибок: к : = 1; f : = 0; while k f: =f * k; к: =к + 1 найдите ошибки. допишите необходимые операторы и выполните программу на компьютере. пример входных данных пример входных данных пример выходных данных введите n> 5 5! =120 введите n> 6 6! =720

Информатика

Ответы

Korikm
Var n,k,f:integer;
begin
write('n='); readln(n);
k:=1;
f:=1;
while k<=n do
 begin f:=f*k; k:=k+1; end;
writeln(n,'!=',f);
end.
sirenashop25
1. Современное решение, когда можно решить "в одну строку"

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

begin
  Writeln('S=',ReadSeqInteger(3).Select(n->n.ToString
    .Where(d->Pos(d,'13579')>0)).SelectMany(c->c)
    .Select(c->c.ToDigit).Sum)
end.

Пример
252 337 105
S=24

2. А примерно вот так учат писать в школе - долго и длинно (да и не особо понятно)

var
  m,i,j,s,d:integer;
begin
  s:=0;
  for i:=1 to 3 do begin
    Read(m);
    for j:=1 to 3 do begin
      d:=m mod 10;
      if d mod 2<>0 then s:=s+d;
      m:=m div 10
      end
    end;
  Writeln('S=',s)
end.
vodolaz8384
1. Современное решение, когда можно решить "в одну строку"

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

begin
  Writeln('S=',ReadSeqInteger(3).Select(n->n.ToString
    .Where(d->Pos(d,'13579')>0)).SelectMany(c->c)
    .Select(c->c.ToDigit).Sum)
end.

Пример
252 337 105
S=24

2. А примерно вот так учат писать в школе - долго и длинно (да и не особо понятно)

var
  m,i,j,s,d:integer;
begin
  s:=0;
  for i:=1 to 3 do begin
    Read(m);
    for j:=1 to 3 do begin
      d:=m mod 10;
      if d mod 2<>0 then s:=s+d;
      m:=m div 10
      end
    end;
  Writeln('S=',s)
end.

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

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

Требовалось написать программу вычисления факториала числа n (факториал числа n есть произведение всех целых чисел от 1 до n программист торопился и написал программу неправильно. ниже фрагмент его программы, в котором содержится пять ошибок: к : = 1; f : = 0; while k f: =f * k; к: =к + 1 найдите ошибки. допишите необходимые операторы и выполните программу на компьютере. пример входных данных пример входных данных пример выходных данных введите n> 5 5! =120 введите n> 6 6! =720
Ваше имя (никнейм)*
Email*
Комментарий*

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

Igorevich1559
mir5552
tanya62soldatova72
arammejlumyan
oknacrow
Ольга тимур
Вячеслав
kulttrop
Boykoyelena
nata27-73589
mnn99
palmhold578
Yekaterina
Plamia7917
innesagrosheva22