Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];

Вниз

Paskal   Найти похожие ветки 

 
Бегинер   (2002-09-24 02:53) [0]

В универе для зачета необходимо сделать несколько не очень простых программ....сидел вспоминал Paskal и наикнулся на проблему.....как нужно возвести число в степень, показателем которой служит переменная....пишу:
z:=b*2^(a-1);
Выдает ошибку.....курсор прыгает под знак ^....


 
ЮЮ   (2002-09-24 03:02) [1]

^ - это из Васика, в Паскале нет оператора возведения в стемень. Смотри фунции Sqr,Power


 
kex86   (2002-09-24 03:05) [2]

1. ^ - это указатель
2. могу порекомендовать
function power(Base, Exponent: Extended):Extended; в модуле Match


 
Бегинер   (2002-09-24 03:05) [3]


> ЮЮ © (24.09.02 03:02)
> ^ - это из Васика, в Паскале нет оператора возведения в
> стемень. Смотри фунции Sqr,Power

.......ага....точно из Basic"а....
Так что там насчет Power?


 
Во-первых   (2002-09-24 03:07) [4]

Паскаль пишется Pascal. Во-вторых символ ^ служит в паскале для "разыименования" указателей, что явно не соответсвует твоей задаче. В третьих - по сабжу - речь идет о именно Pascal"e, но упоминание "сидел вспоминал Paskal и наикнулся" наводит на мысль, что "для зачета необходимы программы" на чем-то ином нежели просто паскаль.


 
kex86   (2002-09-24 03:08) [5]

>Бегинер ©
Смотри выше


 
Бегинер   (2002-09-24 03:17) [6]


> Во-первых (24.09.02 03:07)
> Паскаль пишется Pascal. Во-вторых символ ^ служит в паскале
> для "разыименования" указателей, что явно не соответсвует
> твоей задаче. В третьих - по сабжу - речь идет о именно
> Pascal"e, но упоминание "сидел вспоминал Paskal и наикнулся"
> наводит на мысль, что "для зачета необходимы программы"
> на чем-то ином нежели просто паскаль.


Paskal - это, конечно, мой косяк....
А что значит "на чем-то ином нежели просто паскаль."?
Вообще задача сводится не к этому
зедание: В среде программирования Pascal написать программу переводящуу числа из десятичной СС в двоичную, восмеричную, HEX
(1 балл)
И наоборот (2 бала)

Моя поблема в том, как сделать наооборот, как правильно написать:
.......
z:=0;
for i:=1 to a do begin
b:=mas[i];
z:=z+b*2^(a-i);
end;

Это всем известный алгорит перевода из Bin в Dec, где а это сило символов двоичного числа


 
Эндер   (2002-09-24 04:23) [7]

В системном модуле турбо-паскаля есть только функции exp(x:extended) - возвращает e в степени x - b ln(x:extended) - возврашает натуральный логарифм x. Исходя из этого,
function power(const x,y:double):double;
begin
if x=0.0 then
power:=x
else if x>0.0 then
power:=Exp(y*Ln(x))
else
power:=-Exp(y*Ln(-x));
end;


 
MBo   (2002-09-24 06:16) [8]

К универсальному ответу Эндера добавлю, что для возведения двойки в целочисленную степень, что, несомненно, и требуется в данном случае, нужно выполнить сдвиговую операцию

2^N = 1 SHL (N-1)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.10.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
3-7846
alexts
2002-09-11 12:57
2002.10.03
Фильтр в ADO


1-7953
AFrolov
2002-09-20 17:39
2002.10.03
Как узнать выделена строка в StringGrid или нет?


1-8049
Карлсон
2002-09-22 15:05
2002.10.03
преобразование времени.


1-8004
Mazenrat
2002-09-20 15:17
2002.10.03
StrToInt и IntToStr без sysutils.


4-8215
Lamer86
2002-08-15 09:13
2002.10.03
Scrollbar





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский