Пример написания программы написания

В качестве примера рассмотрим программу, реализующую экранную форму ввода личной карточки.

Текст программы:
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»
puts «Переменная var3 = $var3»
puts «Переменная var4 = $var4»
puts «Переменная var5 = $var5»

> wm title . «Form»
label .msg -font fixed -justify left -text «Test window.»
pack .msg -side top
frame .buttons
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

Пример написания управляющей программы в NX


foreach i < frame .$i -bd 2
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 «»
set var4 «»
set var5 «» Затем описываем процедуру, которая будет вызываться при нажатии кнопки ⌠Значения⌠ и выдавать на стандартное устройство вывода значения наших переменных:

В начале процедуры объявляем глобальные переменные, которые будем использовать

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) нужно расположить в верхней части родительского (главного) окна (объекта)

пример написания короткой программы на токарном станке с чпу, цикл g72, стойка fanuc.


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
>

Здесь .$i.label : ⌠.$i.⌠ — родительский объект, label — имя объекта. Имя родительского объекта в цикле будет находиться из подстановки значения $i, и будет принимать значения:

. var1.—, . var2.—, . var3.—, . var4.— и . var5.—.

Подписи располагаются слева, а поля ввода справа.

Подписи для полей ввода определяются с помощью команды конфигурирования ⌠config⌠.

.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

Фокус ввода переместим в первое поле ввода.

Далее определим процедуру showValue, которая в нашем случае распечатывает значения, которые были набраны оператором в полях ввода.
proc showValue <> <
foreach i < puts «Field $i : [.$i.entry get]»
> > Команда puts ⌠Field $i : [.$i.entry get]⌠ печатает строку, в которой осуществлена подстановка $i на f1, f2, f3, f4 и f5, а [.$i.entry get] на значения соответствующих полей ввода .f1.entry, .f2.entry, .f3.entry, .f4.entry и .f5.entry. Все права защищены 1992-1999 DataX/FLORIN, Inc.

Источник: www.opennet.ru

Порядок написания программы

1. Внимательно прочитать условие задачи и формулировку функции.

2. Провести анализ характеристик функции:

Дать название функции;

Выделить список исходных данных функции, определить их типы;

Определить тип результата функции, передаваемого с помощью оператора return.

Определить тип результатов функции, передаваемых с помощью параметров-ссылок (если они есть).

3. Написать текст функции пользователя.

4. Написать прототип функции.

5. Написать функцию mainс вызовом функции пользователя.

6. Создать проект из файлов с расширением cpp(для функции пользователя иmain), и один заголовочный файл с расширениемh. Выполнить проект.

Примечание. Вызов функцииRusперед строками-константами с русским текстом осуществляйте самостоятельно.

Примеры написания программ

Задача. Написать функцию, которая возвращает номер первого символа символа строки, совпавшего с указанным символом. Если символа в строке нет, возвратить 0.

Анализ решения задачи. Нельзя путать два понятия –индекссимвола строки иномерсимвола строки. Понятия схожи, но номер начинается с 1, а индекс с 0, с помощью индекса организуется перебор символов в строке. Зная индексi, легко определить номер –i+1.

Читайте также:
Рейтинг программ погоды для Андроид

Для определения характеристик функции ответим на три вопроса:

  • Имя функции – SimvolToStr
  • Список параметров функции (исходные данные). Функции необходимо передать строку – char*p, и символ –charsimv;
  • Тип функции (тип возвращаемого результата). Функция определяет номер первого появления символа в строке – целое значение – тип int.

Контрольные вопросы и задания

1. Что такое строка? 2. Какой параметр необходимо объявить в функции для передачи ей строки из mainв качестве исходного данного? 3. Какой параметр необходимо объявить в функции для передачи ей строки из mainв качестве результата функции? 4. Как внутри функции пользователя создать строку-результат? 5. Если внутри функции пользователя создается строка-результат, как ее передать в main?

6. Как в функции пользователя обработать строку? 7. Как вызывается функция пользователя с передачей ей статической строки? 8. Как вызывается функция пользователя с передачей ей динамической строки? 9. Для наилучшего освоения темы выполните варианты 4, 6, 13.

Источник: studfile.net

Примеры написания программ. Порядок написания программы

–размещать текст программы в соответствующих файлах проекта.

2. Составить, выполнить и протестировать указанную задачу с помощью компьютера.

1. Внимательно прочитать условие задачи и формулировку функции.

2. Провести анализ характеристик функции:

Дать название функции;

Выделить список исходных данных функции, определить их типы;

Определить тип результата функции, передаваемого с помощью оператора return.

3. Написать текст функции пользователя.

4. Написать прототип функции.

5. Написать функцию main. с вызовом функции пользователя.

6. Создать проект из двух файлов с расширением cpp (для функции пользователя и main), и один заголовочный файл с расширением h. Выполнить проект.

Задача. Написать программу с функцией, вычисляющую площадь произвольного прямоугольника.

Анализ решения задачи. Определим основные характеристики функции, отвечая на следующие вопросы:

ü Придумайте имя функции: AreaOfRectangle

ü Определите список параметров: придумайте имена параметров, определите их типы и порядок их следования. Следует помнить, что параметры функции – это ее исходные данные. В нашей задаче: для определения площади прямоугольника следует знать высоту и ширину прямоугольника – значит два параметра. Высота и ширина – это длины, длина может выражаться целым и дробным числом, выбираем типы параметров – double. Порядок следования – пусть сначала ширина (имя параметра a), а затем высота (имя параметра b).

ü Определить тип функции, который выражается типом результата: результат площадь, она выражается дробным числом, значит тип функции – double.

После этого мы можем написать прототип функции и функцию main, в которой и будет вызываться функция AreaOfRectangle.

Примечание. Вызов функции Rus перед строками-константами с русским текстом осуществляйте самостоятельно.

Программа будет строиться в виде проекта.

Текст функции main будет выглядеть так:

//содержимое файла main.cpp

#include //подключение системных средств для

using namespace std; //возможности использовать потоки ввода-вывода

#include «Rus.h» //прототип функции русификации

double AreaOfRectangle (double a, double b); //прототип функции

double A, B, S; //данные для вызова функции, могут быть названы

//произвольно (не обязательно как параметры)

S= AreaOfRectangle(A, B); //вызов функции

Текст функции пользователя будет выглядеть так:

//имя самой функции должно в точности совпадать с прототипом

Читайте также:
В какой программе можно сделать презентацию на телефоне Айфон

double AreaOfRectangle (double a, double b)

double area; // объявили вспомогательные переменные

area=a*b; //параметры считаем известными величинами

return area; //завершаем функцию и передаем результат из area.

Контрольные вопросы и задания

1. По каким правилам пишется функция пользователя?

2. Какую роль для функции играют параметры?

3. Как используются параметры внутри функции?

4. Можно ли внутри функции пользователя объявлять переменные? Для каких целей?

5. Правила написания оператора return в зависимости от типа функции.

6. Как пишется прототип функции? Где в программе его следует размещать, и для чего он нужен?

7. Как и где пишется оператор вызова функции? Что такое аргументы функции, как и где они пишутся?

8. Напишите прототипы и операторы вызова функций для нескольких вариантов из задания.

9. Должны ли иметь одно имя параметры и аргументы? Как связаны между собой эти понятия?

10. Для наилучшего освоения темы выполните варианты 4, 11, 12.

Задание

Написать программу с функцией пользователя с передачей в функцию текущих значений аргументов.

Вариант 1. Написать программу с функцией, вычисляющей расстояние между двумя точками на плоскости.

Вариант 2. Написать программу с функцией, определяющей, является ли символ латинской буквой.

Вариант 3. Написать программу с функцией, определяющей, является ли символ маленькой латинской буквой.

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

Вариант 5. Написать программу с функцией, округляющей дробное число до n знаков после запятой.

Вариант 6. Написать программу с функцией, выводящей на экран таблицу умножения на число N.

Вариант 7. Написать программу с функцией, вычисляющей N!=1*2*3*4*…*N.

Вариант 8. Написать программу с функцией, определяющей является число простым.

Вариант 9. Написать программу с функцией, определяющей сумму цифр в целом числе.

Вариант 10. Написать программу с функцией, определяющей максимальную цифру в числе.

Вариант 11. Написать программу с функцией, определяющей наибольшее целое k, при котором для любого целого числа m, большего 1, выполняется неравенство L k < m. Например, 4 3 < 65, причем 3 – наибольший показатель степени.

Вариант 12. Написать программу с функцией, вычисляющей сумму делителей натурального числа, начиная с 1 и исключая само число. В функции main найти совершенные числа в первой сотне. Число называется совершенным, если оно равно сумме своих делителей.

Вариант 13. Для создания финансовой пирамиды ее организатор привлекает N участников, каждый из которых в свою очередь также привлекает по N участников.

Написать программу с функцией, определяющей число уровней пирамиды, если в нее вовлечено все население города из M человек.

Вариант 14. Написать программу с функцией, вычисляющей целую степень дробного числа. Учесть, что степень может быть положительной, отрицательной, нулевой.

Вариант 15. Написать программу с функцией, вычисляющей sin(x)как сумму

x – x 3 /3! + x 5 /5! – x 7 /7! + x 9 /9! — …

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

Лабораторная работа 11

Источник: studopedia.su

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru