Задача: Если a(возраст) >= 18 и a <= 35 и это мужчина, то подходит и если a > 35 и a <= 65 и это женщина, подходит.
program j;
var a: integer;
var s: string;
begin
read(a,s);
if (a >= 20) and (a <=35) and (s = 'м') then
writeln('Подходит')
else
if (a > 35) and (a <= 65) and (s = 'ж')then
writeln('Вы подходите')
else
writeln(' нет');
end.
Припоминаю не дружелюбность Pascal к кирилице, и похоже с кавычками не то пальто
Так должно собраться:
var a: integer;
var g: char;
begin
writeln('Your age');
readln(a);
writeln('Enter your gender m (male) or f (female)');
readln(g);
if (a >= 18) and (a <=35) and (g = 'm') then
writeln('Fits')
else
if (a > 35) and (a <= 65) and (g = 'f') then
writeln('Come up')
else
writeln('Bye Bye');
end.
А я подумал, что проблема с разделителями при вводе данных.
Если ввести ‘10 м’, то пробел пойдет в строку, а если ввести без пробела - вылет.
Т.е. read(a,s) - некорректна. Или нужно сравнивать с ’ м’ и ’ ж’.