@SevaSava

Почему программа не выводит множество на экран?

Почему программа не выводит множество А на экран?
И почему когда вводишь число, чтобы проверить, состоит ли оно в множестве, программа пишет, что не состоит - какое бы число не ввёл? Где я напортачил?

program mnozhexp;
uses crt;

var N: byte; // число от пользователя на проверку
A: set of 1..10;
B: set of 5..15;
C: set of 1..25;

//procedure NumSets(var num: byte); // процедура проверки вхождения числа в множество
procedure NumSets; // процедура проверки вхождения числа в множество
var CharInSets: char;
num: byte;
begin
Write('Введите число: ');
Readln(num);
if num in A then
Writeln('Число', num, ' входит в множество А.')
else
Writeln('Указанное число не входит в множество A.');
if num in B then
Writeln('Число', num, ' входит в множество B.')
else
Writeln('Указанное число не входит в множество B.');
if num in C then
Writeln('Число', num, ' входит в множество C.')
else
Writeln('Указанное число не входит в множество C.');
end;

procedure WriteSets; // процедура вывода множеств
var i,j: byte;
begin
Writeln('Множество A: ');
for i:=1 to 10 do
if i in A then
Write(i, '');
Writeln;
end;

begin
clrscr;
NumSets;
WriteSets;

end.
  • Вопрос задан
  • 79 просмотров
Решения вопроса 2
@kalapanga
Вы только объявили переменные типа множество с ограничениями на диапазон возможных значений, но не присвоили этим переменным никакого значения. Поэтому А, В и С сейчас это пустые множества. Добавьте что-то типа:
A := [1..10]; и т.д.
Ответ написан
HemulGM
@HemulGM
Delphi Developer, сис. админ
A: set of 1..10; - означает, переменная А типа сет, значения которого должны быть от 1 до 10.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы