Проверьте,есть ли ошибки? :) Программирование. Program name uses crt; var a :integer; begin clrscr; readln (a); if (a>=1703) or (a<1914) or (a>=1992) then writeln ('Санкт Петербург'); if (a>=1915) or (a<1924) then writeln ('Петроград'); if (a>=1925) or (a<=1991) then writeln ('Ленинград'); readln; end.
Программа содержит ошибку в использовании операторов or, которые используются неправильно в условных операторах. Вместо or нужно использовать and, так как условия в каждом if должны выполняться одновременно. Вот исправленный вариант:
Program name uses crt; var a :integer; begin clrscr; readln (a); if ((a >= 1703) and (a < 1914)) or ((a >= 1992)) then writeln ('Санкт Петербург'); if ((a >= 1915) and (a < 1924)) then writeln ('Петроград'); if ((a >= 1925) and (a <= 1991)) then writeln ('Ленинград'); readln; end.
Программа содержит ошибку в использовании операторов or, которые используются неправильно в условных операторах. Вместо or нужно использовать and, так как условия в каждом if должны выполняться одновременно. Вот исправленный вариант:
Program name uses crt;var
a :integer;
begin
clrscr;
readln (a);
if ((a >= 1703) and (a < 1914)) or ((a >= 1992)) then
writeln ('Санкт Петербург');
if ((a >= 1915) and (a < 1924)) then
writeln ('Петроград');
if ((a >= 1925) and (a <= 1991)) then
writeln ('Ленинград');
readln;
end.
Теперь условия if будут работать правильно.