Ввод логических переменных с клавиатуры.

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

Ввод символов с клавиатуры.

Ввод символов с клавиатуры почти не отличается от ввода чисел с клавиатуры. Для того чтобы ввести какие-то символы (буквы, знаки и т.д.) с клавиатуры необходимо для переменных использовать символьный тип данных Char.

Логические операции с целыми числами.

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

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

Примеры использования различных операторов цикла.

Примеры использования различных операторов цикла.

Программирование вычислительных процессов.

Решение задачи на ЭВМ — это сложный процесс, в ходе которого пользователю приходится выполнять целый ряд действий, прежде чем он получит интересующий его результат.

Если в текстовом режиме работы Pascal минимальной единицей экрана является символ, то в графическом режимепиксел. Пиксел имеет координаты (X и Y) и цвет (по умолчанию белый). Координаты отсчитываются с левого верхнего угла, т.е. пиксел, расположенный в верхнем левом углу имеет координаты (0,0).
Для того чтобы включить графический режим в Паскале, необходимо подключить его в разделе объявления модулей (USES). В этом уроке мы научимся запускать графический режим и выводить на экран точку.

Запуск графического режима в Паскаль. Вывод точки на экран.




Program graphika1;
uses crt, graph;
var gd, gm:integer;
color: byte;
begin
clrscr;
gd:=detect;
initgraph (gd,gm, ‘’);
if graphresult<>grok then
halt(1);
randomize;
repeat
color:=random(15);
putpixel (random (100), random(100), color);
delay (10)
until keypressed;
closegraph
end.



В строке №2 объявляем модули CRT и GRAPH. Без этих модулей графический режим работать не будет.

В строке №3 объявляются переменные «gd» и «gm». Дело в том, что для работы графического режима в Паскаль необходимо указывать тип видеоадаптера, установленного на компьютере, а также режим работы для этого видеоадаптера (разрешение экрана). Первая переменная «gd» определяет тип драйвера адаптера, вторая – режим работы адаптера.

Cтрока №7. Если Вы не знаете о том, какой тип видеоадаптера установлен на вашем компьютере, то для переменной «gd» указывается значение «detect». Благодаря этому Паскаль определит драйвер адаптера автоматически. Для переменной «gm», которая отвечает за режим работы адаптера, мы не будем указывать значение. Поэтому режим работы адаптера будет выбираться с самым высоким разрешением (по умолчанию).

В строке №8 записывается процедура Initgraph. Эта процедура инициализирует (запускает) графический режим. В круглых скобках через запятую записываются переменные «gd» и «gm». Также здесь в кавычках необходимо указать путь к программе – драйверу с расширением bgi. По умолчанию, после установки Паскаль на компьютер эта программа – драйвер находится в директории fpc/units/i386-win32/graph. Для того чтобы не указывать путь к программе – драйверу (как в нашем примере) необходимо в директории fpc/units/i386-win32/graph скопировать 2 файла: graph.o и graph.ppu, и вставить  их в директорию fpc/bin/i386-win32. Таким образом, эти файлы, отвечающие за графический режим, теперь находятся в текущей директории. И нам не нужно указывать к ним путь, достаточно поставить кавычки.

Строка №9 и №10 говорит о том, что если инициализация не была успешной, то программа остановится.
В строке №17 задаем процедуру, которая закрывает графический режим и делает экран снова текстовым.
Запомните эти строки (№2,3,7,8,9,10,17). Их можно использовать в качестве шаблона при написании программ, которые требуют запуска графического режима.

В строке №4 мы объявляем переменную color. В неё мы будем записывать значения для цвета пикселей. Всего в Паскале есть 15 различных цветов. Они обозначаются целыми числами от 0 до 15. Поэтому для переменной color мы указываем тип данных byte (целый тип 0…255).

Строка №11. Процедура Randomize инициализирует датчик случайных чисел.

В строке №12 начинается цикл, который повторяется до тех пор, пока мы не нажмем на какую-нибудь клавишу (строка №16) (until keypressed означает: до тех пор, пока не будет нажата клавиша). Цикл будет действовать на 3 оператора, которые находятся в строках №13 - №15.

В строке №13 мы присваиваем переменной color случайное число от 1 до 15, с помощью функции Random.

В строке №14 вызываем процедуру Putpixel. Эта процедура создает точку на экране в графическом режиме (Putpixel от англ. – поставить пиксел). В круглых скобках указываются координаты этой точки и ее цвет. В нашем примере координаты имеют значение (random (100), random(100)). Т.е. координаты будут генерироваться случайно. Цвет имеет значение «color». Он также генерируется случайно (строка №13). Как видите переменную «color» для определения цвета можно было не создавать. Достаточно было в строке №14 вместо «color» записать «random(15)». Таким образом, у нас получается, что процедура putpixel будет выводить на экран точку со случайными координатами и цветом.

В строке №15 вызывается процедура Daley. Прoцедура Daley используется для задержки действий в цикле. В круглых скобках указывается время задержки. Daley(1000) означает задержку в одну секунду. Таким образом, получается что точки (пикселы) будут выводится на экран с задержкой в 0,01 с.

grafika putpixelПосле запуска программы откроется консольное окно программы Pascal, в котором ничего не будет, а через несколько секунд откроется 2-ое окно – графическое, где можно будет увидеть результаты работы программы.

grafika putpixel..

grafika putpixel.

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


Предыдущая статья : Типизированные файлы в Паскаль.

Оглавление : Уроки Паскаль. Графика.

Следующая статья : Включение графического режима.


Комментарии  

 
+9 # Вадим 01.06.2012 09:21
Термин "графика" первоначально употреблялся лишь применительно к письму и каллиграфии. Новое значение он получил в конце XIX - начале XX вв. в связи с бурным развитием промышленной полиграфии и распространение м каллиграфически чёткого, контрастного линейного рисунка, наиболее удобного для фотомеханическо го воспроизведения в книге и журнале.
Ответить
 
 
0 # аноним 21.11.2012 10:51
:-* да ладно
Ответить
 
 
+2 # bro 19.11.2012 17:47
Почему пишет
File not found(graph.tpu )
Ответить
 
 
+1 # Потому что 28.11.2014 15:11
Потому что у тебя нет библиотеки граф на компьютере
Ответить
 
 
0 # Элик 20.11.2012 08:09
# bro 19.11.2012 17:47
Почему пишет
File not found(graph.tpu )


у меня тоже так же пишет
Ответить
 
 
+2 # Элик 20.11.2012 08:29
Модуль Graph.tpu по умолчанию в Турбо Паскале лежит в папке Units, оттуда его нужно скопировать в папку с программами. Кроме этого лучше туда же скопировать модуль EGAVGA.BGI из папки BGI.
Если другой Паскаль, то пишите какой.
Ответить
 
 
-4 # Бритая баба 14.01.2013 07:02
Усатый мужик ты моришь :D
Ответить
 
 
-3 # Alessan 18.01.2013 01:08
Все работает , спасибо . Лично как по мне понятно и информативно
P.S. До того как включить сам порылся в программе , покрутил цвета и делей :) Довольно забавно:)
Ответить
 
 
-3 # Костян 02.02.2013 12:42
А еще еще звук добавил в делай на 1 сек поставил) Получается каждая точка звуком сопровождается)
Классно вышло)
Хотел сделать подсчет точек, но не вышло)
Ответить
 
 
-3 # Семён 05.02.2013 19:29
Ну прям прикольное изображение получилось :-)
Ответить
 
 
-3 # Василь 10.02.2013 16:13
хорошо все описано и понятно! автору большой респект !
Ответить
 
 
-5 # Evgeniya 26.02.2013 11:43
ничего не понятно, жесть. И зачем это надо?
Ответить
 
 
-3 # Антон 25.03.2013 11:22
В паскале 16 цветов
Ответить
 
 
-4 # Вад 28.03.2013 08:14
:D Вообщето 15 цветов 16 это чёрный, а чёрный находиться под номером 0 это значит что после 15 цвета начинают повторяться. Я с таким же успехом могу сказать что в паскале 30 цветов
Ответить
 
 
-2 # Нусипова Гаухар 15.02.2014 13:23
у меня там где putpixel спрашивает запятую после color
Ответить
 
 
-5 # Нусипова Гаухар 15.02.2014 13:26
кто нибудь есть :sad:
Ответить
 
 
-4 # жжжж 30.10.2014 20:14
:sad: :cry:
Ответить
 
 
-1 # Gunel 04.02.2016 13:56
normalno :roll:
Ответить
 
 
0 # сирож 14.02.2016 14:24
y=〖sin〗^3 (x^2+a)^2-√(x/b)


z=x^2/a+cos〖(x+b)〗^2
A=1.1 b=0.004 x=0.2
помогите составить.
Ответить
 
 
+1 # бродяга 16.05.2016 07:10
:oops: :-x
Ответить
 

Добавить комментарий

   ГлавнаяПаскальГрафика в ПаскальГрафика в Паскаль.