справочник юриста
Образец написания программы
Этот раздел посвящен программированию на Java. Все примеры написаны с использованием ООП, так как по-другому не получится (Java - объектно-ориентированный язык :-) ). Что касается среды разработки, то здесь все на ваше усмотрение. Примеры, по идее, должны запускаться любой IDE или компилироваться из консоли (с помощью javac). На данный момент я использую NetBeans IDE 5.0. но часть примеров написана с помощью более ранних версий этой IDE. Кроме того, некоторое время я пользовался Eclipse. тоже очень хорошая среда разработки. Из собственного опыта могу сказать, что при переходе с одной среды разработки на другую возникают некоторые мелкие неудобства при импортировании проектов, но все они достаточно быстро решаются. Главное, нужно четко представлять себе структуру проекта, т.е. помнить где находятся все необходимые файлы.
Совет: не пропускайте описание программы. Безусловно, исходного кода достаточно для того, чтобы разобраться в работе программы. Но в описании рассказывается о назначении отдельных файлов программы, и о взаимодействии её частей между собой.
В этой статье описано создание программы для вычисления MD5 суммы. При создании программы использован ряд интересных технологий: создание графического интерфейса (Swing), управление потоками (Threads), поддержка нескольких языков и др. >>>
P.S. Любые замечания или предложения, касающиеся этого сайта, статей и примеров, размещенных на нем, вы можете отправить лично мне по адресу vova_33@gala.net. либо сообщить всем с помощью гостевой книги.
Пример написания программы
Арифметические действия и стандартные функции
При вычислении выражения стоящего в правой части оператора присвоения могут использоваться арифметические операции:
· + – сложение
· – – вычитание
· / – деление
· % – остаток от деления.
Для задания приоритетов операций могут использоваться круглые скобки ( ). Также могут использоваться стандартные математические функции, представленные методами класса Math:
· Math.Sin(a) – синус
· Math.Sinh(a) – гиперболический синус
· Math.Cos(a) – косинус (аргумент задается в радианах)
· Math.Atan(a) – арктангенс (аргумент задается в радианах)
· Math.Sqrt(a) – квадратный корень
· Math.Abs(a) – модуль числа
В тригонометрических функциях все аргументы задаются в радианах.
Задание: составить программу вычисления для заданных значений x, y, z арифметического выражения
.
Панель диалога программы организовать в виде, представленном на рис:
Рис 2.1. Внешний вид программы.
Для вывода результатов работы программы в программе используется текстовое окно, которое представлено обычным элементом управления. После установки свойства Multiline в True появляется возможность растягивать элемент управления не только по горизонтали, но и по вертикали. А после установки свойства ScrollBars в значение Both в окне появится вертикальная, а при необходимости и горизонтальная полосы прокрутки.
Информация, которая отображается построчно в окне, находится в массиве строк Lines, каждая строка которого имеет тип string. Однако нельзя напрямую обратиться к этому свойству для добавления новых строк, поскольку размер массивов в C# определяется в момент их инициализации. Для добавления нового элемента используется свойство Text, к текущему содержимому которого можно добавить новую строку:
textBox4.Text += Environment.NewLine + Привет
В этом примере к текущему содержимому окна добавляется символ перевода курсора на новую строку (который может отличаться в разных операционных системах, и потому представлен свойством класса Environment) и сама новая строка. Если добавляется числовое значение, то его предварительно нужно привести в символьный вид методом ToString().
Работа с программой происходит следующим образом. Нажмите (щелкните мышью) кнопку «Выполнить ». В окне textBox4 появляется результат. Измените исходные значения x, y, z в окнах textBox1–textBox3 и снова нажмите кнопку «Выполнить » – появится новые результаты.
Полный текст программы имеет следующий вид:
Пример написания Крака на паскале
Delphi. Программа и Интерфейс. Исследование программ
Пример написания Крака на паскале
Оформил: DeeCo
Многие не верят в возможность написания нормального крака на паскале. Я решил разбить этот стереотип в этой статье.
Итак, я привожу пример такого крака для Opera 3.5 и коментарии ко всем строкам: На таком простом примере я показал, что даже на паскале (народном языке) возможно написание нормального крака, без необходимости изучения других языков.
ВСЁ!
Статья Пример написания Крака на паскале раздела Программа и Интерфейс Исследование программ может быть полезна для разработчиков на Delphi и FreePascal.
Комментарии и вопросы
Ваше мнение или вопрос к статье в виде простого текста ( Tag <a href=. Disabled ). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.
ПРИМЕР НАПИСАНИЯ ПРОГРАММЫ, РЕАЛИЗУЮЩУЮ ЭКРАННУЮ ФОРМУ ВВОДА ЛИЧНОЙ КАРТОЧКИ
global var1 var2 var3 var4 var5
set var1 ""
set var2 ""
set var3 ""
set var4 ""
set var5 ""
proc showValue <> < global var1 var2 var3 var4 var5
puts "Переменная var1 = $var1"
puts "Переменная var2 = $var2"
pack .buttons -side bottom -fill x -pady 2m
button .buttons.dismiss -text "Вход" -command "exit"
button .buttons.code -text "Значения" -command "showValue"
pack .buttons.dismiss .buttons.code -side left -expand 1
entry .$i.entry -relief sunken -width 40 -textvariable $i
label .$i.label
pack .$i.entry -side right
pack .$i.label -side left
> .var1.label config -text Name:
var2.label config -text Address:
var5.label config -text Phone:
pack .msg .var1 .var2 .var3 .var4 .var5 -side top -fill x
focus .var1.entry
В этом примере формы ввода личной карточки значения введенных полей записываются в переменные var1 var2 var3 var4 var5.
В начале программы объявляем глобальные переменные и присваиваем им начальные значения: global var1 var2 var3 var4 var5
set var1 ""
set var2 ""
set var3 ""
proc showValue <> <
В начале процедуры объявляем глобальные переменные, которые будем использовать
global var1 var2 var3 var4 var5
Затем распечатываем их
puts "Переменная var1 = $var1"
puts "Переменная var2 = $var2"
puts "Переменная var3 = $var3"
puts "Переменная var4 = $var4"
puts "Переменная var5 = $var5"
> Установим заголовок главного окна на строку “Form“, используя команду управления менеджером окон WM
wm title. "Form" Создадим подпись с именем .msg. Имя подписи состоит из “точки“ и имени, где “точка“ - имя родительского объекта (главное окно), имя - имя создаваемого объекта.
Кроме того, здесь же определяем шрифтом подписи, выравнивание и собственно текст
label .msg -font fixed -justify left -text "Test window." Используя команду pack, мы говорим интерпретатору, что объект с именем (в данном случае это .msg) нужно расположить в верхней части родительского (главного) окна (объекта)
pack .msg -side top
Командой frame создаем область для расположения в ней кнопок управления с именем .buttons. Как видно из имени, эта область принадлежит главному окну
frame .buttons Расположение области .buttons задаем в нижней части формы, причем эта область будет занимать по ширине все пространство родительского окна. Опция “-pady 2m“ устанавливает отступ объектов по вертикали, которые будут располагаться во внутренней части .buttons, равной 2 мм.
pack .buttons -side bottom -fill x -pady 2m Теперь создадим и расположим в созданной области кнопки управления
button .buttons.dismiss -text "Вход" -command "exit"
button .buttons.code -text "Значения" -command "showValue"
pack .buttons.dismiss .buttons.code -side left -expand 1 Имена строятся по тому же принципу, “.buttons.“ - родительское окно, “dismiss“ - имя объекта.
При нажатии кнопки .buttons.dismiss мы предписываем выполнить команду “exit“, что приведет к завершения программы. При нажатии кнопки .buttons.code мы предписываем выполнить процедуру с именем “showValue“, которая будет описана ниже.
Теперь создадим 5 полей ввода для переменных var1, var2, var3, var4 и var5. Каждое поле ввода состоит из области (frame), в которой находится поле ввода и подпись. При создании поля ввода ( команда “entry“ ) используется опция “relief“ для придания рельефа области ввода, а также задается размер в символах.
foreach i < var1 var2 var3 var4 var5> < frame .$i -bd 2
entry .$i.entry -relief sunken -width 40
entry .$i.entry -relief sunken -width 40 -textvariable $i
Опция -textvariable указывает, что значение поля ввода берется и будет записано в переменной с именем “$i“.
label .$i.label
pack .$i.entry -side right
pack .$i.label -side left
Подписи располагаются слева, а поля ввода справа.
Подписи для полей ввода определяются с помощью команды конфигурирования “config“.
.var1.label config -text Name:
var2.label config -text Address:
Использование Processing для написания программ под Android
HTML 5 + JavaScript
Processing — это подъязык программирования, основанный на java с простым и понятным си-подобным синтаксисом. Он дает возможность быстро и легко создавать мультимедиа приложения. Processing работает поверх JVM, так что вы можете использовать Java-библиотеки, а так же запускать свои приложения в браузере. В нем реализованы инструменты для построения графических примитивов, 3D-объектов, работа со светом, текстом, инструментами трансформации. Мы можем импортировать и эскпортировать файлы аудио/видео/звуковых форматов, обрабатывать события мыши/клавиатуры, работать со сторонними библиотеками (openGL, PDF, DXF), работать с сетью.
Для работы с ним на понадобиться загрузить Processing и распаковать архив. Далее запускаем processing.exe. Вот так выглядит PDE в среде Windows 8:
20_%20Processing%202.0b8%20%282013-05-14%2021.07.07%29.png" /%
Теперь давайте попробуем написать простенькую программу. Например мяч отбивающийся от стенок. Хоть processing и очень простой язык, который допускает много вольностей, но если мы хотим написать хорошую программу, то необходимо следовать некоторым соглашениям. Так, например, все функции инициализации: size() — размер окна, stroke() — цвет линий, background() — цвет фона, и некоторые другие, необходимо помещать внутрь специальной служебной функции void setup() . Рекомендуется писать ее первой. Следующая служебная функция — void draw() . Её аналогом можно назвать int main() в C++.
Эта функция является основой для построения любой анимации. Её особенностью является то, что она автоматически вызывается при каждом обновлении фреймбуфера.
Нажимаем "Run".
Результат неплохой :)
20%282013-05-14%2021.24.33%29.png" /%
Самое классное то, что все это можно без труда перенести на Android. Для этого нам потребуется скачать Android sdk. Сменить режим в Processing с "java" на "Android" и при смене указать папку где лежит наше sdk.
20_%20Processing%202.0b8%20%282013-05-14%2021.44.06%29.png" /%
Теперь, если у вас есть устройство на Android, подключите его к USB и переходите к шагу написания кода, если нет то придется настраивать, заходим Android ->Android AVD Manager в открытом окне создаем новое устройство New. и жммакаем Start. затем Launch
20Virtual%20Device%20Manager%20%282013-05-26%2023.41.05%29.png" /%
Процесс запуска эмулятора очень долгий, но в конечном итоге вы должны увидеть:
20%282013-05-26%2023.48.29%29.png" /%
Выделенные цифры нужно вписать в текстовый файл настроек Processing File ->preferences ->preferences.txt и сохранить.
Теперь когда все готово, запустим простенькую программку, реагирующую на тач:
Источники:
Следующие статьи:
11 декабря 2024 года
Комментариев пока нет!