Знак делить в Free Pascal

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
anatoley.
незнакомец
Сообщения: 9
Зарегистрирован: 01.03.2010 16:03:37

Знак делить в Free Pascal

Сообщение anatoley. »

Скажите пожалуйста, я хочу с помощью программы сделать каклькулятор, но мне надо сделать знак деления, между параметрами, скажите как его обозначать?
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

/
anatoley.
незнакомец
Сообщения: 9
Зарегистрирован: 01.03.2010 16:03:37

Сообщение anatoley. »

num1:= num1/num2 - выдаёт ошибку, почему?
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Может потому что num1 имеет целый тип? (Integer, например.) Тогда нужно либо делить без остатка (при помощи оператора div), либо записывать результат в переменную дробного типа (Single, Double).
anatoley.
незнакомец
Сообщения: 9
Зарегистрирован: 01.03.2010 16:03:37

Сообщение anatoley. »

Может пожалуйста написать код? У меня стоит Integer.
С Real всё работает, а с Integer...
Я сделал ещё и треть переменную... но не как...
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Код: Выделить всё

num1 := num1 div num2;
RealVar := num1/num2;
anatoley.
незнакомец
Сообщения: 9
Зарегистрирован: 01.03.2010 16:03:37

Сообщение anatoley. »

а что писать в var?
Так: var num1, num2: Integer;

Значита так правильно:
num1:= num1 div num2;
RealVar:= num1/num2;
writeln (num1);
Последний раз редактировалось anatoley. 01.03.2010 22:06:51, всего редактировалось 1 раз.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Ужос :shock:
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

anatoley.
Похоже, что вам нужно получше изучить такие базовые понятия как переменная и тип.

Переменные типа Integer хранят только целые числа. Я не буду вдаваться в подробности, все что нас интересует, то, что переменная типа Integer не может хранить нецелое число.

Результат выражения num1/num2 - нецелое число. Поэтому его может хранить только переменная нецелого типа, например, типа Real.

Код: Выделить всё

var RealVar: Real;

RealVar:= num1/num2;
writeln (RealVar);
anatoley.
незнакомец
Сообщения: 9
Зарегистрирован: 01.03.2010 16:03:37

Сообщение anatoley. »

Спасибо большое! Все пошло!
А как мне сделать корень из числа?
Аватара пользователя
Дож
энтузиаст
Сообщения: 900
Зарегистрирован: 12.10.2008 16:14:47

Сообщение Дож »

Sqrt(x)
anatoley.
незнакомец
Сообщения: 9
Зарегистрирован: 01.03.2010 16:03:37

Сообщение anatoley. »

тоесть? можешь показать подробней на примере: num1, num2
Ответить