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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.10.2008, 20:24   #1
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
По умолчанию функция

Дано натуральное число п. Получить самое меньшее целое виду 2(в степени Y), который превосходит п.
Вот я начал писать код помогите дописать!

Код:
program Project1;
{$APPTYPE CONSOLE}
uses
  math;

var
 n:integer;
 r, y:real;
begin
write ('VVediT` n=');
readln (n);
write ('VVediT` r=');
readln (r);
y:=power(2,r);
writeln ('y=', y:6:2);
readln (y);
end.
Lemo вне форума Ответить с цитированием
Старый 24.10.2008, 00:12   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Код:
begin
write ('Vvedite` n=');
readln (n);
r:=1;
while power(2,r)<n do
r:=r+1;
r:=r-1;
y:=power(2,r);
write ('y=', y:6:2);
end.
mihali4 вне форума Ответить с цитированием
Старый 24.10.2008, 08:40   #3
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils, Math;
var n,r:integer;
    y:real;
begin
write ('Vvedite` n=');
readln (n);
r:=0;y:=1;
while y<=n do
   begin
     y:=power(2,r);
     r:=r+1;
   end;
write ('y=', y:0:0);
readln
end.
puporev вне форума Ответить с цитированием
Старый 24.10.2008, 08:48   #4
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
Радость

Спасибо, вроде работает.
Код:
program Project1;
{$APPTYPE CONSOLE}
uses
  math;

var
 n:integer;
 r, y:real;
begin
write ('Vvedite` n=');
readln (n);
r:=1;
while power(2,r)<n do
r:=r+1;
r:=r-1;
y:=power(2,r);
write ('y=', y:6:2);
readln;
end.
Lemo вне форума Ответить с цитированием
Старый 24.10.2008, 09:04   #5
Ламер_001
Ну и что? :)
Форумчанин
 
Регистрация: 20.10.2008
Сообщений: 129
По умолчанию

че то странновато работает ваша программа, mihali4 при n = 1,2,4
Код:
begin
 write ('Vvedite` n=');
 readln (n);
 r := 0;
 while( power(2,r) <= n ) do r:=r+1;
 write ('y=', power(2,r):6:2);
end.
Учиться, учиться и еще раз учиться
Ламер_001 вне форума Ответить с цитированием
Старый 24.10.2008, 09:13   #6
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
Радость

мне кажеться верный вариант сделал puporev? но спасибо всем за помощь!
Lemo вне форума Ответить с цитированием
Старый 24.10.2008, 12:08   #7
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Сообщение от Ламер_001 Посмотреть сообщение
че то странновато работает ваша программа, mihali4 при n = 1,2,4
Код:
begin
 write ('Vvedite` n=');
 readln (n);
 r := 0;
 while( power(2,r) <= n ) do r:=r+1;
 write ('y=', power(2,r):6:2);
end.
А где R:=R-1; ???
mihali4 вне форума Ответить с цитированием
Старый 24.10.2008, 12:54   #8
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
По умолчанию

mihali4
так y должно быть больше чем n;
Lemo вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция Sam04 Помощь студентам 1 11.09.2008 13:51
Функция ZiLi Microsoft Office Excel 1 05.09.2008 18:37
функция sergei64_89 Общие вопросы C/C++ 2 25.05.2008 16:48
функция Janette Помощь студентам 1 29.04.2008 20:10
одна функция потока, а другая функция - член класса запускающего этот поток Дмитрий_Ч Общие вопросы C/C++ 2 27.09.2007 08:50