Искусственный интеллект - стр. 11
Напишите следующее и нажмите Enter.
>print («Hello, world!»)
Отлично! Вы только что написали компьютерную программу. И как ощущения?
Мы только что сделали одну и ту же вещь тремя разными способами. Один из них, пожалуй, был более приятным, чем прочие. Другой – быстрее и проще. Опираясь на полученный опыт, вы можете решить, какой из способов проще, а какой – быстрее. Однако принципиальный момент заключается в том, что ни один из них не лучше других. Поэтому, когда мы говорим, что делать что-либо при помощи технологий лучше, это сродни утверждению, будто написать «Hello, world!» лучше на языке Python, а не на бумаге. Не существует какой-либо принципиальной ценности в каждом из этих способов, однако их применение зависит от индивидуального опыта и последствий выбора в реальном мире. В случае с фразой «Hello, world!» ставки невысоки.
Большинство программ сложнее нашего примера, однако понимание принципа позволяет масштабировать его и применять в более комплексных случаях. Каждая программа – от сложнейших научных вычислений до новой социальной сети – пишется людьми. И каждый из них начинал программировать с «Hello, world!». Их путь к созданию сложного, изощренного программного обеспечения начинался с программ, построенных из простых блоков вроде нашего «Hello, world!». Компьютерные программы – не магия. Они созданы человеком.
Допустим, я хочу написать программу, которая бы выводила «Hello, world!» на экран десять раз. В этом случае я могу 10 раз написать команду:
>print (“Hello, world!”)
>print (“Hello, world!”)
Ой, нет. Я уже устала, забудем об этом. Нажимать Ctrl + P на клавиатуре еще восемь раз – слишком много нажатий кнопок. (Чтобы думать, как программист, нужно научиться быть ленивым.) Большинство программистов уверены, что печатать на клавиатуре скучно и утомительно, поэтому они стараются делать это как можно реже. Вместо перепечатывания, копирования и вставки единственной строки кода я введу оператор цикла, чтобы компьютер повторил команду 10 раз.
>x=1
>while x<=10:
>print (“Hello, world! \ n”)
>x+=1
Что ж, это было весело! Теперь компьютер будет делать всю работу за меня. Подождите! А что сейчас произошло?
Я задала значение х, равное 1, и добавила оператора цикла WHILE, который и будет повторять программу до тех пор, пока она не достигнет значения х > 10. В первом цикле х = 1. Программы выводит текст, затем следует разрыв строки или знак конца строки, обозначенный \n (обратный слеш n). Обратный слеш – важный знак в языке Python. Интерпретатор языка «знает», что, как только в коде появляется этот знак, после него должно произойти что-то особенное. В нашем случае я прошу компьютер начать с новой строки. Это было бы мукой – начинать каждый раз с нуля и программировать каждый тупой кусок металла для выполнения одних и тех же базовых функций, таких как чтение текста и преобразование его в двоичную форму или выполнение определенных задач в соответствии с соглашениями синтаксиса выбранного нами языка программирования. Мы ничего и никогда не закончили бы такими темпами! Более того, в каждом компьютере присутствуют как изначально встроенные функции, так и возможность добавлять новые. Я использую слово «