Истински герои12-14 г.

Ада Лъвлейс: първата програмистка

Как дъщерята на поета Байрон написва първата публикувана компютърна програма около 100 години преди първия компютър.

Мечо Добрин

Здравей, аз съм Мечо Добрин. Какво ще кажеш, ако ти разкажа за момиче, което пише програма за компютър около 100 години преди да бъде построен първият истински компютър? Звучи невъзможно, нали?

Реши теста

История от живота

На 5 юни 1833 г. 17-годишната Ада Байрън отива на светско парти в Лондон и там се запознава с изобретателя Чарлз Бабидж. Скоро след това той ѝ показва у дома си част от своята „Диференчна машина“, огромен механичен калкулатор от зъбни колела. Повечето гости само се дивят на лъскавия механизъм, но Ада веднага иска да разбере как работи. Двамата си пишат години наред. През 1843 г. тя превежда от френски статия на италианския инженер Луиджи Менабреа за новата машина на Бабидж, „Аналитичната машина“, и добавя свои бележки, около три пъти по-дълги от самата статия. В последната бележка, бележка G, тя описва стъпка по стъпка как машината да изчисли така наречените числа на Бернули. Днес мнозина наричат това първата публикувана компютърна програма.

Разбери го стъпка по стъпка

  1. Дъщерята на поета

    Ада е родена на 10 декември 1815 г. в Лондон. Баща ѝ е прочутият поет лорд Байрон, но родителите ѝ се разделят, когато тя е на около месец, и тя никога повече не вижда баща си. Майка ѝ Анабела, която обича математиката, я кара да учи математика и природни науки от малка, отчасти за да не стане „непредсказуема“ като баща си.

  2. Малката изобретателка

    Около 12-годишна Ада решава да построи летяща машина. Изучава птиците, сравнява материали за криле и пише книжка с рисунки, която нарича „Летенето“. Тук се вижда нейната смес от въображение и точност, която по-късно сама нарича „поетична наука“.

  3. Машината на Бабидж

    Аналитичната машина е проект за механичен компютър: има „склад“ за числа (днес бихме казали памет) и „мелница“ за изчисления (днес процесор). Инструкциите се подават с перфокарти, картони с дупки, идея, взета от тъкачния стан на Жакар. Машината никога не е довършена, най-вече заради липса на пари и много сложни части.

  4. Голямата идея на Ада

    Ада пише, че машината може да работи не само с числа, а с всякакви символи, стига да има правила за тях. Тя дава пример, че някой ден такава машина би могла да съчинява музика. Точно това правят днешните компютри: превръщат в числа текст, картини, звук и игри.

  5. Наследството

    Ада умира на 27 ноември 1852 г., само на 36 години. Повече от век по-късно Министерството на отбраната на САЩ кръщава на нея новия език за програмиране Ada, чийто официален стандарт излиза през 1980 г. А всяка година през октомври (втория вторник) по света се отбелязва Денят на Ада Лъвлейс в чест на жените в науката и технологиите.

Представи си така: Програмата на Ада е като рецепта за сладкиш: машината е кухнята, перфокартите са листчетата с рецептата, а стъпките са точно подредени: „вземи това число, умножи го по онова, запиши резултата, повтори“. Ада написва рецептата, преди кухнята изобщо да е построена.

ИнфографикаЖивотът на Ада
  1. 1815ражда се в Лондон, дъщеря на лорд Байрон
  2. 1828около 12-годишна проектира летяща машина
  3. 1833запознава се с Чарлз Бабидж
  4. 1835омъжва се за Уилям Кинг, по-късно става графиня Лъвлейс
  5. 1843публикува превода и бележките си с първата програма
  6. 1852умира на 36 години
  7. 1980излиза стандартът на езика Ada, кръстен на нея

Решени примери

Защо Ада използва повторение (цикъл) в програмата си?

Числата на Бернули се смятат с много сходни стъпки. Вместо да ги пише стотици пъти, тя описва група операции, която машината да повтаря. Цикълът и днес е една от основните идеи във всяко програмиране.

Защо перфокартите са удобни за машината?

Дупка или липса на дупка е като „да“ или „не“, 1 или 0. Механизмът може лесно да усети разликата. Това е предшественик на днешния двоичен код.

Може ли да се каже, че Ада е програмирала компютър?

Нейната машина никога не е построена, затова програмата не е пусната тогава. Но алгоритъмът е правилно замислен за конкретна машина и е публикуван, затова тя се смята за една от първите програмистки в историята.

Внимавай с тези грешки

  • Ада Лъвлейс е изобретила компютъра.Машината е изобретение на Чарлз Бабидж. Приносът на Ада е, че описва как да се програмира и вижда, че машината може много повече от сметки.
  • Машината на Бабидж е била построена и е работила.Аналитичната машина така и не е довършена. Програмата на Ада остава на хартия.
  • Ада е единствената, която е писала програми за машината.Бабидж също е скицирал примерни изчисления, но не ги публикува. Програмата на Ада е най-подробната и първата публикувана, затова е толкова известна.

Задачи

Лесни

  1. На колко години е Ада, когато се запознава с Бабидж (1833), и на колко, когато публикува бележките си (1843)?

    Подсказка

    Извади годината на раждане и помисли дали рождената ѝ дата (10 декември) вече е минала.

    Отговор

    На 17 години и на 27 години (рождена 1815, в края на годината, затова през юни 1833 тя е на 17).

  2. Напиши „рецепта“ от 5 точни стъпки как да си измиеш ръцете. Дай я на съученик да я изпълни буквално.

    Подсказка

    Робот прави само това, което пише. Пропусна ли нещо (например да спреш водата)?

    Отговор

    Пример: 1. Пусни водата. 2. Намокри ръцете. 3. Сложи сапун. 4. Търкай 20 секунди. 5. Изплакни и спри водата.

Средни

  1. Опиши като алгоритъм с повторение как да съберем числата от 1 до 10. Какъв е резултатът?

    Подсказка

    Започни със сума 0 и добавяй числата едно по едно.

    Отговор

    Сума = 0; за всяко число от 1 до 10: сума = сума + число. Резултат: 55.

  2. Перфокарта има ред от 4 места, на всяко може да има дупка или не. Колко различни реда могат да се направят?

    Подсказка

    Всяко място има 2 възможности.

    Отговор

    16 (2 x 2 x 2 x 2).

Трудни

  1. Ада предсказва, че машина би могла да съчинява музика. Дай 3 примера какво правят днешните компютри с „нечислови“ символи.

    Подсказка

    Помисли какво правиш с телефона или компютъра, освен да смяташ.

    Отговор

    Например: проверка на правопис, превод между езици, музика и звук, обработка на снимки, игри.

  2. Числата на Фибоначи се смятат с повторение: всяко следващо е сбор от двете преди него (1, 1, 2, 3, 5...). Напиши първите 10 и опиши стъпките като алгоритъм.

    Подсказка

    Пази винаги последните две числа.

    Отговор

    1, 1, 2, 3, 5, 8, 13, 21, 34, 55. Алгоритъм: a = 1, b = 1; повтаряй: запиши a; ново = a + b; a = b; b = ново.

Мини проект · 30 минути

Програмирай човек-робот

Цел: Да разбереш колко точни трябва да са инструкциите за машина.

  1. Разделете се по двойки: единият е програмист, другият е робот.
  2. Програмистът пише на лист с команди само от вида: „напред N крачки“, „завий наляво“, „завий надясно“, „вдигни“, „остави“.
  3. Задачата: роботът да стигне до бутилка в другия край на стаята, да я вземе и да я сложи на определено място.
  4. Роботът изпълнява само написаното, буквално, без да мисли.
  5. Ако нещо се обърка, търсите „бъга“ и поправяте програмата.

Накрая: Всяка двойка показва първата и поправената си програма и разказва какъв бъг са открили.

Тест с точки

10 въпроса, 18 точки, оценка накрая и разбор какво да преговориш.

Започни теста

Още от „Истински герои“

Истински герои12-14 г.Айнщайн: любопитството, което промени физикатаКак едно любопитно момче с компас стига до E=mc², защо часовниците на спътниците бързат и какво общо има това с твоя телефон.Истински герои12-14 г.Галилео: да погледнеш в небетоКак Галилео Галилей насочил телескоп към небето, открил луните на Юпитер и платил висока цена, за да защити истината.Истински герои12-14 г.Лекарите герои: Едуард Дженър и ваксинатаКак селски лекар и една млекарка помагат на света да победи едрата шарка с първата ваксина.Истински герои12-14 г.Мария Кюри: учената с две Нобелови наградиКак едно момиче от Варшава открива радия, измисля думата радиоактивност и печели две Нобелови награди.Истински герои12-14 г.Никола Тесла: човекът на токаЩе научиш кой е Никола Тесла, какво е променливият ток и защо днес токът в контакта ти работи по неговата идея.Истински герои12-14 г.Христо Ботев: поетът революционерКой е бил Христо Ботев извън учебника: бунтар от Калофер, журналист в Румъния, поет с около 20 стихотворения и капитан на превзет кораб.

Всички теми в „Истински герои“