Изучение электрических явлений началось в Древней Греции с наблюдения, которое и породило впоследствии слово электричество. Было замечено, что, если натереть янтарь шерстью, он начинает притягивать мелкие предметы – например, пушинки и перья. Янтарь по-гречески электрон, поэтому этот вид взаимодействия назвали электрическим.

Сегодня любой может повторить этот знаменитый древнегреческий опыт даже без янтаря.

Поставим опыт

Расчешите сухие волосы пластмассовой расческой и поднесите ее к маленьким кусочкам бумаги, не касаясь их. Кусочки бумаги будут притягиваться к расческе (рис. 49.1).

Электрические взаимодействия обусловлены наличием у тел электрических зарядов.

Тело, обладающее электрическим зарядом, называют электрически заряженным (или просто заряженным), а сообщение телам электрических зарядов называют электризацией.

Натертый янтарь приобретает способность к электрическим взаимодействиям по той причине, что при трении он электризуется. Впоследствии выяснилось, что янтарь – не исключение: при трении электризуются многие тела. Вы сами, наверное, не раз чувствовали, как вас "бьет током", когда вы прикасаетесь к другому человеку после того, как сняли или надели шерстяную одежду. Это – тоже результат электризации при трении.

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

1. Многие хозяйки, стараясь как можно тщательнее вытереть пыль с мебели, подолгу трут поверхность мебели сухой тряпкой. Но, увы – чем больше они стараются, тем скорее пыль снова садится на»хорошо вытертые» поверхности. То же самое происходит и тогда, когда тщательно протирают сухой тряпкой монитор компьютера или ноутбука. Как это объяснить?

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

Поставим опыт

Наэлектризуем одну легкую металлическую гильзу (металлический цилиндр), прикоснувшись к ней заряженной. стеклянной палочкой, а другую гильзу – прикоснувшись к ней заряженной эбонитовой палочкой. Мы увидим, что гильзы начнут притягиваться (рис. 49.2, а).
А вот две гильзы, наэлектризованные с помощью одной и той же палочки, будут всегда отталкиваться – независимо от того, какой палочкой мы пользовались для электризации гильз (рис. 49.2, б, в).

Этот опыт показывает, что электрические заряды бывают двух типов: заряды одного и того же типа отталкиваются, а заряды различных типов притягиваются. Чаще говорят не о типах, а о знаках зарядов, называя их положительными и отрицательными. Дело в том, что заряды противоположных знаков могут компенсировать друг друга (подобно тому, как сумма положительного и отрицательного чисел может быть равной нулю). Итак,

электрические заряды бывают двух знаков – положительные и отрицательные.

Заряд стеклянной палочки, натертой шелком, считают положительным, а заряд эбонитовой пилочки, натертой мехом или шерстью, – отрицательным.
Тела, имеющие заряд одного знака, называют заряженными одноименно, а тела, имеющие заряды разных знаков, называют заряженными разноименно.

Описанный выше опыт показал, что

одноименно заряженные тела отталкиваются, а разноименно заряженные – притягиваются .

2. а) Могут ли заряды трех шариков быть такими, что любая пара шариков взаимно отталкивается? взаимно притягивается?
б) Можно ли определить, не используя других тел или приборов: каков знак заряда каждого шарика? Имеют ли все шарики заряд одного и того же знака?
в) Опишите опыт, с помощью которого можно определить знак заряда каждого шарика.

Тела, не имеющие электрического заряда, называют незаряженными или электрически нейтральными. Почти все окружающие нас тела являются нейтральными. Но это не означает, что в них нет электрических зарядов!

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

2. Носители электрического заряда

Электрический заряд переносится только заряженными частицами. Электрического заряда без частиц не существует.

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

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

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

Например, в растворе поваренной соли (NaCl) свободными зарядами являются положительно заряженные ионы натрия и отрицательно заряженные ионы хлора.

3. В какой ион (положительно илн отрицательно заряженный) превращается атом, потерявший электрон?

4. Как изменяется масса атома, когда он становится: положительным ионом? отрицательным ионом?

Наиболее удаленные от ядра электроны слабее связаны с ядром. Поэтому при тесном контакте двух тел электроны могут переходить с одного тела на другое (рис. 49.3). Это объясняет, почему при трении тела часто электризуются.

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

3. Проводники и диэлектрики

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

Хорошими проводниками являются все металлы. Проводниками являются также растворы солей и кислот – такие жидкости называют электролитами. (От греческого «литос» - разложимый, растворимый.) Электролитами являются, например, морская вода и кровь.

В металлах свободными зарядами являются электроны, а в электролитах – ионы.

Вещества, в которых нет свободных носителей электрического заряда, называют диэлектриками.

Диэлектриками являются многие пластмассы и ткани, сухое дерево, резина, стекло, а также многие жидкости – например, керосин и химически чистая (дистиллированная) вода. Газы, в том числе воздух, – также диэлектрики.

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

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

Именно благодаря смещению связанных зарядов незаряженные диэлектрические тела (например, кусочки бумаги) притягиваются к заряженным телам. Ниже мы рассмотрим это подробнее.

4. Электризация через влияние

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

Поставим опыт

Соединим проводником две металлические гильзы 1 и 2, лежащие на деревянном столе. Затем, не убирая проводник, поднесем к гильзе 1 положительно заряженную палочку, ке касаясь ею гильзы (рис. 49.4, а). Часть свободных электронов, притягиваясь к заряженной палочке, переместится с гильзы 2 на гильзу 1. В результате гильза 2 станет заряженной положительно, а гильза 1 – отрицательно.

Не удаляя заряженную палочку, уберем проводник, соединяющий гильзы (рис. 49.4, б). Они останутся заряженными, причем их заряды будут равны по модулю, но противоположны по знаку.

Теперь можно убрать и заряженную палочку: разноименные заряды останутся на гильзах.

Этот способ электризации тел называют электризацией через влияние.

Обратите внимание: электризация через влияние обусловлена перераспределением зарядов. Алгебраическая сумма зарядов тел остается при этом равной нулю: тела приобретают равные по модулю и противоположные по знаку заряды.

5. Расскажите подробно, как и почему изменился бы результат описанного опыта, если бы сначала удалили заряженную палочку, а потом – проводник, соединяющий гильзы. Проиллюстрируйте ваш рассказ схематическими рисунками.

6. Объясните, почему в описанном выше опыте человек держит металлическую палочку, соединяющую гильзу, за деревянную ручку. Опишите, что произошло бы, если бы при проведении этого опыта человек держал металлическую палочку непосредственно рукой. Примите во внимание„что человеческое тело является проводником.

5. Почему незаряженные тела притягиваются к заряженным?

Выясним теперь, почему незаряженные тела притягиваются к заряженным.

Поставим опыт

Приблизим к незаряженной металлической гильзе положительно заряженную палочку (рис. 49.5). Свободные электроны гильзы притянутся к положительно заряженной палочке, поэтому на ближней к палочке части гильзы появится отрицательный электрический заряд, а на дальней ее части из-за недостатка электронов возникнет положительный заряд.

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

7. Объясните, почему незаряженная металлическая гильза притягивается также к отрицательно заряженной палочке.

Итак, незаряженный проводник притягивается к заряженному телу, имеющему заряд любого знака, вследствие перераспределения свободных зарядов в незаряженном проводнике.

8. На рисунке 49.6 показано взаимодействие гильз А и В, а также гильз В и С. Известно, что гильза А заряжена положительно.
а) Можно ли утверждать, что гильза В заряжена? Если да, то каков знак ее заряда?

в) Можно ли предсказать, как будут взаимодействовать гильзы А и С?

Незаряженный диэлектрик тоже притягивается к телу, имеющему заряд любого знака. Объясняется это смещением связанных зарядов в диэлектрике: на поверхности диэлектрика возникают заряды разных знаков, причем ближе к заряженному телу оказываются заряды противоположного с ним знака. Это и приводит к притяжению.

Ниже мы рассмотрим смещение связанных зарядов в диэлектрике подробнее.

6. Роль электрических взаимодействий

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

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

Электрическими взаимодействиями обусловлены и многие процессы в живом организме. В частности, электрической является природа импульсов в нервных клетках, в том числе– в клетках головного мозга.

Электрические взаимодействия во много раз интенсивнее, чем гравитационные. Например, сила электрического отталкивания двух электронов превышает силу их гравитационного притяжения примерно в 4 * 10 42 раз. По сравнению с этим огромным числом кажется крошечной даже постоянная Авогадро! В § 50 мы проверим эту сравнительную оценку сил электрического и гравитационного взаимодействия.

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

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

Только благодаря этой компенсации мы и не замечаем, насколько велики силы электрического взаимодействия, «спрятанные» внутри вещества.

Эта взаимная компенсация зарядов в окружающих нас телах не означает, однако, что электрические силы никак не проявляют себя, например, в механических явлениях. На самом деле мы неявно учитывали эти силы при изучении механики.

Как вы помните, в механике рассматривают три вида сил – силы тяготения, силы упругости и силы трения. Две из этих сил – сила упругости и сила трения – обусловлены взаимодействием атомов и молекул, из которых состоят тела, а взаимодействие атомов и молекул, как мы уже знаем, имеет электрическую природу.

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

9. Две одинаковые гильзы висят рядом на нитях одинаковой длины. На красной нити висит заряженная гильза, а на синей – незаряженная. Какая нить сильнее отклонена от вертикали?

10. Две металлические гильзы, висящие рядом на нитях, отталкиваются. Как будут взаимодействовать эти гильзы, если коснуться рукой одной из них?
11. На рисунке 49.7 показано, как взаимодействуют гильзы А и В, а также гильзы В и С.
а) Что можно сказать о заряде гильзы В?
б) Что можно сказать о заряде гильзы С?

12. Легкий металлический шарик подвешен между двумя вертикальными металлическими пластинами, заряды которых имеют противоположные знаки (рис. 49.8). Опишите, что будет происходить после того, как шарик коснется одной из пластин.

Способность управлять программным потоком позволяет делать выборочное выполнение отдельных участков кода, а это весьма ценная особенность программирования. Оператор выбора if позволяет нам выполнять или не выполнять определенные участки кода,в зависимости от того является ли истинным или ложным условие этого оператора. Одно из самых важных назначений оператора выбора if так это то, что он позволяет программе совершить действие на выбор, в зависимости от того, какие данные ввел пользователь. Банальный пример использования if - это проверка введенного пользователем пароля, если пароль правильный, программа разрешает пользователю совершить какое-то действие, если пароль введен неправильный, то программа не позволит пользователю получить доступ к ограниченным ресурсам.

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

Перед тем как начать разбираться в структуре оператора if , стоит обратить внимание на такие значения как ИСТИНА и ЛОЖЬ в контексте программирования и компьютерной терминологии.

Истинное значение (ИСТИНА ) имеет значение отличное от нуля, ЛОЖЬ эквивалентна нулю. При использовании операторов сравнения, оператор будет возвращать единицу, если выражение сравнения - истинно, или - 0, если условное выражение ложно. Например, выражение 3 == 2 вернет значение 0, так как три не равно двум. Выражение 5 == 5 оценивается как истинное и вернет значение 1. Если вам сложно это понять, попробуйте сделать вывод на экран этих выражений, например: printf ("%d", 7 == 0);

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

Скорее всего вы знакомы с этими операторами сравнения, но на всякий случай, я показал их в таблице выше. Они не должны быть сложными для вашего понимания, большинство из этих операторов вы изучили в школе на уроках математики. Теперь вы понимаете, что такое ИСТИНА и ЛОЖЬ , пора испытать оператор выбора if в бою. Структура if:

If (условное выражение) // тут располагается один оператор, который выполнится, если условное выражение - истинно

Вот вам простой пример использования оператора if:

If (7 > 6) printf("Семь больше шести");

В этом примере программа оценивает условное выражение — «семь больше шести?» Чтобы увидеть результат работы этого фрагмента кода просто вставьте его в функцию main() и не забудьте включить заголовок stdio.h , запускаем программу и видим результат - true . Конструкция оператора выбора if c фигурными скобочками:

If (TRUE) { /* весь код который помещен внутрь скобок - выполнится */ }

Если не использовать фигурные скобочки, то к телу оператора if будет относиться только один, первый оператор. Если же необходимо управлять несколькими операторами, то необходимо поместить их в фигурные скобочки. Я рекомендую всегда ставить скобки, после объявления if - это хороший тон программирования и вы никогда не запутаетесь в своем коде, так как такое объявление наиболее понятное.

Оператор else

Иногда, когда условное выражение - ложное, было бы удобно, чтобы выполнялся некоторый код, отличный от того кода,который выполняется при ИСТИННОМ условии. Как же это делается?
Вот пример использования оператора if else:

If (TRUE) { /* выполняется этот код,если условие истинно */ } else { /* выполняется этот код,если условие ложно */ }

Конструкция else if

Обычно операторы else if используют, когда необходим множественный выбор, то есть например определены несколько условий, которые одновременно могут быть истинными, но нам необходимо только одно истинное условное выражение. Вы можете использовать оператор if else сразу после оператора выбора if , после его тела. В таком случае, если условие первого оператора выбора - ИСТИННО , тогда конструкция else if будет игнорироваться, тогда как в противном случае, если условие первого оператора выбора - ЛОЖНО , начнет выполнятся проверка в конструкции else if . То есть если условие одного оператора if будет истинно, то другие проверяться не будут. Теперь чтобы все это хорошо закрепить в голове и понять, давайте рассмотрим простой пример с использование конструкций операторов выбора.

#include #include int main() { int age; // без переменной никак... printf("Сколько вам лет? "); // спрашиваем пользователя о его возрасте scanf("%d", &age); // ввод пользователем количества лет if (age < 100) { // если введенный возраст меньше 100 printf ("Вы очень молоды!\n"); // просто показываем что программа сработала верно... } else if (age == 100) { // используем else для примера printf("Молодость уже позади\n"); // \n - символ перевода на новую строку. } else { printf("Столько не живут\n"); // если ни одно из выше-перечисленных условий не подошло, то программа покажет этот вариант ответа } return 0; }

Рассмотрим интересные условные выражения с использование логических операторов.

Логические операторы позволяют создавать более сложные условные выражения. Например, если вы хотите проверить, является ли ваша переменная больше 0 но меньше 10, в таком случае вам достаточно воспользоваться логическим оператором - И. Вот так это делается - var > 0 and var < 10 . В языке СИ есть точно такой же же оператор, только обозначается он иначе — && .
При использовании операторов if часто необходимо проверить несколько различных условий, поэтому очень важно понимать логические операторы OR, NOT и AND. Логические операторы работают точно так же как и операторы сравнения: они возвращают 0, если имеют ложное значение или 1, если логическое выражение - истинное.
Подробнее о логических операциях вы можете прочитать в .

Вторым шагом создания полноценных программ на языке MatLab является изучение операторов ветвления и циклов. С их помощью можно реализовывать логику выполнения математических алгоритмов и создавать повторяющиеся (итерационные, рекуррентные) вычисления.

2.1. Условный оператор if

Для того чтобы иметь возможность реализовать логику в программе используются условные операторы. Умозрительно эти операторы можно представить в виде узловых пунктов, достигая которых программа делает выбор по какому из возможных направлений двигаться дальше. Например, требуется определить, содержит ли некоторая переменная arg положительное или отрицательное число и вывести соответствующее сообщение на экран. Для этого можно воспользоваться оператором if (если), который и выполняет подобные проверки.

В самом простом случае синтаксис данного оператора if имеет вид:

if <выражение>
<операторы>
end

Если значение параметра «выражение» соответствует значению «истинно», то выполняется оператор, иначе он пропускается программой. Следует отметить, что «выражение» является условным выражением, в котором выполняется проверка некоторого условия. В табл. 2.1 представлены варианты простых логических выражений оператора if.

Таблица 2.1. Простые логические выражения

Истинно, если переменная a меньше переменной b и ложно в противном случае.

Истинно, если переменная a больше переменной b и ложно в противном случае.

Истинно, если переменная a равна переменной b и ложно в противном случае.

Истинно, если переменная a меньше либо равна переменной b и ложно в противном случае.

Истинно, если переменная a больше либо равна переменной b и ложно в противном случае.

Истинно, если переменная a не равна переменной b и ложно в противном случае.

Ниже представлен пример реализации функции sign(), которая возвращает +1, если число больше нуля, -1 – если число меньше нуля и 0, если число равно нулю:

function my_sign
x = 5;
if x > 0
disp(1);
end
if x < 0
disp(-1);
end
if x == 0
disp(0);
end

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

if <выражение>
<операторы1> % выполняются, если истинно условие
else
<операторы2> % выполняются, если условие ложно
end

Тогда приведенный выше пример можно записать следующим образом:

function my_sign
x = 5;
if x > 0
disp(1);
else
if x < 0
disp(-1);
else
disp(0);
end
end

В данной программе сначала выполняется проверка на положительность переменной x, и если это так, то на экран выводится значение 1, а все другие условия игнорируются. Если же первое условие оказалось ложным, то выполнение программы переходит по else (иначе) на второе условие, где выполняется проверка переменной x на отрицательность, и в случае истинности условия, на экран выводится значение -1. Если оба условия оказались ложными, то выводится значение 0.

Приведенный выше пример можно записать в более простой форме, используя еще одну конструкцию оператора if языка MatLab:

if <выражение1>
<операторы1> % выполняются, если истинно выражение1
elseif <выражение2>
<операторы2> % выполняются, если истинно выражение2
...
elseif <выражениеN>
<операторыN> % выполняются, если истинно выражениеN
end

и записывается следующим образом:

function my_sign
x = 5;
if x > 0
disp(1); % выполняется, если x > 0
elseif x < 0
disp(-1); % выполняется, если x < 0
else
disp(0); % выполняется, если x = 0
end

С помощью условного оператора if можно выполнять проверку более сложных (составных) условий. Например, необходимо определить: попадает ли переменная x в диапазон значений от 0 до 2? Это можно реализовать одновременной проверкой сразу двух условий: x >= 0 и x <=2. Если эти оба условия истинны, то x попадает в диапазон от 0 до 2.

Для реализации составных условий в MatLab используются логические операторы:

& - логическое И
| - логическое ИЛИ
~ - логическое НЕ

Рассмотрим пример использования составных условий. Пусть требуется проверить попадание переменной x в диапазон от 0 до 2. Программа запишется следующим образом:

function my_if
x = 1;
if x >= 0 & x <= 2
else
disp("x не принадлежит диапазону от 0 до 2");
end

Во втором примере выполним проверку на не принадлежность переменной x диапазону от 0 до 2. Это достигается срабатыванием одного из двух условий: x < 0 или x > 2:

function my_if
x = 1;
if x < 0 | x > 2
disp("x не принадлежит диапазону от 0 до 2");
else
disp("x принадлежит диапазону от 0 до 2");
end

Используя логические операторы И, ИЛИ, НЕ, можно создавать разнообразные составные условия. Например, можно сделать проверку, что переменная x попадает в диапазон от -5 до 5, но не принадлежит диапазону от 0 до 1. Очевидно, это можно реализовать следующим образом:

function my_if
x = 1;
if (x >= -5 & x <= 5) & (x < 0 | x > 1)
disp("x принадлежит [-5, 5], но не входит в ");
else
disp("x или не входит в [-5, 5] или в ");
end

Обратите внимание, что при сложном составном условии были использованы круглые скобки. Дело в том, что приоритет операции И выше приоритета операции ИЛИ, и если бы не было круглых скобок, то условие выглядело бы так: (x >= -5 и x <= 5 и x < 0) или x > 1. Очевидно, что такая проверка давала бы другой результат от ожидаемого.

Круглые скобки в программировании используются для изменения приоритетов выполнения операторов. Подобно арифметическим операторам, логические также могут быть изменены по желанию программиста. Благодаря использованию круглых скобок, сначала выполняется проверка внутри них, а, затем, за их пределами. Именно поэтому в приведенном выше примере они необходимы для достижения требуемого результата.

Приоритет логических операций следующий:

НЕ (~) – самый высокий приоритет;
И (&) – средний приоритет;
ИЛИ (|) – самый низкий приоритет.