|
Вопрос # 5 451/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Составить программу вычисления суммы факториалов всех четных чисел от 1 до 8
 |
Вопрос задал: Силиванов (статус: Посетитель)
Вопрос отправлен: 27 июня 2011, 10:02
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Gooddy
Здравствуйте, Силиванов!
Не хотелось писать, потому, что до этого можно дойти самому, но мне нужно ещё 5 ответов до 3-го класса и я смогу цитировать.
Дарю.
Приложение: Переключить в обычный режим- var
- i: Integer;
-
- function Factorial( n: Integer ): Integer;
- var
- i: Integer;
- begin
- Result := 1;
- for i:=2 to n do
- Result := Result * i;
- end;
-
- begin
- for i:=1 to 8 do
- WriteLn( 'Factorial ', i, ' = ', Factorial(i) );
- ReadLn;
- end.
-
 |
Ответ отправил: Gooddy (статус: 3-ий класс)
Время отправки: 27 июня 2011, 16:48
|
Мини-форум вопроса
Всего сообщений: 14; последнее сообщение — 28 июня 2011, 06:44; участников в обсуждении: 5.
|
bugmenot (статус: 3-ий класс), 27 июня 2011, 10:06 [#1]:
и побыстрее
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
min@y™ (статус: Доктор наук), 27 июня 2011, 10:19 [#2]:
Цитата (bugmenot):
и побыстрее
гыгыгы. 
type
TValue = 1..8;
const
Factorials: array[TValue] of Word = (1, 2, 6, 24, 120, 720, 5040, 40320);
function GetSum: LongInt;
var
X: TValue;
Result: LongInt;
begin
X:= 2;
Result:= 0;
repeat
Inc(Result, Factorials[X]);
Inc(X, 2);
until X = 8;
GetSum:= Result;
end;
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
min@y™ (статус: Доктор наук), 27 июня 2011, 10:25 [#3]:
А можно ещё проще!
function GetSum: Word;
begin
GetSum:= 41066; { задача решена, ура, землекопа 1,5! :)) }
end;
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Силиванов (статус: Посетитель), 27 июня 2011, 10:32 [#4]:
не проходит
|
|
min@y™ (статус: Доктор наук), 27 июня 2011, 10:35 [#5]:
Цитата (Силиванов):
не проходит
Дык, это, смотря куды сувать!
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
27 июня 2011, 10:51: Вопрос перемещён из тематического раздела Pascal » Программирование на Pascal в раздел Лабораторный практикум » Pascal модератором min@y™
|
bugmenot (статус: 3-ий класс), 27 июня 2011, 11:32 [#7]:
и у кринку ни лизе!
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
Gooddy (статус: 3-ий класс), 27 июня 2011, 16:50 [#8]:
Ох ёп. Сори. Не заметил что всех чётных. Правь:
for i:=1 to 8 do
WriteLn( 'Factorial ', i, ' = ', Factorial(i) );
for i:=1 to 4 do
WriteLn( 'Factorial ', i*2, ' = ', Factorial(i*2) );
Чисти код! Чисти код! Чисти код!
|
|
min@y™ (статус: Доктор наук), 27 июня 2011, 16:56 [#9]:
Цитата (Gooddy):
Ох ёп. Сори. Не заметил что всех чётных. Правь:
А теперь снова перечитай вопрос и заметь, что надо вычислить сумму.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Gooddy (статус: 3-ий класс), 27 июня 2011, 17:41 [#10]:
-_-
Чисти код! Чисти код! Чисти код!
|
|
Gooddy (статус: 3-ий класс), 27 июня 2011, 17:42 [#11]:
var
i, Sum: Integer;
function Factorial( n: Integer ): Integer;
var
i: Integer;
begin
Result := 1;
for i:=2 to n do
Result := Result * i;
end;
begin
Sum := 0;
for i:=1 to 4 do
Sum := Sum + Factorial( i * 2 ) ;
WriteLn( 'Sum = ', Sum );
ReadLn;
end.
Чисти код! Чисти код! Чисти код!
|
|
Gooddy (статус: 3-ий класс), 27 июня 2011, 18:17 [#12]:
Поспешишь - людей насмешишь. В который раз подтвердилось.
Чисти код! Чисти код! Чисти код!
|
|
bugmenot (статус: 3-ий класс), 27 июня 2011, 19:01 [#13]:
Цитата (Gooddy):
for i:=1 to 4 do
Sum := Sum + Factorial( i * 2 ) ;
if not Odd(X) же!
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
Gooddy (статус: 3-ий класс), 28 июня 2011, 06:44 [#14]:
bugmenot: так быстрее поправить было. Да и работает так же.
Чисти код! Чисти код! Чисти код!
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|