Требуется помощь в решении 2 задач на перечисляемые типы данных и на множества(Паска)
Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill
-
- Сообщения: 3
- Зарегистрирован: 14 мар 2008, 18:06
Ребята, ПОЖАЛУЙСТА, помогите решить две несложные задачи!!!!!!!!!!
ОЧЕНЬ НУЖНО!!!!
1)Задача на перечисляемые типы данных.
Есть тип ИМЯ, есть массив ПОЛ размерностью ИМЯ of M (male) и F(female). И еще один массив РОСТ размерностью ИМЯ of 140-200. По массивам ПОЛ и РОСТ определить имя самого рослого мужчины. (Массивы тоже распечатать).
2)Задача на множества.Дан текст из латинских букв, за которым следует точка. Напечатать(вывести на экран) первые вхождения букв в текст, сохрания их исходный порядок. (Текст вводится с клавиатуры).
ЗАРАНЕЕ БОЛЬШОЕ СПАСИБО!
ОЧЕНЬ НУЖНО!!!!
1)Задача на перечисляемые типы данных.
Есть тип ИМЯ, есть массив ПОЛ размерностью ИМЯ of M (male) и F(female). И еще один массив РОСТ размерностью ИМЯ of 140-200. По массивам ПОЛ и РОСТ определить имя самого рослого мужчины. (Массивы тоже распечатать).
2)Задача на множества.Дан текст из латинских букв, за которым следует точка. Напечатать(вывести на экран) первые вхождения букв в текст, сохрания их исходный порядок. (Текст вводится с клавиатуры).
ЗАРАНЕЕ БОЛЬШОЕ СПАСИБО!
#1
[syntax='Delphi']
Program lalala;
type name=string;
names=array[1..100] of name;
pol=array[1..100] of ('M','F'); {Я не помню, как именно это описывается}
rost=array[1..100] of 140..200;
var i,q,max:integer;
maxname:name;
n:names;
p
ol;
r:rost;
begin
readln(q);
for i:=1 to q do
read(n[q],p[q],r[q]);
max:=0;
maxname:='';
for i:=1 to q do
if pol='M' then if rost>max then begin
max:=rost; maxname:=n; end;
writeln(maxname);
end. {напиши сам для вывода всего остального}
[/syntax]
#2
[syntax='Delphi']
program lalala;
var s:char;
letters:set of char;
begin
s:=']';
letters:=['a'..'z']+['A'..'Z'];
while s<>'.' do
if s in letters then begin write(s);letters:=letters-[s]; end;
end.
[/syntax]
А подобные темы помещай в решите мне задачку (чит.здесь)
[syntax='Delphi']
Program lalala;
type name=string;
names=array[1..100] of name;
pol=array[1..100] of ('M','F'); {Я не помню, как именно это описывается}
rost=array[1..100] of 140..200;
var i,q,max:integer;
maxname:name;
n:names;
p

r:rost;
begin
readln(q);
for i:=1 to q do
read(n[q],p[q],r[q]);
max:=0;
maxname:='';
for i:=1 to q do
if pol='M' then if rost>max then begin
max:=rost; maxname:=n; end;
writeln(maxname);
end. {напиши сам для вывода всего остального}
[/syntax]
#2
[syntax='Delphi']
program lalala;
var s:char;
letters:set of char;
begin
s:=']';
letters:=['a'..'z']+['A'..'Z'];
while s<>'.' do
if s in letters then begin write(s);letters:=letters-[s]; end;
end.
[/syntax]
А подобные темы помещай в решите мне задачку (чит.здесь)
Ваши руки совершили идиотскую ошибку и будут оторваны!
[OK]
[OK]
Ну вообще-то по моему это описывается так:
[syntax='Delphi']
Type
TPol=(M,F);
TName=(Ivanov,Petrov, Sidorov);
var
Pol:array[TName] of TPol;
[/syntax]
[syntax='Delphi']
Type
TPol=(M,F);
TName=(Ivanov,Petrov, Sidorov);
var
Pol:array[TName] of TPol;
[/syntax]
Ни что так не ограничивает фантазию программиста, как компилятор...
Но т.к. это не переменные/константы, то кавычки, по ходу, тоже надо ставить...
Ваши руки совершили идиотскую ошибку и будут оторваны!
[OK]
[OK]
-
- Сообщения: 375
- Зарегистрирован: 31 авг 2007, 03:06
Medved, нет, в том то и фишка, что это как раз переменные! ;-))
MOTOCoder написал полностью компилируемый код, без ошибок. никаких кавычек не надо (да с ними как раз и будут ошибки...)
MOTOCoder написал полностью компилируемый код, без ошибок. никаких кавычек не надо (да с ними как раз и будут ошибки...)
Спасибо, в будущем учту" писал(а):нет, в том то и фишка, что это как раз переменные! ;-))
Ваши руки совершили идиотскую ошибку и будут оторваны!
[OK]
[OK]
-
- Сообщения: 3
- Зарегистрирован: 14 мар 2008, 18:06
Medved, Извини, но у меня не запускаются обе задачи!!! В первой выдаёт ошибку в строке read(n[q],p[q],r[q]);. А во второй вообще зависает экран и ничего не возможно нажать!!!
#2 Я забыл про строку =)
Ваши руки совершили идиотскую ошибку и будут оторваны!
[OK]
[OK]