Читаем Учись программировать полностью

Поскольку обратная черта не экранирует 'в', но экранирует себя, две последних строки идентичны. Они не выглядят одинаковыми в коде программы, но в вашем компьютере они действительно одинаковы.

Если у вас есть другие вопросы, просто продолжайте читать дальше! В конце концов, я не могу отвечать на каждый вопрос на этой странице.

<p>3. Переменные и присваивание</p>

До сих пор, каждый раз, когда мы выводили с помощью puts строку или число, всё, что мы выводили, исчезало. Я имею в виду, если мы хотели напечатать что-то дважды, мы должны были вводить это дважды с клавиатуры:

puts '

..ты

можешь

сказать

это

снова…'

puts '

..ты

можешь

сказать

это

снова…'

…ты

можешь

сказать

это

снова…

…ты

можешь

сказать

это

снова…

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

Чтобы сохранить строку в памяти вашего компьютера, нам нужно дать строке какое-то имя. Программисты часто говорят об этом процессе как о присваивании, а имена они называют переменными. Имя переменной – это просто любая последовательность латинских букв и цифр, но первый символ должен быть буквой в нижнем регистре. Давайте снова испробуем нашу последнюю программу, но на этот раз я дам строке имя myString (хотя я с таким же успехом мог назвать её str или myOwnLittleString или henryTheEighth).

myString = '…ты можешь сказать это снова…' puts myString

puts myString

…ты

можешь

сказать

это

снова…

…ты

можешь

сказать

это

снова…

Каждый раз, когда вы пытаетесь что-нибудь сделать с myString, программа вместо этого делает это со строкой '…ты можешь сказать это снова…'. Вы можете думать о переменной myString как об «указателе на» строку '…ты можешь сказать это снова…'. А вот немного более интересный пример:

name = 'Патриция Розанна Джессика Милдред Оппенгеймер'

puts 'Меня зовут ' + name + '.'

puts 'Ого! ' + name + ' – это правда длинное имя!'

Меня зовут Патриция Розанна Джессика Милдред Оппенгеймер.

Ого! Патриция Розанна Джессика Милдред Оппенгеймер – это правда длинное имя!

Кроме того: так же просто, как мы можем присвоить объект переменной, мы можем переприсвоить другой объект этой же переменной. (Вот почему мы называем их переменными: потому что то, на что они указывают, может изменяться.)

composer = 'Моцарт'

puts composer + ' был «сенсацией» в своё время.' composer = 'Бетховен'

puts 'Но мне лично больше нравится ' + composer + '.'

Моцарт был «сенсацией» в своё время.

Но мне лично больше нравится Бетховен. Конечно, переменные могут указывать на объект любого типа, а не только на строки:

var = 'ещё одна

+ 'строка'

puts var

var = 5 * (1+2)

puts var

ещё одна строка 15 Фактически переменные могут указывать почти на всё… кроме других переменных. А что же произойдёт, если мы попробуем?

var1

= 8

var2

= vari

puts

vari

puts

var2

puts

' '

var1

= 'восемь'

puts

vari

puts

var2

8

8

восемь

8

Сначала, когда мы попытались сделать, чтобы переменная var2 указывала на vari, она в действительности стала вместо этого указывать на 8 (на то же число, на которое указывала переменная vari). Затем мы сделали так, чтобы vari стала указывать на 'восемь', но поскольку var2 никогда не указывала на vari, она продолжает указывать на 8.

Ну а теперь, когда у нас есть переменные, числа и строки, давайте научимся, собирать их все вместе!

<p>4. Собираем всё вместе</p>

Мы рассмотрели несколько различных видов объектов (числа и буквы), мы создавали переменные, указывающие на них; а следующее, что мы хотим сделать – заставить их всех дружно работать вместе.

Мы уже знаем, что если мы хотим, чтобы программа напечатала 25, то следующий код не будет работать, поскольку нельзя складывать числа и строки:

var1 = 2

var2 = '5'

puts var1 + var2

Частично трудность заключается в том, что ваш компьютер не знает, пытаетесь ли вы получить 7 (2 + 5), или вы хотите получить 25 ('2' + '5').

Прежде чем мы сможем сложить их вместе, нам нужно каким-то образом получить строковую версию значения var1 или целочисленную версию значения var2.

Преобразования

Чтобы получить строковую версию объекта, мы просто записываем после него.to_s:

var1 = 2 var2 = '5'

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных

Все жанры