Почему вместо строкового значения выдаётся цифра и как сделать правильно?
type grupp2021=record
gruppa:integer;
end;
var
a:array [1..15] of grupp2021;
b:string;
i,n:integer;
begin
readln(n);
for i:= 1 to n do
begin
a[i].gruppa:=1+random(5);
case a[i].gruppa of
1:b:='21ВИ1';
2:b:='14ВИ1';
3:b:='15ВИ1';
4:b:='19ВП2';
5:b:='13ВП3';
end;
end;
for i:=1 to n do begin
write('Номер группы:');
writeln(a[i].gruppa);
end;
end.
Ответы (2 шт):
Автор решения: temarazin
→ Ссылка
Так вы выводите gruppa, которая у вас тип integer. Строка у вас хранится в переменной b (причем она перезаписывается при каждой итерации).
Автор решения: Igor
→ Ссылка
type
grupp2021 = record
gruppa: integer;
b: string;
end;
...
case a[i].gruppa of
1:a[i].b:='21ВИ1';
...
end;
...
for i := 1 to n do
begin
write('Номер группы:');
writeln(a[i].gruppa, a[i].b);
end;