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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2011, 11:17   #1
vadiprog
Пользователь
 
Регистрация: 24.09.2011
Сообщений: 96
По умолчанию Программа на паскале

Помогите решить
vadiprog вне форума Ответить с цитированием
Старый 21.10.2011, 12:01   #2
Dush
Форумчанин
 
Регистрация: 29.09.2011
Сообщений: 116
По умолчанию

прикольная задачка.
Код:
<ввод x и y>
k:=0;
if (x>=1/y) and (x<1) then k:=0
else
begin
  flag:=false;
  if x<1/y then
  begin
     while not flag do
     begin
       k:=k-1;
       if (x>=Exp((k-1)*ln(y))) and (x<Exp(k*ln(y))) then flag := true; 
     end  
  end
  else
  begin
     while not flag do
     begin
       k:=k+1;
       if (x>=Exp((k-1)*ln(y))) and (x<Exp(k*ln(y))) then flag := true; 
     end  
  end;
  <вывод k>
end;
Dush вне форума Ответить с цитированием
Старый 21.10.2011, 12:11   #3
grom333
Форумчанин
 
Аватар для grom333
 
Регистрация: 21.10.2008
Сообщений: 337
По умолчанию

Можно пожалуйста перевести на русский задание?
Лучше быть последним из львов, чем первым среди шакалов.
Мой чат
community on struggle with zoomics
grom333 вне форума Ответить с цитированием
Старый 21.10.2011, 12:15   #4
Dush
Форумчанин
 
Регистрация: 29.09.2011
Сообщений: 116
По умолчанию

даны действительные числа x и y (x>0, y>0). найти число k (положительное, отрицательное, ноль) при котором y^(k-1)<=x<y^k
Dush вне форума Ответить с цитированием
Старый 21.10.2011, 22:09   #5
vadiprog
Пользователь
 
Регистрация: 24.09.2011
Сообщений: 96
По умолчанию

Цитата:
Сообщение от Dush Посмотреть сообщение
прикольная задачка.
Код:
<ввод x и y>
k:=0;
if (x>=1/y) and (x<1) then k:=0
else
begin
  flag:=false;
  if x<1/y then
  begin
     while not flag do
     begin
       k:=k-1;
       if (x>=Exp((k-1)*ln(y))) and (x<Exp(k*ln(y))) then flag := true; 
     end  
  end
  else
  begin
     while not flag do
     begin
       k:=k+1;
       if (x>=Exp((k-1)*ln(y))) and (x<Exp(k*ln(y))) then flag := true; 
     end  
  end;
  <вывод k>
end;
я так уже делал =) експонента налаживает дополнительное одз, числа меньше 0 взять нельзя... поэтому нада через функцию или процедуру степень делать...
vadiprog вне форума Ответить с цитированием
Старый 22.10.2011, 00:02   #6
Dush
Форумчанин
 
Регистрация: 29.09.2011
Сообщений: 116
По умолчанию

какие числа меньше 0? в условии четко сказано
Цитата:
(x>0, y>0)
а k свободно принимает значение меньше 0!
Dush вне форума Ответить с цитированием
Старый 22.10.2011, 00:30   #7
vadiprog
Пользователь
 
Регистрация: 24.09.2011
Сообщений: 96
По умолчанию

Цитата:
Сообщение от Dush Посмотреть сообщение
какие числа меньше 0? в условии четко сказано а k свободно принимает значение меньше 0!
туплю... х и у меньше еденицы надо чтоб принимало
vadiprog вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа на паскале Beks95 Фриланс 5 19.05.2011 02:35
Программа на паскале SonicSax Помощь студентам 8 11.01.2011 20:46
Программа с Паскале bwitcher Помощь студентам 2 11.12.2010 15:04
Программа в паскале проффан Помощь студентам 3 19.10.2010 13:05
программа на паскале zoya87 Помощь студентам 0 22.02.2010 15:44