Программирование: различия между версиями

502 байта убрано ,  09:39, 28 января 2023
Строка 3: Строка 3:
== Объясните простыми словами, пожалуйста ==
== Объясните простыми словами, пожалуйста ==
[[Файл:160 Ĝino.svg|мини|120x120пкс|К вашим услугам]]
[[Файл:160 Ĝino.svg|мини|120x120пкс|К вашим услугам]]
Компьютер — это добрый джинн исполнитель желаний.
(''сказка из сборника «11000011 ночь»'')


* Хотите фабрику-самобранку, производящую еду самостоятельно пожалуйста.
Компьютер это добрый джинн, который может исполнить любые '''желания''' 🧞
* Хотите ковер-самолет-автопилот, регулярно летающий из Парижа в Лондон — получите, распишитесь.
* Хотите телегу-самокатку, которая едет куда нужно без лошади и водителя — Tesla уже ждёт вас.


И волшебная лампа от джинна доступна не только Илону Маску, каждый может загадать желание и получить то, что он хочет.
* Хотите 🏭 фабрику-самобранку, производящую еду самостоятельно — пожалуйста.
* Хотите 🛩 ковер-самолет-автопилот, регулярно летающий из Парижа в Лондон — получите, распишитесь.
* Хотите 🚗 телегу, которая едет куда нужно без лошади и водителя — Tesla уже ждёт вас.


Но есть две небольшие проблемы.
Но есть две небольшие проблемы:


* Компьютер-добрый-джинн не понимает язык человека.
* Компьютер-''добрый-джинн'' '''не понимает''' язык человека.
* Человек сам в точности не знает, чего хочет.
* Человек сам '''в точности''' не знает, чего он хочет🤷


Давайте попробуем эти проблемы решить.
Компьютер понимает только '''язык цифр''' 1 и 0. Если вы попытаетесь загадать своё желание случайным набором чисел 1011...1101 — вы получете непредсказуемый результат, а компьютер скорее всего обидется и зависнет. Значит нужно говорить не случайные цифры а '''осмысленные''', но как? Давайте позовем на помощь нашего друга и специалиста по натиранию электронных радиоламп — Аладдина-программиста. Ходят легенды, что он умеет переводить желания людей на язык компьютера — это и называется '''программированием'''.


Компьютер называют цифровым устройством, так как он понимает только язык цифр 1 и 0 — такие сообщения-желания называют программами. Но если вы попытаетесь загадать желание случайным набором чисел 1011...1101, то и результат вы получите случайный. Все сообщения длиной 300 случайных единичек и нулей могут выдать различных результатов больше, чем атомов/молекул во вселенной. И всё равно там не будет того «мешка золота», что вы загадали. Всё потому, что полезные программы-желания требуют не 300 единичек и нулей, а тысячи-миллионы-миллиарды.
Итак мы просим Аладдина напрограммировать «лекарство от всех болезней». Он достает своего волшебного Питона (Python — это такой популярный язык программирования) и с помощью него сообщает ''джинну''-компьютеру:<syntaxhighlight lang="python" line="1">print("я хочу лекарство от всех болезней")</syntaxhighlight>Смотрим результат:<syntaxhighlight lang="output">я хочу лекарство от всех болезней‎</syntaxhighlight>Это просто текст? 😠


Значит нужно говорить компьютеру не случайные цифры а осмысленные, но как? На помощь приходят программисты. Они умеют переводить мысли человеческих языков на язык компьютера, с помощью вспомогательных языков программирования.
Вы получили то, что заказывали, так как компьютер не знает, что такое лекарство и что такое болезни. '''Сначала''' вы должны тщательно объяснить ему на пальцах единиц и нулей, что это такое. Компьютер может исполнять всё, что вы хотите, но '''не может изобрести''' за вас что-то непонятное. А мы пока сами не знаем, что такое лекарство от всех болезней 😞


Осталось написать на языке программирования «я хочу лекарство от всех болезней» и компьютер выдаст результат? Да, без проблем, давайте попробуем. <syntaxhighlight lang="python" line>print('я хочу лекарство от всех болезней')‎</syntaxhighlight>
Но не переживайте, компьютеры добры к человеку и не бросят его в беде. Прямо сейчас тысячи компьютеров делают вычисления, чтобы помогать '''быстрее''' изобретать новые лекарства. А после изобретения помогут '''автоматизировать''' производства по их изготовлению, чтобы сделать лекарства дешевыми и доступными.
Смотрим результат


<syntaxhighlight lang="output">я хочу лекарство от всех болезней‎</syntaxhighlight>
Хотите помочь? Изучайте языки программирования и программируйте. Начните '''по-настоящему''' общаться с вашим добрым-джинном компьютером, он хочет исполнить '''ваши''' желания 😉
 
Но что это? Вы получили то, что заказывали, но это просто набор человеческих букв. Компьютер не знает, что такое лекарство и что такое болезни, сначала вы должны тщательно объяснить ему это на пальцах единиц и нулей. Компьютер может исполнять всё, что вы хотите, но не может изобрести за вас что-то непонятное. А мы пока сами не знаем, что такое лекарство от всех болезней.
 
Но не переживайте, компьютеры добры к человеку и не бросят его в беде. Прямо сейчас тысячи компьютеров делают вычисления, чтобы помогать быстрее изобретать новые лекарства. А после изобретения помогут автоматизировать производства по их изготовлению, чтобы сделать лекарства дешевыми и доступными.
 
Хотите помочь? Изучайте языки программирования и программируйте. Начните по-настоящему общаться с вашим добрым-джинном компьютером, он хочет исполнить ваши желания.


== А если серьезно ==
== А если серьезно ==