Полиглот английский 1 урок с упражнениями
Полное видео Сокращенное
Полная видео версия урока № 1 с ТВ Культура Youtube
Полиглот (обрезаное) — сокращённое видео урока № 1 Youtube
Это 1 урок из видео курса Полиглот Английский за 16 часов, от известного преподавателя, переводчика и полиглота Дмитрия Петрова и телевизионного канала Культура. Этот курс без преувеличения можно назвать культовым и наиболее полезным для начинающих учить английский язык самостоятельно.
В первом уроке Дмитрия Петрова, вы узнаете о правильных и неправильных глаголах и о основной базовой схеме в его методике изучения английского языка. Уже на старте обучения вы научитесь строить простые английские предложения для того, чтобы спрашивать, задавать вопросы и утверждать, используя при этом короткие английские фразы.
Навигация по разделам 1 урока
- Базовая схема
- Настоящее время
- Прошедшее время
- Будущее время
- Таблица Петрова
- Тренажёр фраз
Базовая схема глаголов
Построение простых фраз в английском языкеВ любом языке мира глаголы занимают наиболее важную роль, в английском языке есть 300 наиболее важных, употребляемых слов. И примерно чуть более четверти этих слов это глаголы.
В первом уроке вы научитесь путём спряжения глаголов, создавать простые предложения в трех временах.
При разговоре с кем бы то ни было, мы всегда используем три формы — утверждение, отрицание, вопрос. И с помощью этих 3 времен мы будем создавать вопросительные, утвердительные и отрицательные фразы.
Помимо глаголов мы будем использовать и местоимения I (Я), You (Вы), We (Мы),They (Они), He (Он), She (Она), It (Это)
На их основе мы будем строить английские предложения. Таблица Базовой схемы
Настоящее время
Утверждение в настоящем времени
C глаголами в утвердительных предложениях всё очень просто, мы используем глагол в его словарной форме. Но есть один нюанс, если мы используем местоимения he (он), she (она) или it (это), то на конце глагола добавляется буква — s
Построение утвердительных предложений Present Simple:
местоимение + глагол(s)
Примеры:we love (мы любим)
she loves (она любит)
|
|
|
Отрицание в настоящем времени
Отрицательные фразы в английском языке строятся с помощью местоимения, вспомогательного глагола do (does) и частицы not, затем идет основной глагол, который мы хотим использовать в фразе.
Построение отрицательных предложений Present Simple:
местоимение + don’t/doesn’t + глагол
С местоимениями I (я), you (вы), we (мы),they (они) используется вспомогательный глагол — do not сокрашёно don’t.
С местоимениями he (он), she (она) (это) используется другая форма глагола — does not сокрашёно doesn’t.
Например:I don’t love (я не люблю)
she doesn’t love (она не любит)
|
|
|
Вопрос в настоящем времени
Вопросительные предложения строятся с теми же глаголами do или does без частицы not, но для того, чтобы задать вопрос, потребуется поставить вспомогательный глагол в самое начало.
Построение вопросительных предложений Present Simple:
do/does + местоимение + глагол?
С местоимениями I (я), you (вы), we (мы),they (они) используется вспомогательный глагол — do.
С местоимениями he (он), she (она) (это) используется другая форма глагола — does.
Например:do I love? (я люблю?)
does she love? (она любит?)
|
|
|
Прошедшее время
Утверждение в прошедшем времени
C утверждением в прошедшем времени все было бы просто, но все портит тот факт, что существуют правильные и неправильные глаголы, формы прошедшего времени которых различаются сильно.
Правильные глаголы в прошедшем времени имеют окончание -ed. Неправильные глаголы представлены в таблице, форму прошедшего времени нужно смотреть во второй колонке, а впоследствии выучить наизусть. Хорошая новость в том, что используются данные формы только в утвердительных предложениях прошедшего времени.Построение утвердительных предложений Past Simple:
местоимение + глагол(ed) / с неправильными глаголами: местоимение + 2 форма глагола
Примеры:he loved (он любил)
she saw (она видела) хотя 1 форма глагола see
|
|
|
Отрицание в прошедшем времени
Отрицательные фразы в прошедшем времени образуются с помощью вспомогательного глагола did и частицы not (сокращенно didn’t), далее следует основной глагол.
Построение отрицательных предложений Past Simple:
местоимение + didn’t + глагол
Например:I didn’t love (я не любил)
she didn’t love (она не любила)
|
|
|
Вопрос в прошедшем времени
Вопросы в прошедшем времени образуются с тем же вспомогательным глаголом did, который, как и в любых вопросах, ставится в начале фразы. Для образования вопроса, содержащего отрицание, после did ставится частица not, сокращенно didn’t.
Построение вопросительных предложений Past Simple:
did/didn’t + местоимение + глагол?
Например:did he love? (он любил?)
didn’t she love? (она не любила?)
|
|
|
Будущее время
Утверждение в будушем времени
C утверждением в будущем времени английского языка тоже всё просто, образуются такие фразы с помощью специального глагола will (будет или буду).
Построение утвердительных предложений Future simple:
местоимение + will + глагол
Примеры:I will love (я буду любить)
he will love (он будет любить)
|
|
|
Отрицание в будущем времени
Отрицательные фразы в будущем времени образуются с помощью глагола will и частицы not, далее следует основной глагол.
Построение отрицательных предложений Future simple:
местоимение + will not + глагол
Например:I will not love (я не буду любить)
she will not love (она не будет любить)
|
|
|
Вопрос в будущем времени
Вопросы в будущем образуются с тем же глаголом will, который ставится в начало предложения. Ну а если это вопрос с отрицанием, то за ним идет not.
Построение вопросительных предложений Future Simple:
will/will not + местоимение + глагол?
Например:will he love? (он полюбит?)
will not she love? (она не полюбит?)
|
|
|
Базовая таблица Петрова
Данная таблица является основополагающий, и в большей степени, на ней строится вся методика «Английский за 16 часов». Базовая таблица Петрова представляет своеобразную систему координат, где в верхней части содержатся формы предложений, а в правой времена.
Вопрос | Утверждение | Отрицание | |
Will I love |
I will love |
I will not love |
Б у д у щ е е |
Do I love Does he love |
I love he loves |
I don’t love he doesn’t love |
Н а с т о я щ е е |
Did I love |
I loved |
I didn’t love |
П р о ш е д ш е е |
Дмитрий Петров настоятельно рекомендует держать таблицу из этого урока в голове, прогоняя глаголы по этой базовой схеме как можно чаще. Доведя правила из этой таблицы до автоматизма, вы перестанете испытывать затруднения при составлении английских фраз.
Для лучшего усвоения материала первого урока, советуем потренироваться с помощью упражнений, которые мы подготовили для вас ниже. Этот своеобразный тренажёр английских фраз ускорит процесс обучения и поможет вам закрепить таблицу Петрова.
Советы Петрова к уроку
Часто у некоторых людей уже есть какой-то багаж знаний. Они имеют относительно большой словарный запас английских слов и выражений, неважно пусть даже и на подсознательном уровне, но совершено не могут применять их на практике.
У начинающих это случается от отсутствия какой-либо системы, что мешает эффективно употреблять их в повседневном общении с англоговорящими людьми. Поэтому один из главных принципов метода Дмитрия Петрова: “создать ниточку или своеобразный стержень, куда можно нанизывать все эти бусинки”.
Автор методики Английский за 16 часов уверен, что: “. .. у любого изучающего английский язык, найдется 5-10 минут свободного времени, для того, чтобы повторить 2 -3 раза в день определенные структуры из урока ”. Эти базовые структуры, по его мнению, являются наиболее важными в английском языке.
Тренируйте базовую схему из первого урока как можно чаще. Как только вы доведете таблицу из этих 16 — ти уроков до автоматизма, Вы сможете выражать свои мысли на английском языке, не испытывая при разговоре каких-либо сложностей и времени на обдумывание фразы.
По утверждению Дмитрия Петрова, для того, чтобы результативно начать учить английский с нуля, необходимо максимальное погружение в процесс обучения. Стоит запомнить это основное правило для изучения любого иностранного языка, английский тут не является исключением.
Вам необходимо практиковать его как можно чаще в течении дня, и это будет гораздо лучше, чем заниматься им один раз в день, но тратя на это большой промежуток времени. Найдите пару минут для того, чтобы прогнать основные базовые схемы английского языка, которые мы проработали на первом уроке.
Слова для запоминания
love — любить
live — жить
like — нравится
open — открыть
close — закрыть
start — начинать
finish — заканчивать
see (saw) — видеть
come (came) — приходить
go (went) — идти
know (knew) — знать
think (thought) — думать
Упражнения к уроку 1
Он пошел
He wentI
You
Me
He
will
go
come
went
Он не полюбит
He will not loveHe
She
They
Him
will
didn’t
don’t
will not
loves
love
like
loved
Ты разговариваешь?
Do you speak?Do
Does
Will
you
I
he
you
she
go
work
speak?
spoke?
Она закрыла
She closedWe
He
She
I
close
closed
open
finish
Ты работаешь?
Do you work?Does
Will
You
Do
do
he
you
she
worked?
work?
busy
go
Я пойду
I will goI
You
Me
He
will
do
does
will not
go
went
goes
come
Я буду работать
I will workI
He
Me
We
do
does
will
don’t
go
work
done
make
Ты не увидишь
You will not seeHe
You
Will not
She
will
don’t
will not
see
look
saw
see
vision
Ты не пошёл
You didn’t goHe
You
We
She
don’t
didn’t
does
will not
go
come
came
way
Он не приходит
He doesn’t comeShe
He
I
Me
doesn’t
didn’t
will
do
came
go
come
start
Ваш результат: из 10
%
Упражнения к 1 урокуВсе упражнения Учить фразы из курса
••••••••••
Помогите проекту, поделитесь в соц. сетях
Навигация по урокам:
Следующий урок №2
Оцените 1 урок
4.8
оценили: 2350 чел.
Нашли ошибку?
Расскажите нам о ней в нашей группе в контактеКомментарии к уроку
С чего начать учить английский язык самостоятельно: полное руководство ‹ Инглекс
«Каждый новый язык расширяет сознание человека и его мир. Это как будто еще один глаз и еще одно ухо», — так считает герой книги Людмилы Улицкой Даниэль Штайн. Для тех, кто хочет найти общий язык более чем с миллиардом человек, мы расскажем, с чего начать учить английский язык. Наше руководство поможет сделать первые шаги начинающим и подскажет правильную дорогу тем, кто продолжает изучать язык.
Для начала предлагаем вам посмотреть запись двухчасового вебинара с нашим методистом Викторией Кодак, в котором она подробно отвечает на вопрос о том, как правильно приступить к изучению английского.
Когда и как лучше начать учить английский язык
Взрослым людям бывает непросто начать учить английский с нуля, ведь нужно снова почувствовать себя студентом, который пока не знает простых слов и элементарных правил. Однако нет ничего постыдного в том, что вы начинаете учить язык, будучи взрослым, даже наоборот: тяга к знаниям всегда вызывает уважение. По статистическим данным нашей школы, люди записываются на первую ступень и в 20, и в 50 и в 80 лет. Причем они не просто начинают осваивать язык, а достигают высоких уровней.
Многие задаются вопросом: «Как лучше начать учить английский язык?». Сперва следует выбрать удобный вам способ обучения: в группе, индивидуально с преподавателем или самостоятельно. О плюсах и минусах каждого из них можно почитать в статье «4 лучших способа выучить английский язык».
Оптимальный вариант для тех, кто собирается осваивать язык с нуля, — это занятия с преподавателем. Вам нужен наставник, который объяснит, как работает язык, и поможет заложить фундамент ваших знаний. Преподаватель поможет вам:
- начать говорить на английском;
- отработать правильное произношение;
- разобраться в грамматике;
- развить навык понимания английской речи на слух.
Если у вас нет возможности заниматься с преподавателем, попробуйте учить английский самостоятельно. Далее расскажем, как это делать эффективно.
Общие советы: как учить английский язык с нуля
Несколько советов о том, как лучше организовать свои занятия, чтобы усилия не пропали даром:
- Заниматься не менее 2-3 раз в неделю по 1 часу
В идеале нужно ежедневно уделять английскому языку хотя бы 20—30 минут. Однако если вы хотите устраивать себе выходные, занимайтесь через день по 40—60 минут.
- Работать над речевыми навыками
Пишите короткие тексты, читайте простые статьи и новости, слушайте подкасты для начинающих и найдите себе собеседника, чтобы тренировать навык говорения.
- Сразу же применять полученные знания на практике
Простая зубрежка не даст нужного эффекта: знания вылетят из головы, если их не использовать. Выучили десяток слов — составьте короткий рассказ с использованием этой лексики, а затем проговорите его вслух. Изучили Past Simple — напишите небольшой текст, используя это время.
- Не распыляться
Главная ошибка начинающих — это попытка взять как можно больше материалов и работать со всеми одновременно. В итоге изучение языка получится бессистемным, вы запутаетесь в обилии информации и не увидите прогресс.
- Повторять пройденное
Даже если вам кажется, что вы запомнили слова по теме «Погода», вернитесь к ним через месяц — повторение пройденного никогда не бывает лишним. В нашем блоге мы уже писали о том, как повторять, чтобы ничего не забывать. Ознакомьтесь с техниками и попробуйте применять их на практике.
Еще несколько полезных советов вы узнаете из следующего видео.
Пошаговая инструкция: как начать учить английский с нуля самостоятельно
Мы составили подборку, из которой вы узнаете, с чего надо начинать учить английский язык и как делать это правильно.
1. Изучите правила чтения английского языка
Это базовая часть знаний, благодаря которой вы сможете научиться читать по-английски и произносить звуки и слова правильно. Рекомендуем прочитать статью «Как научиться читать на английском».
2. Уточните, как произносятся слова
Даже если вам знакомы правила чтения, при изучении новых слов проверяйте, как они правильно произносятся. Английские слова не читаются так, как пишутся, а некоторые из них и вовсе отказываются подчиняться каким-либо правилам чтения. Мы советуем уточнять произношение каждого нового слова в онлайн-словарях, например Cambridge Dictionary или Dictionary.com.
3. Начните формировать словарный запас
Возьмите на вооружение визуальные словари, например воспользуйтесь ресурсом English picture dictionary. Яркие картинки, озвученные носителями слова и перевод на русский облегчат вам процесс изучения и запоминания новой лексики.
С каких слов начать учить английский? Мы рекомендуем начинающим ориентироваться на список слов на ресурсе British Counsil и подборку слов из нашей статьи «1 000 самых важных слов английского языка».
4. Учите грамматику
Если представить речь в виде красивого ожерелья, то грамматика — нить, на которой вы располагаете бусины-слова, чтобы в итоге получить красивое украшение. Нарушение правил игры английской грамматики карается непониманием собеседника. А выучить эти правила не так уж сложно, достаточно выбрать хороший учебник и заниматься по нему. Мы рекомендуем взять первую книгу из серии пособий Grammarway, подробно об этой книге мы писали в нашем обзоре о лучших учебниках по грамматике английского языка. Кроме того, рекомендуем ознакомиться с нашей статьей «Учебники английского языка для начинающих: какие пособия взять новичку», из нее вы узнаете, какие книги вам понадобятся на начальном этапе изучения английского.
Еще обратите внимание на нашу серию статей «Английская грамматика для начинающих». В ней мы простыми словами излагаем правила, приводим много примеров и тесты для проверки знаний. Кроме того, наши преподаватели составили для вас простой и эффективный онлайн-самоучитель грамматики английского языка. А еще советуем почитать статью «Английский без учебников: за и против», в ней вы найдете 8 весомых причин взяться за пособия, а также узнаете, когда можно обойтись без учебников в изучении языка.
5. Слушайте подкасты своего уровня
Приучайте себя к звучанию иностранной речи, например начните с коротких подкастов. Найти простые аудиозаписи с переводом на русский можно на бесплатном ресурсе British Council или платном Podcast in English. Чтобы получить максимальную пользу от прослушивания, ознакомьтесь с нашей статьей «Современное аудирование по английскому языку».
6. Смотрите новости на английском
После того как вы сформируете начальный словарный запас по английскому языку, начинайте смотреть новости. Рекомендуем сайт newsinlevels.com. Тексты новостей для первого уровня простые, также к ним есть аудиозаписи.
7. Читайте простые тексты
Во время чтения вы активируете зрительную память: новые слова и фразы будут легко запоминаться. Если вы хотите не просто читать, а изучать новые слова и совершенствовать произношение, слушайте тексты, озвученные носителями языка. Простые короткие тексты вы можете найти в учебниках вашего уровня, например New English File Elementary, или на сайте rong-chang.com.
8. Установите приложения
Приложения для изучения английского языка — это мини-самоучители, которые всегда под рукой. Например, приложение Lingualeo подходит для изучения новых слов: благодаря технике интервального повторения новая лексика не выветрится у вас из памяти через месяц. Есть версия для Android и iOS.
С помощью приложения Duolingo вы разберетесь в грамматике английского языка, научитесь строить предложения и потренируете произношение. Доступно для владельцев Android и iOS.
Также ознакомьтесь с нашей подборкой бесплатных сайтов для запоминания английских слов.
9. Занимайтесь онлайн
Если вы спросите у Google, с чего начать учить английский язык самостоятельно, поисковая система подкинет вам пару сотен сайтов с различными уроками, онлайн-упражнениями, статьями об изучении языка. Добавьте в закладки 2—3 действительно хороших ресурса, на которых вы будете заниматься. Этого более чем достаточно.
Читайте нашу статью «ТОП-25 сайтов для изучения английского языка для начинающих», в ней вы найдете еще больше полезных ресурсов.
Мы собрали только самые необходимые составляющие успешного изучения английского языка, но нам не удалось задействовать самый важный навык — говорение. Его практически невозможно тренировать наедине с самим собой. Есть вариант практиковать разговорный навык с приятелем, изучающим английский. Однако знакомый с более высоким уровнем знаний вряд ли захочет заниматься с новичком, а такой же начинающий, как и вы, не может быть помощником. Более того, когда вы занимаетесь с непрофессионалом, есть риск перенять его ошибки.
У самостоятельного изучения языка есть еще один минус — отсутствие контроля: вы не будете замечать свои ошибки и исправлять их. Поэтому мы рекомендуем задуматься о занятиях с преподавателем хотя бы в начале вашего пути. Учитель даст вам необходимый толчок, поможет выбрать правильное направление движения — именно то, что нужно новичку.
© 2023 englex.ru, копирование материалов возможно только при указании прямой активной ссылки на первоисточник.
Простая схема: введение в информатику, глава 5: слова и предложения
Схема Simple: Введение в информатику 2/e Copyright (C) 1999 MIT
Глава 5
|
В части I мы начали с примеров аббревиатур и т. д., но поскольку тогда мы работали с числовыми старыми номерами. Это потому, что дискуссии об оценке и определении процедуры были сложными достаточно, не вводя при этом дополнительных идей. Но теперь мы готов вернуться к символьному программированию.
Как мы упоминали в главе 3, все, что вы вводите в Scheme,
оценивается, и полученное значение распечатывается. Допустим, вы хотите использовать
«квадрат» как слово в вашей программе. Например, вы хотите, чтобы ваша программа
решить задачу: «Назовите прилагательное, описывающее
Барри Манилоу.» Если вы просто наберете квадратов
в Scheme, вы
обнаружим, что квадратов
— это процедура:
> квадрат #<ПРОЦЕДУРА>
(Разные версии Scheme будут иметь разные способы печати вне процедуры.)
Вам нужен способ сказать, что вы хотите использовать слово « квадрат
» само по себе, , а не значение этого слова, как
выражение. Способ сделать это — использовать цитату
:
> (квадрат в кавычках) КВАДРАТ > (цитата (завтра не знает)) (НИКОГДА НЕ ЗНАЕШЬ ЧТО БУДЕТ ЗАВТРА) > (цитата (вещи, которые мы говорили сегодня)) (ТО, ЧТО МЫ ГОВОРИЛИ СЕГОДНЯ)
Цитата
— это особая форма, поскольку ее аргумент не оценивается. Вместо этого он просто возвращает аргумент как есть.
Программисты схем часто используют в кавычках
, поэтому для него существует аббревиатура:
> 'квадрат КВАДРАТ > '(старый коричневый ботинок) (старый коричневый ботинок)
(поскольку Scheme использует апостроф как аббревиатуру для цитата
, вы не можете использовать его в качестве обычного знака препинания в предложении.
Вот почему мы избегали таких заголовков, как (любовь не купишь)
.
На схеме это будет означать (можно (кавычка) купить мне
любовь)
!)[1]
Эта идея цитирования, хотя она может показаться произвольной в контексте компьютерное программирование, на самом деле довольно знакомо из обычного английского языка. Что такое книга? Это куча бумажек с печатью на них, связаны вместе. Что такое «книга»? Это словосочетание, состоящее из артикля и существительное. Видеть? Аналогично, что такое 2+3? Уже пять. Что такое «2+3»? Это арифметическая формула. Когда вы видите слова в кавычках, вы поймите, что вы должны думать о самих словах; ты не оценивайте, что они означают. Схема такая же.
(Не случайно дети, которые шутят, любят
Мэтт: «Назови свое имя».Брайан: «Ваше имя.»
вырастают программистами. Разница между вещь и ее название — одна из важных идей, которую программисты должны понимать.)
Селекторы
До сих пор все, что мы делали со словами и предложениями, это цитировали их. Чтобы сделать больше интересная работа, нам нужны инструменты для двух видов операций: Мы должны быть мы можем разобрать их, и мы должны быть в состоянии сложить их вместе.[2] Мы начнем с инструменты для разборки; технический термин для них 9Селекторы 0078.
> (первое что-то) С > (первый '(восемь дней в неделю)) ВОСЕМЬ > (первая 910) 9 > (последнее что-то) г > (последние '(восемь дней в неделю)) НЕДЕЛЯ > (последние 910) 0 > (но сначала что-то) ЧТО-ТО > (но сначала '(восемь дней в неделю)) (ДНЕЙ В НЕДЕЛЮ) > (но сначала 910) 10 > (но последнее что-то) ЧТО-ТО > (butlast '(восемь дней в неделю)) (ВОСЕМЬ ДНЕЙ А) > (но последний 910) 91
Обратите внимание, что первые
предложения являются словом, а первые
слова — это буква. (Но нет отдельного типа данных
называется «письмо»; буква совпадает с однобуквенным словом.) butfirst
предложения есть предложение, а butfirst
предложения.
слово есть слово. Соответствующие правила справедливы для последних
и и последний
.
Имена , но сначала
и , но потом
не предназначены для описания способов
сани; они сокращают «все , но
первые
» и «все но
последний
».
Вам может быть интересно, почему нам даны способы найти первую и последнюю элементы, но не 42-й элемент. Оказывается, те, что у нас есть достаточно, так как мы можем использовать эти примитивные селекторы для определения других:
(определить (второе) (первое (но первое))) > (секунда '(как мечтатели)) МЕЧТАТЕЛИ > (вторая Мишель) я
Однако существует примитивный селектор элемента
, который принимает
два аргумента, число n и слово или предложение, и возвращает n th
элемент второго аргумента.
> (пункт 4 '(на благо господина кайта!)) ВЫГОДА > (пункт 4 «выгода») Е
Не забывайте, что предложение, содержащее ровно одно слово, отличается от само слово, и селекторы работают с ними по-разному:
> (сначала потому что) Б > (сначала '(потому что)) ПОТОМУ ЧТО
> (но сначала потому что) ПРИЧИНА > (но сначала '(потому что)) ()
Значением этого последнего выражения является пустое предложение. Вы можете сказать, что это предложение из-за скобки, и вы можете сказать, что он пуст, потому что между их.
> (но сначала 'а) "" > (но сначала 1024) "024"
Как показывают эти примеры, иногда , но сначала
возвращает слово
который должен быть заключен в двойные кавычки. Первый пример
показывает пустое слово , , а второе показывает число
это не в его обычной форме. (Его числовое значение равно 24, но вы не
обычно видят ноль впереди.)
> 024 24 > "024" "024"
Мы постараемся не печатать эти смешные слова. Но не удивитесь, если увидите один как возвращаемое значение одного из селекторов для слов. (Обратите внимание, что вам не нужно ставить одинарную кавычку перед двойные кавычки. Строки оценивают себя так же, как и числа.)
Так как , но сначала
и , а затем
так трудно набирать, есть
сокращения bf
и bl
. Вы можете понять, что есть что.
Конструкторы
Функции для объединения вещей называются конструкторами . На данный момент у нас есть только два из них: слово
и предложение
. Word
принимает любое количество слов в качестве аргументов и объединяет их вместе
в одно громадное слово:
> (слово 'ses' qui 'pe' da'lian'ism) СЕСКВИПЕДАЛИЗМ > (слово "сейчас" здесь) НИГДЕ > (слово 35 893) 35893
Предложение
похоже, но немного отличается, так как оно может принимать оба
слова и предложения в качестве аргументов:
> (предложение «нести» этот «вес») (НЕСТИ ЭТО ВЕС) > (предложение '(Джон Пол) '(Джордж Ринго)) (ДЖОН ПОЛ ДЖОРДЖ РИНГО)
Предложение
слишком сложно напечатать, поэтому
аббревиатура se
.
> (se '(один плюс один)' дает 2) (ОДИН ПЛЮС ОДИН ДЕЛАЕТ 2)
Кстати, а почему в последнем примере получается
, но
не 2
? Это потому, что числа дают самооценку, как мы уже говорили.
в главе 3. Мы должны процитировать дает
, потому что иначе Схема
будет искать что-то с именем , что делает
вместо того, чтобы использовать слово
сам. Но числа не могут быть именами вещей; Они представляют
сами себя. (На самом деле, вы можете указать 2
, и это ничего не даст.
разница — понимаете почему?)
Первоклассные слова и предложения
Если Scheme не является вашим первым языком программирования, вы, вероятно, привыкли к работе с английским текстом на компьютере совсем по-другому. Многие другие языки трактуют предложение, например, просто как совокупность «строка») из символов , таких как буквы, пробелы и знаки препинания. Эти языки не помогут вам поддерживать двухуровневую природу английского языка. текст, в котором предложение состоит из слов, а слово состоит из буквы.
Исторически компьютеры работали только с числами. Вы можете добавить два числа, переместить число из одного места в памяти компьютера в другое место, и скоро. Так как каждая инструкция в родной машине компа язык не мог обрабатывать ничего больше числа, программисты выработал отношение к тому, что одно число является «реальной вещью», в то время как все более сложное следует рассматривать как совокупность вещей, а не как нечто само по себе.
Компьютер представляет текстовый символ как одно число. Во многих языках программирования, поэтому персонаж — это «настоящая вещь», но слово или предложение понимается только как совокупность этих кодовые числа символов.
Но это не то, как люди обычно думают о своих собственных язык. Для вас слово — это прежде всего не строка символов (хотя это может временно показаться таковым, если вы соревнуетесь в правописании). Это больше похоже на единую смысловую единицу. Точно так же предложение является языковая структура, частями которой являются слова, а не буквы и пробелы.
Язык программирования должен позволять вам выражать свои идеи в терминах, которые соответствуют ваш образ мышления, а не способ компьютера. Технически, мы говорим что слова и предложения должны быть первоклассными данными в нашем язык. Это означает, что предложение, например, может быть аргументом процедура; это может быть значение, возвращаемое процедурой; мы можем дать ему имя; и мы можем строить агрегаты, элементами которых являются предложения. До сих пор мы видели как сделать первые два из них. Мы закончим работу в главе 7 (на переменные ) и Глава 17 (на списки ).
Ловушки
Мы избегали апострофов в наших словах и предложениях, потому что
это аббревиатуры специальной формы цитата
. Вы также должны избегать
точки, запятые, точки с запятой, кавычки, вертикальные черты и, конечно же,
скобки, так как все они имеют особое значение в Scheme. Вы можете,
однако используйте вопросительные и восклицательные знаки.
Хотя мы уже упоминали о необходимости избегать имен примитивов
при выборе формальных параметров хотим особо напомнить о
имена слово
и предложение
. Часто это очень заманчивые формальные
параметры, потому что многие процедуры имеют в качестве своих слов слова или предложения.
домены. К сожалению, если вы выберете эти имена для параметров, вы не
иметь возможность использовать соответствующие процедуры в рамках вашего определения.
(определить (множественное число) ;; неправильно! (слово слово)) > (множественное число «Джордж») ОШИБКА: GEORGE — это не процедура
Результат подстановки не был, как можно подумать,
(слово "джордж")
а скорее
(Джордж Джордж)
Мы использовали wd
и в качестве формальных параметров.
вместо
слово
и предложение
, и мы рекомендуем эту практику.
Есть разница между словом и предложением из одного слова. Для
Например, люди часто попадают в ловушку, думая, что , но сначала
предложения из двух слов, такого как (сексуальная сэди),
— второе слово, но оно
нет. Это длинное предложение из одного слова. Например, это счет
один,
не пять.[3]
> (бойфренд '(сексуальная Сэди)) (СЭДИ) > (первый (бойфренд '(сексуальная сэди))) СЭДИ
Ранее мы упоминали, что иногда Scheme приходится ставить двойные кавычки.
вокруг слов. Просто игнорируйте их; не расстраивайтесь, если ваша процедура вернется "6 червей"
вместо просто 6 червей
.
Цитата
не означает "печать". Некоторые люди смотрят на взаимодействие
так:
> '(спокойной ночи) (СПОКОЙНОЙ НОЧИ)
и думаю, что кавычки были указанием на то, что
Схема для печати того, что следует за ней. На самом деле схема всегда печатает значение каждого выражения, которое вы вводите, как часть цикла чтения-оценки-печати. В этом случае значением всего выражения является подвыражение, которое
цитируется, а именно предложение (спокойной ночи)
. Это значение не
быть напечатано, если цитата была частью некоторого большего выражения:
> (bf '(спокойной ночи)) (НОЧЬ)
Если вы видите сообщение об ошибке, например
> (+ 3 (бф 1075)) ОШИБКА: НЕДЕЙСТВИТЕЛЬНЫЙ АРГУМЕНТ ДЛЯ +: "075"
попробуйте ввести выражение
> (строки-числа #t) ХОРОШО
и повторите попытку. (Расширение Scheme, позволяющее выполнять арифметические
операции для работы с нестандартными номерами типа "075"
делают обычные
арифметика медленнее, чем обычно. Итак, мы предоставили способ превратить расширение
включить и выключить. Вызов строк-числа
с аргументом #ф
отключает расширение.)[4]
Сверлильные упражнения
5.1 Какие значения выводятся при вводе этих выражений в Scheme? (Фигура прокручивайте в голове, прежде чем попробовать на компьютере. )
(предложение «я» (мое мое)) (предложение '()' (пусто)) (слово '23 '45) (с '23 '45) (бф'а) (бф '(да)) (считай (сначала '(мэгги мэй))) (см "" '() "" '()) (количество (se "" '() "" '()))
5.2 Для каждого из следующих примеров напишите процедуру из двух аргументов который при применении к аргументам примера возвращает результат примера. Ваши процедуры могут не включать какие-либо цитируемые данные.
> (f1 '(a b c) '(d e f)) (Б В Г Д) > (f2 '(a b c) '(d e f)) (Б В Г Д Е АФ) > (f3 '(a b c) '(d e f)) (А Б С А Б С) > (f4 '(a b c) '(d e f)) БЫТЬ
5.3 Объясните разницу в значении между (первый мезонин)
и (первый '(мезонин))
.
5.4 Объясните разницу между двумя выражениями (первый (квадрат 7))
и (первый '(квадрат 7))
.
5.5 Объясните разницу между (слово 'a'b'c)
и (se 'a'b'c)
.
5. 6 Объясните разницу между (бф'забадак)
и (но сначала
забадак)
.
5.7 Объясните разницу между (bf 'x)
и (butfirst '(x))
.
5.8 Что из перечисленного ниже является допустимым предложением Схемы?
(здесь, там и везде) (помощь!) (все, что я должен сделать) (вы знаете мое имя (ищите номер))
5.9 Выясните, какие значения каждый из следующих вернет до . вы попробуете их на компьютере:
(се(слово(бл(бл(первый'(сделать а)))) (bf (bf (последняя '(бейсбольная перчатка))))) (слово (первый'с) (бл(бл(бл(бл'жестко)))) (первый 'прошел) (первый (бф' швы)))) (се (слово (бл (бл 'принести)) 'а (последнее 'чистить)) (слово (бл (последнее '(бейсбольная кепка))) (последнее' за) (бл (бл 'очень)) (последние (первые'(солнечные дни)))))
5.10 Какие аргументы можно привести , но сначала
, чтобы
возвращает слово? Предложение?
5. 11 Какие аргументы вы можете дать последним
, чтобы он вернул слово? А
предложение?
5.12 Какие из функций первая
, последняя
, но первая
и бутласт
может возвращать пустое слово? Для каких аргументов? Как насчет
вернуть пустое предложение?
Реальные упражнения
5.13 Что означает '
'банан
?
Что такое (первый '
' банан)
и почему?
5.14 Напишите процедуру третья
, которая выбирает третью букву слова
(или третье слово предложения).
5,15 Напишите процедуру first-two
, которая принимает слово в качестве аргумента,
возвращает двухбуквенное слово, содержащее первые две буквы аргумента.
> (первые две амбулаторные) ЯВЛЯЮСЬ
5.16 Напишите процедуру two-first
, которая принимает два слова в качестве аргументов,
возвращает двухбуквенное слово, содержащее первые буквы двух
аргументы.
> (два первых Брайана Эпштейна) БЫТЬ
Теперь напишите процедуру two-first-sent
, которая принимает два слова
предложение в качестве аргумента, возвращающее двухбуквенное слово, содержащее первый
буквы двух слов.
> (два первых отправленных '(Брайан Эпштейн)) БЫТЬ
5.17 Напишите процедуру knight
, которая использует имя человека в качестве имени.
аргумент и возвращает имя с «Сэр» перед ним.
> (рыцарь '(Дэвид Вессель)) (СЭР ДЭВИД ВЕССЕЛЬ)
5.18 Попробуйте следующее и объясните результат:
(определить (окончание слова) (слово (первое слово) (последнее слово))) > (заканчивается на "Джон")
5.19 Напишите процедуру вставка-и
, которая принимает предложение элементов и
возвращает новое предложение с «и» в нужном месте:
> (вставить-и '(Джон Билл Уэйн Фред Джоуи)) (ДЖОН БИЛЛ УЭЙН, ФРЕД И ДЖОУИ)
5. 20 Определите процедуру для поиска чьего-либо отчества:
> (отчества '(Джеймс Пол Маккартни)) (ПАВЕЛ) > (отчества '(Джон Рональд Рауль Толкин)) (РОНАЛЬД РАУЛЬ) > (отчества '(Багз Банни)) () > (отчества '(питер блэр денис бернар никто)) (БЛЭР ДЕНИС БЕРНАР)
5.21 Напишите процедуру query
, которая превращает утверждение в вопрос
поменяв местами первые два слова и добавив вопросительный знак к последнему слову:
> (запрос '(вы опытны)) (ВЫ ОПЫТНЫ?) > (запрос '(мне следовало бы знать лучше)) (МНЕ НУЖНО ЗНАТЬ ЛУЧШЕ?)
[1] На самом деле это это можно ставить знаки препинания внутри слов, если все слово заключено в двойные кавычки отметки, например:
> '("не могу" купить мне любовь) ("не могу" КУПИТЬ МНЕ ЛЮБОВЬ)
Такие слова называются строками. Мы не пойдем использовать их в любых примерах почти до конца книги. Держись подальше от знаки препинания, и у вас не будет проблем. Однако знаки вопроса и восклицательные знаки в порядке. (Обычные слова, те, что ни ни строки, ни цифры, официально называются символов. )
[2] Процедуры, которые мы собираемся показать вам, не являются частью стандартная, официальная схема. Scheme предоставляет способы сделать это, но обычные способы несколько сложнее и подвержены ошибкам для новички. Мы предоставили более простой способ символьных вычислений, используя идеи, разработанные как часть языка программирования Logo.
[3] Вы встретили на счет
в главе 2. Требуется слово
или предложение в качестве аргумента, возвращая либо количество букв в
слово или количество слов в предложении.
[4] Более подробное объяснение см. в Приложении A.
(обратно к оглавлению)
СПИНА тема главы СЛЕДУЮЩАЯ
Брайан Харви, [email protected]
Язык программирования Scheme, 4-е издание
Схема Четвертое издание Р. Кент Дибвиг Иллюстрации Жан-Пьера Эбера |
- Предисловие
- Глава 1. Введение
- Раздел 1.1. Синтаксис схемы
- Раздел 1.2. Соглашения об именах схем
- Раздел 1.3. Типографские и условные обозначения
- Глава 2. Начало работы
- Раздел 2.1. Взаимодействие со схемой
- Раздел 2.2. Простые выражения
- Раздел 2.3. Оценка выражений схемы
- Раздел 2.4. Переменные и выражения Let
- Раздел 2.5. Лямбда-выражения
- Раздел 2.6. Определения верхнего уровня
- Раздел 2.7. Условные выражения
- Раздел 2.8. Простая рекурсия
- Раздел 2.9. Задание
- Глава 3. Двигаясь дальше
- Раздел 3.1. Синтаксическое расширение
- Раздел 3. 2. Больше рекурсии
- Раздел 3.3. Продолжения
- Раздел 3.4. Продолжение стиля прохождения
- Раздел 3.5. Внутренние определения
- Раздел 3.6. Библиотеки
- Глава 4. Процедуры и привязки переменных
- Раздел 4.1. Ссылки на переменные
- Раздел 4.2. Лямбда
- Раздел 4.3. Чехол-лямбда
- Раздел 4.4. Локальная привязка
- Раздел 4.5. Несколько значений
- Раздел 4.6. Определения переменных
- Раздел 4.7. Задание
- Глава 5. Операции управления
- Раздел 5.1. Процедура Приложение
- Раздел 5.2. Секвенирование
- Раздел 5.3. Условные обозначения
- Раздел 5.4. Рекурсия и итерация
- Раздел 5.5. Маппинг и фолдинг
- Раздел 5.6. Продолжения
- Раздел 5. 7. Отложенная оценка
- Раздел 5.8. Несколько значений
- Раздел 5.9. Эвал
- Глава 6. Операции с объектами
- Раздел 6.1. Константы и котировка
- Раздел 6.2. Общая эквивалентность и предикаты типов
- Раздел 6.3. Списки и пары
- Раздел 6.4. Номера
- Раздел 6.5. Фикснумы
- Раздел 6.6. Флонумс
- Раздел 6.7. Персонажи
- Раздел 6.8. Строки
- Раздел 6.9. Векторы
- Раздел 6.10. Байтвекторы
- Раздел 6.11. Символы
- Раздел 6.12. Булевы значения
- Раздел 6.13. Хэш-таблицы
- Раздел 6.14. Перечисления
- Глава 7. Ввод и вывод
- Раздел 7.1. Транскодеры
- Раздел 7.2. Открытие файлов
- Раздел 7. 3. Стандартные порты
- Раздел 7.4. Строковые и байтвекторные порты
- Раздел 7.5. Открытие пользовательских портов
- Раздел 7.6. Портовые операции
- Раздел 7.7. Операции ввода
- Раздел 7.8. Операции вывода
- Раздел 7.9. Удобный ввод-вывод
- Раздел 7.10. Операции с файловой системой
- Раздел 7.11. Преобразование байт-вектора/строки
- Глава 8. Синтаксическое расширение
- Раздел 8.1. Привязки ключевых слов
- Раздел 8.2. Преобразователи синтаксических правил
- Раздел 8.3. Преобразователи синтаксиса-кейса
- Раздел 8.4. Примеры
- Глава 9. Записи
- Раздел 9.1. Определение записей
- Раздел 9.2. Процедурный интерфейс
- Раздел 9.3. Осмотр
- Глава 10. Библиотеки и программы верхнего уровня
- Раздел 10.1. Стандартные библиотеки
- Раздел 10.2. Определение новых библиотек
- Раздел 10.3. Программы верхнего уровня
- Раздел 10.4. Примеры
- Глава 11. Исключения и условия
- Раздел 11.1. Вызов и обработка исключений
- Раздел 11.2. Определение типов условий
- Раздел 11.3. Типы стандартных условий
- Глава 12. Расширенные примеры
- Раздел 12.1. Умножение матриц и векторов
- Раздел 12.2. Сортировка
- Раздел 12.3. Конструктор наборов
- Раздел 12.4. Подсчет частоты слов
- Раздел 12.5. Схема принтера
- Раздел 12.6. Форматированный вывод
- Раздел 12.7. Метациклический интерпретатор схемы
- Раздел 12.8. Определение абстрактных объектов
- Раздел 12.