ЖС
Жахонгир Сафаров

Pascal!! Помогите, пожалуйста!

В паскале нужно тип real прировнять к типу string, как это сделать?
Например, мне надо так: result:=z; Выдаёт ошибку, так как result - real, а z - string
Как всё же их прировнять? В c# можно использовать конверт. Например Convert.ToString(x)-y; А как это сделать в паскале? Подскажите. Просто не давно начал изучать.
Желательно пример кода.

floatToStr(z); не работает. Выдаёт такую же ошибку : Нельзя преобразовать тип string к real

result:=Str(result); тоже не работает пишет не перегруженной подпрограммы с таким количеством параметров

Вот например я хочу так: пользователь вводит выражение которое хочет решить допустим (x/y)*(2*x/y) Это сохраняется в переменную z
После вводит чему равен х и чему равен у. Это сохраняется в переменные x и у. После программа сама подставляет и решает и выдаёт ответ. Допустим такой пример кода :

Var x, y, result : real;
z : string;
Begin
Writeln('Введите своё выражение: ');
Readln(z);
Writeln('Введите чему равен x:');
Readln(x);
Writeln('Введите чему равен y:');
Readln(y);
result:=z; {Здесь и выдаёт ошибку : Program3.pas(14) : Нельзя преобразовать тип string к real}
Writeln(result);

End.

Подредактируйте, пожалуйста, код, чтобы работало, очень надо.

Есть же функции cos и sin. Конечно же нельзя в тип real записать какие то буквы потому что это вещественное число. Но я хочу сделать так чтоб он понимал что там написано. Допустим если написать result:=cos(x/y)*cos(2*x/y)и writeln(result) То программа сосчитает и выдаст ответ. Я хочу сделать так же но чтобы вместо cos(x/y)*cos(2*x/y)и writeln(result) было z в которой и хранится это выражение. Возможно ли это?

ДЧ
Дмитрий Чернов

Val ( z, result, code);
if code > 0 then { ошибка преобразования }

Если нужно наоборот (из числа в строку) :
Str ( result, z );
Val и Str - это процедуры, а не функции. Не путайте.

P.S. Давно ведь написал:

Val ( z, result, code);

Это надо написать вместо result:=z;

Алексей Жохов
Алексей Жохов

floatToStr(z), а еще можно в ручную написать функцию, но кому это нужно
блядь ну пиздец, floatToStr(result) значит, какая переменная риал, такую и вписываешь

ВШ
Владимир Шабаров

Может быть предварительно написать result:=Str(result); а потом дальше...

ЕД
Елена Добрынина

Если Вы уверены, что в переменной типа string записано число без лишних нечисловых символов, то смело используйте процедуру Val
Val ( z, result, n);
где n - переменная типа integer. Вы ее просто объявите и не обращайте на нее внимание.

Результатом процедуры будет преобразование строки в вещественное число и присвоение этого числа переменной result

Похожие вопросы
Помогите пожалуйста написать программу на Pascal
Помогите пожалуйста! Срочно!!! Turbo Pascal
Pascal abc. Помогите пожалуйста даром.
Помогите, пожалуйста, Pascal
Помогите пожалуйста с Pascal.
помогите пожалуйста с задачей на pascal.
Помогите пожалуйста с PASCAL ABC
Помогите пожалуйста решить в Pascal
Помогите, пожалуйста, с Turbo Pascal !!!
Помогите пожалуйста с Pascal