В начало



8-(495)-755-6045
8-(495)-755-6046
Сервис 8-(495) 660-86-57

Главная  ·  Каталог  ·  Бизнес и образование  ·  Курсы  ·  Новости  ·  Статьи  ·  Контакты  ·  Как купить?  ·  СЕРВИС
найти
Статьи и обзоры



Статьи и обзоры    



Обзоры | Hardware | Software
 
 » Обзоры
 
 · Pomodoro: учимся управлять своим временем
 · 1Password Pro – менеджер паролей на iPad
 · Мас для детей
 · iFiles – полноценный файловый менеджер для iPad
 » Apple Script — расширяя горизонты. Часть 5
 · TuneIn Radio Pro – слушаем радио на iPad
 · iMessage – смски на iPad
 · Поговори со мной, iPhone!
 · Find My iPhone и Find My Friends – поиск устройств и друзей с помощью iPad
 · Mac mini server как решение для бизнеса
 · Жесты мультизадачности на iPad
 · Сказ о том, как Apple мир музыки изменила
 · Apple Script - расширяя горизонты. Часть 3
 · Облачные сервисы для iPad – Dropbox или SugarSync?
 · Как повысить эргономику клавиатур Apple
 · iOS 5 – обновление на пятерку c плюсом
 · Merlin — волшебство в управлении проектами
 · Их распространяют бесплатно!
 · 5 полезных приложений для iPad
 · Stanza – читаем электронные книги на iPad
 · AppleScript - расширяя горизонты. Часть 2
 · Чудесное превращение или как сделать из iPad нетбук
 · Объединяя системы
 · AppleScript - расширяя горизонты
 · Mr. Reader – пользуемся RSS на iPad
 · Penultimate – рукописные заметки на iPad
 · Расширяя возможности Мас...
 · Мас - идеальный компьютер для учебы
 · Func – управляем вертолетами с гаджетов Apple
 · Puffin Web Browser – flash на iPad
 · Evernote: способ расширения памяти
 · Todo – удобный органайзер для iPad
 · Каким должен быть офисный пакет? Решение от Apple
 · iCloud — сервис будущего
 · HomeBudget – семейная бухгалтерия на iPad
 · FFmpeg для Mac OS X.
 · Magic Trackpad против обычных мышек.
 · Новый MacBook Air снова взорвал мир портативных компьютеров.
 · Apple Compressor 4
 · Rigging и Widgets в Apple Motion 5.
 · iMovie 1.2 для мобильной системы iOS.
 · Монтаж видеофайлов в системе Mac OS X 10.6.... продолжение.
 · Монтаж видеофайлов в системе Mac OS X 10.6.
 · MEL expressions для частиц в Autodesk Maya 2011.
 · Pixologic ZBrush 4. Часть 3. ... продолжение
 · Как закомпозить Mental Ray рендер-пассы из Autodesk Maya в Apple Shake. ...продолжение
 · Вместе понимаем Xcode. ...продолжение.
 · Pixologic ZBrush 4. Часть 2.
 · Как закомпозить рендер-пассы из Autodesk Maya в Apple Shake.
 · Самый мощный и доступный в мире компьютер.
 · Вместе понимаем Xcode.
 · Девять вещей, которые Apple скрывает от пользователей до момента официального релиза Mac OS X 10.7 Lion.
 · iOS приложение WD Photos.
 · Mac OS X 10.7 - новая операционка от Apple.
 · Пятый канал изображения, или просто Z-канал. Продолжение...
 · Станьте скульптором вместе с Pixologic ZBrush.
 · Пятый канал изображения, или просто Z-канал
 · Старый, добрый и мудрый Apple Shake
 · Сервер Synology DiskStation
 · Apple Motion 4. Что это такое?
 · iPad #3 Клавиатурные комбинации для работы с текстовым редактором Notes.
 · Soundtrack Pro #2 Инструменты Lift Tool и Stamp Tool
 · Секвенционные форматы файлов для программ композитинга The Foundry NukeX 6 и Apple Shake 4.
 · Blend Modes
 · Девайсы записи и транскодирования видео AJA Ki Pro и Ki Pro Mini.
 · С чем едят THE FOUNDRY NUKE или кому нужен композитинг?
 · Autodesk AutoCAD 2011 для Mac OS X #1
 · Продвинутая инсталляция под Mac OS X #1
 · iPAD: включить Multi-Touch жесты для iPad в Windows
 · ОРФО 2010 Lite: первая достойная система проверки правописания для Mac
 · Apple Motion (продолжение): создание объёмного стереоизображения из обычного видео
 · Apple Motion #1 Создание объёмного стереоизображения из обычного видео
 · FINAL CUT PRO #1 Как загрузить в FCP видеоданные Redcode (формат R3D)
 · Знакомимся с функциями клавиш в вашем iPad
 · APPLE SOUNDTRACK PRO: обнаружение и исправление звуковых артефактов
 · Новый интерфейс APPLE THUNDERBOLT почти в 20 раз быстрее интерфейса USB 2.0
 · Руководителю компании - способы сокращения издержек. Сберегающие технологии Apple.
 · X-Rite ColorMunki
 · Перейти на Mac. Как это сделать.
 · Водный мир в компьютере
 · MacBook Air для мобильных музыкантов. Часть 1
 · Pantone GoeGuide - новая цветовая система
 · Apple представляет Logic Studio
 · Apple Mac OS X Leopard - новые возможности компьютеров Apple
 · iPhone (первые впечатления)
 · Apple представляет новый iMac
 · Mac OS X & Vista - параллельная жизнь в одном компьютере
 · Хвала айподу. Apple Computer - разработчик лучших в мире MP3-плееров.
 · Powerline представила новейшие технологии Apple для создания и распространения медийного контента.
 · Статьи ПРО/



Контакты



e-mail:  weborder@powerline.ru
тел.:  8-(495)-755-6045
8-(495)-755-6046
Сервис 8-(495) 660-86-57




08.12.11
Apple Script — расширяя горизонты. Часть 5

Условные операторы. Продолжение

 

На прошлом уроке мы уже познакомились с условными операторами. Однако, рассмотренные нами конструкции отличались простотой, ведь мы изначально знали, что и чему будет равно. Но на деле так бывает далеко не всегда. Именно для таких случаев и введены дополнительные условия.

 

Простой пример: по сценарию пользователь должен ввести число 5 и никакое другое:

 

set abc to display dialog "Введите число 5" default answer "" buttons {"Результат"}

set chislo to text returned of abc

set chislo to chislo as number

if chislo = 5 then

display dialog "Правильное число" buttons {"OK"}

else

display dialog "Неверное число" buttons {"OK"}

end if

 

Можно поступить иначе и попросить пользователя ввести любое число больше 5. Для этого существуют дополнительные операторы сравнения чисел:

 

= равно (is)

/= не равно (is not equal)

> больше чем (is greater than)

< меньше чем (is less than)

>= больше или равно (is greater than or equal to)

<= меньше или равно (is less than or equal to)

 

Обратите внимание на надписи в скобках. Их можно использовать вместо значков, указанных справа. Сделано это специально для того, чтобы максимально приблизить Apple Script к английскому языку.

 

Таким образом, немного модифицировав приведенный выше сценарий, вы можете предложить пользователю ввести любое число больше чем 5. Причем, сценарий отличит, если ввести именно 5:

 

set abc to display dialog "Введите число больше или равное 5" default answer "" buttons {"Результат"}

set chislo to text returned of abc

set chislo to chislo as number

if chislo = 5 then

display dialog "Введено число 5" buttons {"OK"}

else if chislo ≥ 5 then

display dialog "Введено число больше 5" buttons {"OK"}

else

display dialog "Введено неверное число" buttons {"OK"}

end if

 

Сделаем задачу несколько иной. Пусть сценарий определяет, ввели ли вы четное или нечетное число. Для этого воспользуемся оператором деления на целое div:

 

set abc to display dialog "Введите число" default answer "" buttons {"Результат"}

set chislo to text returned of abc

set chislo to chislo as number

set mod1 to chislo / 2

set mod2 to chislo div 2

if mod1 is mod2 then

display dialog "Число четное" buttons {"OK"}

else

display dialog "Число нечетное" buttons {"OK"}

end if

 


 

Принцип определения очень прост. Дело в том, что четное число в любом случае делится на два без остатка. В случае же с нечетным, остатка не избежать. Именно по этому признаку и будут различаться (или, наоборот, совпадать) результаты деления.

 

Сравнивать можно не только числа, но и строки. Для этого существуют следующие операторы сравнения:

 

begins with - начинается с

does not start with - не начинается с

ends with - оканчивается на

is equal to - равно

comes before - идет впереди

comes after - идет позади

is in - находится внутри

is not in - не находится внутри

contains - содержит

does not contain - не содержит

 

Вот в качестве примера сценарий, который предлагает ввести пользователю написать по-английски слово «лев». Обратите внимание, что введенное значение задается уже не как число (number), но как текст (text).

 

set abc to display dialog "Как будет по-английски \"лев\"?" default answer "" buttons {"Проверить"}

set slovo to text returned of abc

set slovo to slovo as text

if slovo = "lion" then

display dialog "Правильно!" buttons {"OK"}

else

display dialog "Неверно!" buttons {"OK"}

end if

 

Или вот пример, когда сценарий проверяет, содержит ли введенное слово букву «с»:

 

set abc to display dialog "Введите слово с буквой \"С\"" default answer "" buttons {"Проверить"}

set slovo to text returned of abc

set slovo2 to "c"

set slovo to slovo as text

if slovo contains slovo then

display dialog "Правильно!" buttons {"OK"}

else

display dialog "Неверно!" buttons {"OK"}

end if

 

Учтите, что в данном случае не учитывается регистр, сценарию все равно, ввел ли пользователь строчную или прописную «С». Для того, чтобы учесть регистр потребуется:

 

set abc to display dialog "Введите слово с буквой \"С\"" default answer "" buttons {"Проверить"}

set slovo to text returned of abc

set slovo2 to "c"

set slovo to slovo as text

considering case

if slovo contains slovo2 then

display dialog "Правильно!" buttons {"OK"}

else

display dialog "Неверно!" buttons {"OK"}

end if

end considering

 

 


 

Помимо considering если еще и:

 

ignoring with space

...

end ignoring

 

данная конструкция потребуется в том случае, если вы желаете, чтобы сценарий не учитывал пробелы. 

 

Операторы сравнения существуют также и для списков (list):

 

begins with - начинается с 

end with - заканчивается на

is equal to - равно

contains - содержит

 

и записей (record):

 

is equal to - равно

contains - содержит

 

set my_records to {Mac:"MacBook", CPU:"Intel", OS:"MacOS X"}

if my_records contains {Mac:"MacBook"} then

display dialog "Правильно!" buttons {"OK"}

end if

 

Примечание: списки и записи мы проходили в третьем и четвертом уроках, соответственно.

 

При необходимости можно сделать так, чтобы учитывалось сразу несколько сравнений, то есть соблюдалось несколько условий. Для этого существуют так называемые булевые операторы (операторы булевой логики) — and и or («и» и «или»):

 

set a to 5

set b to 5

if a = 5 and b = 5 then

beep

end if

 

или:

 

set a to 5

set b to 9

if a = 5 or b = 5 then

beep

end if

 

В первом случае необходимо выполнение обоих условий, во втором достаточно выполнение лишь одного условия. Существует еще и булевый оператор not, но о нём мы поговорим позднее.

 

 



вернуться назад..






Copyright © PowerLine Group. 1996-2012. Все права защищены. Обмен ссылками

Яндекс.Метрика
Rambler's Top100

© 2012 X1-forge - платформа Интернет-магазина. Разработчик: ООО "Сайт Мэйкерс"