Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2011, 20:00   #1
Кажымурат
 
Регистрация: 31.03.2011
Сообщений: 3
По умолчанию превышает ли 270 произведение первых m чисел от 1 до n

Здраствуйте я ознакомился с правилами форума.
Но у меня возникла проблема для вас она скорее всего окажется очень смешной но для неопытного программиста весьма тяжолая.
Мы работаем в программе Pascal ABC и в конце симестра нам выдали задачи при решение которой будет выставлятся оценка.
Если можете решить или подтолкнуть к решению(дать источник откуда набратся знаний).
В обшем задача звучит так "Проверить, превышает ли 270 произведение первых m чисел от 1 до n.
И решить ей нужно при помоши циклов.


по правилам форума название темы
должно адекватно отражать суть решаемой задачи!
На первый раз я исправлю тему. В последующем такие темы будут удаляться или закрываться!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 31.03.2011 в 20:29.
Кажымурат вне форума Ответить с цитированием
Старый 31.03.2011, 21:10   #2
vasilisk-green
Пользователь
 
Аватар для vasilisk-green
 
Регистрация: 14.11.2009
Сообщений: 21
По умолчанию Превышает ли 270 произведение первых n чисел?

Если я правильно понял суть задачи... (Delphi7)

Код:
program Pro270;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  n, i: Word;
  x: Longint;
  m : Longint = 1;

begin
  write('X = '); readln(x); // here yours '270'
  write('N = '); readLn(n);
  for i := 2 to n do
  begin
    m := m * i;
  end;

  writeLn(n, '! = ', m);

  write(x, ' is ');
  if (x <= m) then
  begin
    write('not ');
  end;
  writeLn('greater than ', m);
  readLn;
end.
vasilisk-green вне форума Ответить с цитированием
Старый 31.03.2011, 21:11   #3
dekameron
Форумчанин
 
Аватар для dekameron
 
Регистрация: 27.04.2010
Сообщений: 185
По умолчанию

Код:
PROGRAM z;
USES Crt;
VAR i,s,n:integer;
BEGIN
clrscr;
write('n=');
readln(n);
clrscr;
s:=1;
for i:=2 to abs(n) do
begin  
s:=s*n;
if s>270 then break;
end;

if s> 270
then writeln('prevyshaet (',s,')')
else writeln('ne prevyshaet (',s,')');
repeat read until keypressed;
END.
А вообще то такое произведение зовется факториалом числа n (запись n!)
И как известно, 5! = 120, a 6! = 720
Тоесть для такой задачи достаточно проверить, лежит ли это число на промежутке 0..5

ABS(n) взято для того, чтобы не было проблемы с отрицательными числами, проверку на отрицательность сможешь добавить сам.
Так же, 0! = 1 - это так принято считать и все
Помог - тырк на весы
dekameron вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти произведение первых трёх наибольших элементов Матриц - паскаль Sandrewz Помощь студентам 4 15.10.2010 20:25
Pascal для определения 5 первых совершенных чисел T@tali Помощь студентам 2 06.05.2010 22:10
Вычислить произведение P кубов трех чисел a, b и c, если их сумма меньше нуля, произведение P модулей NoUserName Помощь студентам 3 01.03.2009 18:10
Как в С++ Вычислить произведение первых N сомножителей? JiLiYa Общие вопросы C/C++ 2 18.02.2009 12:30
произведение всех чисел апрол Помощь студентам 3 08.12.2008 19:00