• XSS.stack #1 – первый литературный журнал от юзеров форума

Нужна помощь с программой на языке Pascal

Onyx1050

(L3) cache
Пользователь
Регистрация
03.05.2024
Сообщения
175
Реакции
8
Здравствуйте изучаю програмирования сейчас прохожу ''Паскаль'' решил написать программу которая Условие задачи - "справшивает год рождения у пользователя и при этом нужно проверить действительно ли веденное число может представлять собой год рождения.Будем считать что заведомо год рождения не может быть меньше чем 1900 и не может привышать 2020". Это условие задачи из книги.
В чем собствена проблемма, так как слабо еще разбираюсь в коде так как учусь, при компиляции исходного кода выдает ошибку вроде все правильно из книги перепечатол проверил пример исходного кода и всеравно валивает ошибку.
Компилятор "free pascal compiler"
Помогите пожалуйста что не так в коде и что я не правильно делаю ,где я допустил ошибки, и как правильно такая программа пишется?
скриншоты исходного кода и ошибки прикрепил.
 

Вложения

  • Снимок экрана от 2025-03-09 13-27-12.png
    Снимок экрана от 2025-03-09 13-27-12.png
    42.9 КБ · Просмотры: 57
  • Снимок экрана от 2025-03-09 13-48-50.png
    Снимок экрана от 2025-03-09 13-48-50.png
    69.6 КБ · Просмотры: 57
Вот правильный код, проверил на online компиляторе:
Код:
program god;
var
    year: integer;
begin
  write('Please type in your birth year ');
  readln(year);
 
  while(year < 1900) or (year > 2020) do
  begin
    writeln(year, ' is not a valid year!');
    write('Please try again: ');
    readln(year);
  end;
 
  writeln('The year ', year, ' is accepted. Thank you!');
end.
 
Вот правильный код, проверил на online компиляторе:
Код:
program god;
var
    year: integer;
begin
  write('Please type in your birth year ');
  readln(year);
 
  while(year < 1900) or (year > 2020) do
  begin
    writeln(year, ' is not a valid year!');
    write('Please try again: ');
    readln(year);
  end;
 
  writeln('The year ', year, ' is accepted. Thank you!');
end.
Все понял де я ошибся сравнил два кода твой и свой,спасибо за помощь.
 
You can use a repeat ... until structure for this kind of loop
 
Все понял де я ошибся сравнил два кода твой и свой,спасибо за помощь.
Будут вопросы, задавай, постараюсь помочь. Хоть вспомню былое.
 
Вот правильный код, проверил на online компиляторе:
Код:
program god;
var
    year: integer;
begin
  write('Please type in your birth year ');
  readln(year);
 
  while(year < 1900) or (year > 2020) do
  begin
    writeln(year, ' is not a valid year!');
    write('Please try again: ');
    readln(year);
  end;
 
  writeln('The year ', year, ' is accepted. Thank you!');
end.
ага, он пропустил begin -end. для тела основной программы. Блин, тыщу лет на паскале не писал, а руки помнят )
 
ага, он пропустил begin -end. для тела основной программы. Блин, тыщу лет на паскале не писал, а руки помнят )
Ну так,опыт не куда не девается.)
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх