Процедура Writeln в Pascal

Помимо зарезервированного слова Write, для вывода сообщения на экран в Pascal используется процедура Writeln. Отличие процедуры Writeln от оператора Write заключается в том, что Writeln после вывода сообщения на экран переводит курсор на другую ...

Использование вложенного оператора If.

Условные операторы в Pascal можно вкладывать друг в друга. Для этого используется вложенный оператор IF. Рассмотрим это на примере программы, которая будет считать количество корней квадратного уравнения.

Логические операции And, Or, Not, Xor в Pascal.

Над переменными логического типа можно производить логические операции. В языке программирования Pascal существуют следующие логические операции : Andлогическое умножение, Orлогическое сложение, Notлогическое отрицание, Xor ...

Циклы и массивы

ФАЙЛЫ ЗАПИСЕЙ

В практике программирования часто встречаются задачи, решение которых требует большого количества относительно мало изменяемых во времени данных. Ввод данных с экрана заново при каждом счете для этих ...

Многомерные массивы.

Индексы имеют еще одно свойство — чем больше объем массива, тем менее эффективна с ним работа, поэтому часто используют массивы массивов, то есть с двумя, тремя и более индексами для идентификации ...

Уроки Паскаль

В этом уроке мы напишем самую простую программу, состоящую всего из пяти строк. Эта программа будет выводить сообщение на экран. Для написания программы нам необходимо знать как работают операторы Write, Readln, а также понять для чего нужны зарезервированные в Паскаль слова Program, Begin, End.

program number1;
begin
write (‘Привет.’);
readln
end.

В строке №1 записывается заголовок программы. Все программы, написанные на языке Pascal, начинаются со служебного слова program. Слово program зарезервировано в Pascal, т.е. оно может использоваться только для объявления имени программы. Далее, через пробел записывается название программы, которое мы придумываем сами. Для примера назовем нашу первую программу «number1». В конце первой строки ставится точка с запятой.

Строка №2. Тело программы начинается с зарезервированного в Pascal слова begin. После него не ставится точка с запятой. Заканчивается программа зарезервированным словом end. (строка №5). После слова end ставится точка. Конструкция begin…end является разделом операторов. Внутри этого раздела находятся операторы, которые будут выполняться программой. В любой программе должны присутствовать слова begin…end.

В строке №3 записывается первый оператор, который будет выполнять программа. Оператор Write служит для вывода на экран какого-либо сообщения. Текст этого сообщения записывается после слова Write, заключается в круглые скобки и в апострофы. В конце обязательна точка с запятой (все операторы в программе должны отделяться друг от друга точкой с запятой). Таким образом, в результате работы оператора Write на экран будет выведено сообщение «Привет.»

В строке №4 записывается оператор readln. Этот оператор служит для задержки экрана, чтобы мы могли увидеть результаты выполнения программы на экране. Если его не использовать, то после того как программа будет выполнена экран сразу свернется и мы не успеем увидеть выводимое на экран сообщение. Кстати, оператор Readln можно не использовать. А для того чтобы увидеть результаты выполнения программы можно нажать Alt+F5. После оператора Readln у нас не стоит точка с запятой т. к. далее идет оператор end. (перед End. точка с запятой не обязательна). Теперь наберем нашу программу в Паскале.

pervaya programma.

Сохраним, нажав F2 (или в командной строке File-Save) и запустим ее, нажав Ctrl+F9 (либо в панели команд Run-Run).
Получим следующий результат.

pervaya programma..

Самая нижняя строка и есть наш результат.
Теперь нажмем Enter (для завершения выполнения программы) и еще раз запустим программу.
Получим следующий результат.

pervaya programma...

Этим примером я хочу показать Вам, что каждый раз при запуске программы старые результаты программы тоже будут выводиться на экран. Для того чтобы этого избежать, используется оператор очистки экрана clrscr (сокращенно от англ. Clear Screen (очистить экран)), который ставится вначале программы после слова begin. Для того чтобы этот оператор работал необходимо подключить модуль CRT с помощью команды USES.

Программа будет выглядеть так:

pervaya programma....

Заметьте, что после Uses Crt и после Clrscr ставится точка с запятой.
После запуска (ctrl+F9) окно вывода сообщения будет иметь вид:

pervaya programma.....



Дополнение к материалу.

1. Программа, запущенная в Free Pascal обрабатывается какое-то количество времени. Поэтому после запуска необходимо подождать несколько секунд. Вы увидите сообщение о том, что выполняется программа, а через несколько секунд (1-20) увидите результат выполнения программы.

2. При запуске программ, которые должны выводить на экран текст на русском языке может возникнуть проблема с кодировкой. В консольном окне вы увидите непонятные символы. Для того чтобы этого избежать небходимо кликнуть правой кнопкой мыши по верхней части консольного окна (там, где написано C:\FPC\2.2.2\bin\i386-win32\fp.exe), выбрать «Свойства» и перейти на вкладку «Шрифт». Здесь выбираем «точечные шрифты» и нажимаем Ok.

3. Компилятору Pascal абсолютно безразлично какими буквами Вы будете набирать программу, заглавными или строчными, т.е. регистр при наборе программ роли не играет.

4. Имя программы (в нашем случае «number1») не играет какой-либо роли в программе, поэтому не обязательно объявлять имя программы с помощью слова «Program». Таким образом, первую строку программы можно не писать и это никак не повлияет на работу программы.

5. Как уже было сказано, слово «Program» является зарезервированным словом в Pascal. Зарезервированные слова можно использовать только по их прямому назначению. При наборе программ в редакторе Pascal все зарезервированные слова подсвечиваются белым цветом. Название программы «number1» является идентификатором (именем). Идентификаторы – это последовательности символов, которые придумывает сам программист. В нашем примере нам необходимо было придумать название программы. При написании идентификаторов используются определенные правила:

  • Идентификатор начинается с буквы, или знака подчеркивания.
  • Содержит только буквы, цифры или знак подчеркивания.
  • Между двумя идентификаторами должен стоять разделитель.
  • Максимальная длина 127 символов. Все символы значимы.
  • Идентификатор не может повторять зарезервированное слово.

Комментарии  

 
-76 # миша 09.04.2012 10:38
мне 10 лет я ито понял
 
 
+26 # Влад 11.04.2012 17:35
Ахахах) Ололошки учите паскаль, в жизни пригодиться. Это самый простой язык программировани я.
 
 
-109 # максим 12.05.2012 14:54
Миша, тебя опередили я в 5 лет C++ знал, а в 7 ассемблер
 
 
+21 # лол 07.10.2012 12:38
В 5 лет C++ PFF
АХАХАХАХАХАХАХ АХАХАХАХАХАХАХА Х
 
 
-26 # Антон 28.02.2013 09:50
Пффф, я в 2 года PHP, JavaScript, Basic, C++, Assembler знал
 
 
-19 # Ник 24.02.2014 08:23
А я А я в 2 года твой дом труба шаталь :lol:
 
 
-8 # супер программер 22.10.2015 14:27
я до своего рождения запрограммирова л маму на быстрое получение питательных веществ на Java, C++, PHP, Basic, Assembler, Pascal
 
 
+3 # Аллигатор 05.09.2012 14:48
Вопрос: какой язык программировани я самый сложный? Понятно что в каждом языке свои сложности и т.д, но какой по вашему САМЫЙ СЛОЖНЫЙ?
 
 
+4 # Юлия 14.10.2015 12:45
CC++
 
 
+23 # Administrator 06.09.2012 06:18
Из тех, которые могут пригодиться, низкоуровневые языки программировани я, например, Ассемблер.
 
 
+10 # Кристя 26.10.2012 13:46
Хороший сайт! Все понятно! :-)
 
 
-13 # Сандра 16.11.2012 14:34
дааааа) наш информатик нас убивааает! а я все поняла! :P
 
 
-30 # Оля 24.11.2012 15:23
Мне 11 и я знаю уже кучу алгоритмов....
И не только...
 
 
+2 # Дори 09.12.2012 12:44
И вправду, все просто и понятно, вот так я к сессии готовлюсь))
 
 
+4 # Максалина 10.12.2012 18:41
Помогите составить программу Z=(X в кубе/9+yx в квадрате)*99/y+ x при х=2 y=3
 
 
+7 # Сергей 13.12.2012 22:08
Максалина вот твоя программа :lol: :lol:
var x,y: integer;
var z: complex;
begin
x:=2;
y:=3;
z:=((x,3)/9+(y*x,2))*99/y+x;
writeln(z,' ');
end.
 
 
+7 # Максалина 18.12.2012 09:56
Спасибо,Сергей 13.12.2012 22:08. :-) Но у вас она составлена немного не правильно. :zzz Я уже поняла как её составлять. Но всё равно, большое спасибо. :-)
 
 
+5 # Наталья 18.12.2012 15:19
да допущена ошибка у меня не получается и выдает ошибку
 
 
-4 # Александр К 19.12.2012 16:09
Сайт супер - написал первую программу - потом на память несколько раз переписал.Перех ожу в следующий урок - очень благодарен!Спас ибо))))
 
 
-5 # АЙЖАН 22.12.2012 12:02
РАХМЕТ
 
 
-1 # Zhenko 24.12.2012 18:10
Умоляю! Помогите составить программу
Векторы и матрицы
Дан вектор А, состоящий из 12 вещественных чисел. Оставить его без изменения, если он упорядочен по возрастанию или по убыванию. В противном случае удалить те элементы А, порядковые номера которых кратны трём, сохранив прежним порядок оставленных членов.
А={-1.5,2.9,3.2 ,-0.6,5.4,0.7,- 4.1 ,8.3,7.2,-2.9,- 1.3,6.5}
 
 
+1 # Casil 16.03.2018 13:30
Program P1;
uses crt;
const
n_max = 100;
var
a: array[1..n_max] of integer;
n, m, i, j, q, pos: integer;
t: boolean;
max, tmp: integer;
begin
write('Введите размерность массива: ');
readln(n);
WriteLn ('Введите элементы массива');
for i := 1 to n do
begin
a := -n_max div 2 + n_max;
write('A[',i,'] = ');
ReadLn (A);
if a > max then
begin
max := a;
pos := i;
end;
end;
writeln;
i := 1;
while (i < n) and not t do
begin
if a < a[i + 1] then
t := true;
inc(i);
end;
for j := 1 to n - 1 do
for q := j + 1 to n do
if a[j] > a[q] then
begin
tmp := a[j];
a[j] := a[q];
a[q] := tmp;
end;
writeln('Отсорт ированный массив: ');
for i := 1 to n do
write(a:5);
end.
 
 
0 # Павел 25.12.2012 10:07
Zhenko! Боюсь тут тебе не помогут никак. Большая часть народа либо просто хвастается либо умеет но делать такие простейшие программы как a:=1+1; Обратись лучше на какой нибудь форум, а лучше изучи сам. ;-)

Вот один не плохой форум: http://www.cyberforum.ru/

Желаю удачки тебе! Творческих успехов :-)
 
 
+7 # Аня 25.12.2012 16:34
Павел, если такой умный, то взял бы да помог Zhenko. ;-)
 
 
+3 # Виталек 30.01.2013 13:44
Даа.программиро вание вещь сложная
 
 
0 # Дмитрий 12.02.2013 20:00
Ничего не сложная. Вот здесь есть простые уроки, написанные простым языком.
pascal-abc.ru
 
 
-2 # Программист-Студент 17.02.2013 13:55
Сергей ты оператор забыл вставить, по моему "if"
 
 
+4 # Артем 21.02.2013 13:42
Вот программа, которая меняет системную дату и время... никак не могу сделать так, чтобы ClrScr заработала...! помогите кто в этом шарит...
uses Crt;
Uses Dos;
CONST
days:ARRAY [0..6] of string [11] = ('Voskr.', 'Ponedel.', 'Vtornik', 'Sreda', '4etverg', 'Pyatnica', 'Subbota');
VAR
year, month, day, day_of_week : WORD;
VAR hour, minute, second, hund : WORD;

BEGIN
Writeln ('_________________________________________');
Writeln ('------------- --------------- -------------') ;
ClrScr;
Write('Cleared Screen!');

PROCEDURE Get_Date;
BEGIN
GetDate (year, month, day, day_of_week);
Writeln ('Segodnya: ', days[day_of_wee k], ',', day,'/', month,'/',year);
Writeln ('------------- --------------- -------------') ;
END;
PROCEDURE Set_Date;
BEGIN
Writeln('Vvedit e daty: ');
Readln(day, month, year);
SetDate (year, month, day);
Writeln ('_________________________________________');
Writeln ('------------- --------------- -------------') ;
END;
PROCEDURE Get_Time;
BEGIN
GetTime (hour, minute, second, hund);
Writeln ('Sey4as: ', hour,':', minute,':', second,':', hund);
Writeln ('------------- --------------- -------------') ;
END;
PROCEDURE Set_Time;
BEGIN
Writeln ('Vvedite vremya');
Readln(hour, minute, second, hund);
SetTime(hour, minute, second, hund);
END;
BEGIN
Get_Date;
Set_Date;
Get_Time;
Set_Time;
Get_Time;
Writeln ('OK!');
Writeln;
Writeln ('Najmite Enter dlya vihoda ...');
Readln;
End.
 
 
-1 # ЕвгенЕвгений 12.01.2015 15:30
Если это Паскаль, то ты зря этот клрскр в начале ставишь. Ставь его либлибо в тело основноосновной программы, либо в процедуры, но явно не в недоделанный бегин
 
 
-1 # Soofy230 13.05.2017 05:44
Перед каждым begin поставь должно помочь
 
 
-1 # Den 05.03.2013 23:56
подскажите, переписал все один в один как тут написано, все точки с запятой и все такое...но при запуске программы выскакивает такое сообщение

Error: Identifier not found "readIn"

гуглил не помогло, не смог найти причины...
 
 
-1 # Den 05.03.2013 23:57
а когда убрал readIn - заработало, но на экран понятно что ничего не выводит, просто видно как мелькает программа и ошибки нет :sad:
 
 
+4 # Антон 21.03.2013 19:06
Хм.. Попробуй после "readln" поставить точку с запятой, если не поставил, может устранится ошибка... или воспользуйся процедурой "delay"
 
 
-4 # Олег 16.03.2013 09:14
Артем, удали вот эту строчку: "Write('Cleared Screen!');"
Тогда заработает. Я так думаю.
 
 
-3 # Александр 16.03.2013 16:13
Интересно и просто!
 
 
0 # Дмитрий 28.03.2013 13:46
У меня почему-то слово write написано желтым, а должно быть, как я понимаю белым... И без конца выдаёт ошибки(
 
 
-1 # Артем 21.05.2013 18:02
Напиши не write , а writeln
 
 
-3 # убери ковычки 05.03.2014 02:20
:P :lol: :lol: :lol:
 
 
+4 # Антон 02.03.2014 16:02
program piramidka;

var
p7, p4, p1, p8, p5, p2, p9, p6, p3, st1, st2, st3, vod1, vod2, ind,ind2,pam, shet, shet1: integer;hod, ris1, ris2, ris3, ris4, ris5, ris6, ris7, ris8, ris9: string;

begin
write('Игра башня!');
writeln('Цель игры:пирамидку из левой части перетащить в правую!');
writeln('Как играть! Вы вводите два числа от 1 до 3. ПЕРВОЕ число означает столбец откуда будет взята часть. ВТОРОЕ число означает в какой столбец будет положена.');
ind2:=1;
while ind2=1 do
begin
shet:=0;
ris1 := '(0000)';ris2 := '__|__ ';ris3 := '__|__ ';ris4 := ' (00) ';ris5 := ' | ';ris6 := ' | ';ris7 := ' () ';ris8 := ' | ';ris9 := ' | ';
p1 := 4;p2 := 0;p3 := 0;p4 := 2;p5 := 0;p6 := 0;p7 := 1;p8 := 0;p9 := 0;
writeln('Начнем !');
writeln(' () | | ');
writeln(' (00) | | ');
writeln('(0000) __|__ __|__ ');
writeln(' 1 2 3 ');
writeln();
ind:=0;
while ind = 0 do
begin
st1 := p7 + p4 + p1;
st2 := p8 + p5 + p2;
st3 := p9 + p6 + p3;
vod1 := 0;
vod2 := 0;
writeln('Вводит е ПЕРВОЕ число!');
while (vod1 > 3) or (vod1 = 0) do
begin
if vod1 > 3 then writeln('Число должно быть от 1 до 3,вводите еще раз.');
readln(vod1);
end;
writeln('Вводит е ВТОРОЕ число!');
while (vod2 > 3) or (vod2 = 0) or (vod2 = vod1) do
begin
if (vod2 > 3) or (vod1 = vod2) then writeln('Число должно быть от 1 до 3 и не равно 1 числу,вводите еще раз.');
readln(vod2);
end;
case vod1 of
1:
begin
case st1 of
1:
begin
if (vod2 = 2) then
case st2 of
0: begin p2 := p1;p1 := 0;shet := shet + 1; end;
2: begin p5 := p1;p1 := 0;shet := shet + 1; end;
4: begin p5 := p1;p1 := 0;shet := shet + 1; end;
6: begin p8 := p1;p1 := 0;shet := shet + 1; end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p1;p1 := 0;shet := shet + 1; end;
2: begin p6 := p1;p1 := 0;shet := shet + 1; end;
4: begin p6 := p1;p1 := 0;shet := shet + 1; end;
6: begin p9 := p1;p1 := 0;shet := shet + 1; end;
end;
end;
2:
begin
if (vod2 = 2) then
case st2 of
0: begin p2 := p1;p1 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так!'); end;
4: begin p5 := p1;p1 := 0;shet := shet + 1; end;
5: begin writeln('Нельзя так!'); end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p1;p1 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так!'); end;
4: begin p6 := p1;p1 := 0;shet := shet + 1; end;
5: begin writeln('Нельзя так!'); end;
end;
end;
3:
begin
if (vod2 = 2) then
case st2 of
0: begin p2 := p4;p4 := 0; shet := shet + 1; end;
4: begin p5 := p4;p4 := 0;shet := shet + 1; end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p4;p4 := 0;shet := shet + 1; end;
4: begin p6 := p4;p4 := 0;shet := shet + 1; end;
end;
end;
4:
begin
if (vod2 = 2) then
case st2 of
0: begin p2 := p1;p1 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
2: begin writeln('Нельзя так'); end;
3: begin writeln('Нельзя так'); end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p1;p1 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
2: begin writeln('Нельзя так'); end;
3: begin writeln('Нельзя так'); end;
end; end;
5:
begin
if (vod2 = 2) then
case st2 of
0: begin p2 := p4;p4 := 0; shet := shet + 1; end;
2: begin p5 := p4;p4 := 0;shet := shet + 1; end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p4;p4 := 0; shet := shet + 1; end;
2: begin p6 := p4;p4 := 0; shet := shet + 1; end;
end; end;
6:
begin
if (vod2 = 2) then
case st2 of
0: begin p2 := p4;p4 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p4;p4 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
end; end;
7:
begin
if (vod2 = 2) then begin p2 := p7;p7 := 0;shet := shet + 1; end; if (vod2 = 3) then begin p3 := p7;p7 := 0; shet := shet + 1; end;
end;end; end;
2:
begin
case st2 of
1:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p2;p2 := 0;shet := shet + 1; end;
2: begin p4 := p2;p2 := 0; shet := shet + 1; end;
4: begin p4 := p2;p2 := 0;shet := shet + 1; end;
6: begin p7 := p2;p2 := 0;shet := shet + 1; end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p2;p2 := 0;shet := shet + 1; end;
2: begin p6 := p2;p2 := 0;shet := shet + 1; end;
4: begin p6 := p2;p2 := 0;shet := shet + 1; end;
6: begin p9 := p2;p2 := 0;shet := shet + 1; end;
end; end;
2:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p2;p2 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так!'); end;
4: begin p4 := p2;p2 := 0;shet := shet + 1; end;
5: begin writeln('Нельзя так!'); end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p2;p2 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так!'); end;
4: begin p6 := p2;p2 := 0;shet := shet + 1; end;
5: begin writeln('Нельзя так!'); end;
end; end;
3:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p5;p5 := 0;shet := shet + 1; end;
4: begin p4 := p5;p5 := 0;shet := shet + 1; end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p5;p5 := 0;shet := shet + 1; end;
4: begin p6 := p5;p5 := 0;shet := shet + 1; end;
end; end;
4:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p2;p2 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
2: begin writeln('Нельзя так'); end;
3: begin writeln('Нельзя так'); end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p2;p2 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
2: begin writeln('Нельзя так'); end;
3: begin writeln('Нельзя так'); end;
end; end;
5:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p5;p5 := 0;shet := shet + 1; end;
2: begin p4 := p5;p5 := 0;shet := shet + 1; end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p5;p5 := 0;shet := shet + 1; end;
2: begin p6 := p5;p5 := 0;shet := shet + 1; end;
end; end;
6:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p5;p5 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
end;
if (vod2 = 3) then
case st3 of
0: begin p3 := p5;p5 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
end; end;
7:
begin
if (vod2 = 1) then begin p1 := p8;p8 := 0;shet := shet + 1; end;if (vod2 = 3) then begin p3 := p8;p8 := 0;shet := shet + 1; end;
end;end; end;
3:
begin
case st3 of
1:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p3;p3 := 0;shet := shet + 1; end;
2: begin p4 := p3;p3 := 0; shet := shet + 1; end;
4: begin p4 := p3;p3 := 0;shet := shet + 1; end;
6: begin p7 := p3;p3 := 0;shet := shet + 1; end;
end;
if (vod2 = 2) then
case st2 of
0: begin p2 := p3;p3 := 0;shet := shet + 1; end;
2: begin p5 := p3;p3 := 0; shet := shet + 1; end;
4: begin p5 := p3;p3 := 0;shet := shet + 1; end;
6: begin p8 := p3;p3 := 0;shet := shet + 1; end;
end; end;
2:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p3;p3 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так!'); end;
4: begin p4 := p3;p3 := 0;shet := shet + 1; end;
5: begin writeln('Нельзя так!'); end;
end;
if (vod2 = 2) then
case st2 of
0: begin p2 := p3;p3 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так!'); end;
4: begin p5 := p3;p3 := 0;shet := shet + 1; end;
5: begin writeln('Нельзя так!'); end;
end; end;
3:
begin
if (vod1 = 1) then
case st1 of
0: begin p1 := p6;p6 := 0;shet := shet + 1; end;
4: begin p4 := p6;p6 := 0;shet := shet + 1; end;
end;
if (vod2 = 2) then
case st2 of
0: begin p2 := p6;p6 := 0;shet := shet + 1; end;
4: begin p5 := p6;p6 := 0;shet := shet + 1; end;
end; end;
4:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p3;p3 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
2: begin writeln('Нельзя так'); end;
3: begin writeln('Нельзя так'); end;
end;
if (vod2 = 2) then
case st2 of
0: begin p2 := p3;p3 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
2: begin writeln('Нельзя так'); end;
3: begin writeln('Нельзя так'); end;
end; end;
5:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p6;p6 := 0;shet := shet + 1; end;
2: begin p4 := p6;p6 := 0;shet := shet + 1; end;
end;
if (vod2 = 2) then
case st2 of
0: begin p2 := p6;p6 := 0;shet := shet + 1; end;
2: begin p5 := p6;p6 := 0;shet := shet + 1; end;
end; end;
6:
begin
if (vod2 = 1) then
case st1 of
0: begin p1 := p6;p6 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
end;
if (vod2 = 2) then
case st2 of
0: begin p2 := p6;p6 := 0;shet := shet + 1; end;
1: begin writeln('Нельзя так'); end;
end; end;
end;



end;
end;
if p1 = 1 then ris1 := ' () ';
if p2 = 1 then ris2 := ' () ';
if p3 = 1 then ris3 := ' () ';
if p4 = 1 then ris4 := ' () ';
if p5 = 1 then ris5 := ' () ';
if p6 = 1 then ris6 := ' () ';
if p7 = 1 then ris7 := ' () ';
if p8 = 1 then ris8 := ' () ';
if p9 = 1 then ris9 := ' () ';

if p1 = 2 then ris1 := ' (00) ';
if p2 = 2 then ris2 := ' (00) ';
if p3 = 2 then ris3 := ' (00) ';
if p4 = 2 then ris4 := ' (00) ';
if p5 = 2 then ris5 := ' (00) ';
if p6 = 2 then ris6 := ' (00) ';

if p1 = 4 then ris1 := '(0000)';
if p2 = 4 then ris2 := '(0000)';
if p3 = 4 then ris3 := '(0000)';

if p1 = 0 then ris1 := '__|__ ';
if p2 = 0 then ris2 := '__|__ ';
if p3 = 0 then ris3 := '__|__ ';
if p4 = 0 then ris4 := ' | ';
if p5 = 0 then ris5 := ' | ';
if p6 = 0 then ris6 := ' | ';
if p7 = 0 then ris7 := ' | ';
if p8 = 0 then ris8 := ' | ';
if p9 = 0 then ris9 := ' | ';

writeln(ris7, ris8, ris9);
writeln(ris4, ris5, ris6);
writeln(ris1, ris2, ris3);
writeln('');
st3 := p9 + p6 + p3;
if st3 = 7 then
begin
writeln('ВЫ ПОБЕДИТЕЛЬ!!!') ;
shet1 := shet mod 10;
case shet1 of
1:hod:=' ход.';
2, 3, 4: hod:=' хода.';
5, 6, 7, 8, 9: hod:=' ходов.';
end;
writeln('Было сделано ', shet,hod);
shet1 := pam mod 10;
case shet1 of
1:hod:=' ход.';
2, 3, 4: hod:=' хода.';
end;
if pam>0 then
begin
if pamshet then writeln('В этот раз было лучше.До этого было ',pam,hod);
if pam=shet then writeln('Число ходов не отличается от того что было.');
end;
pam:=shet;
ind := 2;
writeln('Хотите сыграть еще раз?');
writeln('Да-1') ;
writeln('Нет-2' );
readln(ind2);
end;
end;
end;
end.
 
 
+1 # Никита 22.11.2015 11:26
Ты там кое-что неправильно написал :
if pam=shet then writeln('В этот раз было лучше.До этого было ',pam,hod);
if pamshet then writeln('Число ходов не отличается от того что было.');

а надо :

if pam=shet then writeln('В этот раз было лучше.До этого было ',pam,hod);
if pam=shet then writeln('Число ходов не отличается от того что было.');
 
 
-1 # Антон 02.03.2014 16:02
играйте на здоровье
 
 
0 # Антон 02.03.2014 16:03
игра на pascalABC.NET
 
 
-1 # Женя 03.09.2014 19:18
На начало изучения паскаля в школе, я забивал, вместо этого учил C, а потом C++.
Теперь я должен заново все начинать =).
 
 
-5 # Виктор 06.02.2015 00:21
Антон :lol: маленькая ошибочка
 
 
0 # помогите 16.10.2015 17:12
Program:2
Var x,y,z,Y,C :integer;
Begin
readln (x,y,z);
x:= 1.825;y:= -18.225; z:= -3.298; Y:= Abc(Sqr Sqr(y/x))- exp(1/3*Ln(y/x));
C:= (y-x)y-z/(y-x)/1+(y-Sqr(x))
writeln (x,y,z,Y,C)
end
:zzz :zzz
 
 
-1 # Вдруг поможет 21.11.2015 23:18
Введи переменную не integer , а real
 
 
0 # Никита 22.11.2015 11:37
Много ошибок ! Имя программы - это 1 ошибка , повтор переменной Y, вместо integer , надо написать real , не доставил знак ";" после "writeln (x,y,z,Y,C)". После "end" не поставил точку ну и дальше сам ищи
 
 
+1 # 88005553535 22.11.2015 11:47
Program one;
Var x,g,z,Y,C :real;
Begin
x:= 1.825;g:= -18.225; z:= -3.298; Y:=(Sqr(g/x))- exp(1/3*Ln(g/x));
C:= (g-x)*y-z/(g-x)/1+(g-Sqr(x));
writeln(x,g,z,Y,C);
readln (x,g,z)
end.
 
 
-1 # розымырат 20.04.2016 21:26
не понятно программо
 
 
-1 # Kris 03.05.2016 10:32
Var a,b:integer;
begin
read (a,b);
writeln (a/b);
end. :lol:
 
 
+3 # President_5455 28.08.2018 16:00
Напишу игру на Pascal.
 
 
0 # Vasil 30.09.2021 04:39
Напиши
 
 
+1 # Serg 06.10.2021 11:18
:D norm
 
 
0 # Avenue17Ru 21.10.2022 09:10
Какие слова...
 
   ГлавнаяПаскальУроки ПаскальТип данных Char. Функции Ord, Chr.