Вопрос по паскалю, урок 3 (типы данных) - присваивание переменным выражений и литералов, требование совпадения типа
Primary tabs
Вопрос по паскалю, урок 3 (типы данных)
Например я пытаюсь задать переменной тип integer,он может быть представлен выражением, литералами и переменными,и вот у меня и возникает вопрос,если я беру литералы то получается только целочисленным я могу его представить?
var a: integer;
begin
a := 25;
writeln(a);
readln();
end. почему я не могу задать:
var a: integer;
begin
a := '25';
writeln(a);
readln();
end.
потому что это строковый литерал?
или если я положу туда выражение
a:= с + b =>я тоже должен понимать что c + b несут в себе результат в виде целого числа,не строки в виде целого числа,а именно число?
- Log in to post comments
- 365 reads
vedro-compota
Tue, 06/17/2025 - 20:12
Permalink
если переменная целочисленная
если переменная целочисленная, ей в любом случае должно быть присвоено число.
а число это может браться из:
Все что справа в любом случае приводится к числу (если надо -вычисляется) и только потом записывается в ячейку памяти.
Также почитать про вычислимость (забегая вперед) можно тут: https://fkn.ktu10.com/?q=node/8724
-- в Паскале любая вычислимая сущность обладает типом, это и дает возможность присваивать ее "результат"
_____________
матфак вгу и остальная классика =)
vedro-compota
Wed, 06/18/2025 - 15:15
Permalink
везде "да"
что значит "представить"? откуда такой термин? если его вводишь - поясни что он значит
да, верно, поэтому не можешь, типы не совпадают, см. ответ выше и читай урок)
да, выражение должно обладать целым типом. Строка, чтобы в ней написано ни было - не целый тип.
_____________
матфак вгу и остальная классика =)