Andrey Stolyarov

Андрей Викторович Столяров: сайт автора

ПРОГРАММИРОВАНИЕ: ВВЕДЕНИЕ В ПРОФЕССИЮ

краудфандинговый проект

Программирование: введение в профессию. Издание 2,9 (электронное)

1st volume cover 2nd volume cover

Идёт активная работа над новым изданием книги Программирование: введение в профессию. Издание авторским произволом получило номер 2,9 (два и девять десятых). Предполагается, что последующие версии, если когда-нибудь появятся, получат номера 2,99, 2,999 и т.д., т.е. номера электронных изданий будут арифметически всё ближе и ближе к тройке, но равными тройке станут лишь в случае, если книга когда-нибудь будет снова напечатана на бумаге типографским способом.

К настоящему моменту доступны первые два тома из трёх (опубликованы 14 января и 9 апреля 2025 г.) Ссылки для скачивания см. ниже.

Аннотация

Учебник «Программирование: введение в профессию» ориентирован на самостоятельное изучение и предполагает использование систем семейства Unix (в т.ч. Linux) в роли сквозной среды для обучения.

Скачать книгу

Дополнительные файлы

Файл stud_io.inc, используемый в начальных примерах третьей («ассемблерной») части, можно взять здесь: http://www.stolyarov.info/books/extra/stud_io_inc. Не забудьте переименовать файл! Это делается так:

  mv stud_io_inc stud_io.inc

Errata

Том I

Стр.Положение Содержание, комментарий
2аннотацияпоследнее предложение первого абзаца аннотации дублируется в начале второго абзаца; должно быть только во втором
4заголовокнаписано «Оглавление», должно быть «Содержание»
17начало второго абзаца после заголовканаписано «Второе издание, которое вы держите в руках», что не соответствует действительности, поскольку издание уже не второе
36в сноске 1имя команды ps набрано не тем шрифтом
385 абзац снизу, 2 строканаписано VI, должно быть vi
128в тексте примера (5 строка сверху)присваивание переменной filemode перед вызовом rewrite бессмысленно
1343 абзац снизу, 3 строканаписано «попытатся», должно быть «попытаться» (пропущен мягкий знак)
13621 и 19 строки снизу (первые две строки примера)перепутаны местами ключевые слова do и then
1712 абзац снизу, 6 строканаписано «Секцию стека», но речь должна идти про сегмент
1865 абзац, 25 строканаписано «не превосходит 32», должно быть «не превосходит 31»
2023 абзац сверху, 2 строканаписано «(влево)», должно быть «(вправо)»

Том II

Стр.Положение Содержание, комментарий
973 абзац сверху написано «EACCESS», должно быть «EACCES»
184первая и вторая "выключные" вставки кода после заголовканеправильное положение звёздочек в типах параметров и возвращаемого значения

From Egor (unverified) Mon Apr 14 08:53:20 2025 UTC pencil

Синтаксические ошибки в примере

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

while first <> nil then

и

if first^.data < 0 do.

А остаток примера убежал на другую страницу.

parent From Andrey V. Stolyarov profile Mon Apr 14 10:18:28 2025 UTC pencil

userpic

Re: Синтаксические ошибки в примере

Ага, ну вот и начались ошибки, внесённые при подготовке версии 2.9. Спасибо, вы совершенно правы.

> убежал на другую страницу.

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

From anon (unverified) Sun Apr 13 21:33:34 2025 UTC pencil

Том 2, стр. 84, п. 4.11.3, строка 12

На FreeBSD указанная команда man attr к желаемому результату не приводит, вместо неё нужная страница ищется через man curs_attr.

parent From Andrey V. Stolyarov profile Mon Apr 14 10:01:49 2025 UTC pencil

userpic

Re: Том 2, стр. 84, п. 4.11.3, строка 12

И что? Учесть все подобные нюансы невозможно.

From Robert (unverified) Mon Mar 31 08:38:55 2025 UTC pencil

Предположительно ошибка

На стр. 189 в первом предложении параграфа 3.3.1 написано:

Как мы уже знаем, под стеком в программировании подразумевают структуру данных

Ранее в книге (стр. 134, параграф 2.10.5) было объяснено, что называть стек (а также очередь) структурой данных - некорректно.

parent From Andrey V. Stolyarov profile Mon Mar 31 08:46:57 2025 UTC pencil

userpic

Re: Предположительно ошибка

Вы просто выдернули половину фразы из контекста. Термин "стек", разумеется, не соответствует какой-то конкретной структуре данных, и не обозначает никакую структуру данных, но при этом стек всегда реализуется какой-то структурой данных. Что, заметим, написано и здесь (если не обрывать цитирование на половине предложения, как это сделали вы), и в параграфе 2.10.5.

From Иван aka technocrat (unverified) Thu Mar 6 12:28:30 2025 UTC pencil

offtop

Андрей Викторович, здравствуйте!

Несколько минут назад узнал о выходе электронного издания книги и хочу сказать, что Вы глыба!

Простите меня, если метафора Вам не понравится.

Я 74-го года рождения, программирование для меня некоторая страсть, но профессионально я не смог сделать это своим занятием, кривая жизни увела в сторону.

It doesn't matter.

Это не Ваша проблема.

Не хватает слов для выражения чувств возврата к 90-м, того "духа" пионерии в электронике и в вычислительной технике, восхищения от Вашего энтузиазма, профессионализма, преданности делу, в конце-концов от того, как Вы перекидываете мост между "тогда" и "сегодня".

Будьте здоровы и успехов Вам во всём!

P.S.

Как-то я писал Вам комментарий, в попытке указать на какую-то ошибку в издании и прошу простить за это, она была неуместныой и неудачной.

Тот комментарий Вы, скорее всего "похоронили" и это хорошо.

parent From Andrey V. Stolyarov profile Thu Mar 6 13:52:05 2025 UTC pencil

userpic

Re: offtop

Вот смотрю на это и не знаю, как реагировать. Какое "тогда", какое ещё "сегодня"? Если я только понимаю, про какой исторический период идёт речь, господствовал тогда омерзительный MSDOS, нормальные операционки на обычных компах только-только появлялись, публика про них и не знала толком. Ну, возможно, в те времена не было долбаной вебни, но было бы крайне странно думать, что сейчас кроме вебни нет вообще ничего.

parent From diesi (unverified) Sun Mar 9 02:50:08 2025 UTC pencil

Re: Re: offtop

Интересный момент: даже сама M$ не рассматривала DOS как что-то, что придёт надолго, они рассчитывали, что эта убогая хрень побудит людей покупать Unix-подобную Xenix, которую нельзя было поставить на PC с завода из-за разногласий между IBM (делавшей PC) и AT&T (которой принадлежали права на Unix). И успешно с этим продолбались, понятное дело. А всё почему? А потому что нехрен прибивать ОС к железу гвоздями -- DOS шёл на любом PC любого производителя as is, а Xenix каждый производитель должен был адаптировать к каждой своей модели PC, и разумеется, самой IBM эта процедура вообще была недоступна.

parent From Andrey V. Stolyarov profile Sun Mar 9 08:43:58 2025 UTC pencil

userpic

Re: offtop

Это конфликтует с моим пониманием истории. До сей поры мне встречалась только такая версия, что Билл Гейтс для MSDOS придумал модель per copy, т.е. вместо того, чтобы лицензировать её IBM за какую-то единовременную сумму, он потребовал, если не ошибаюсь, два бакса за каждый устанавливаемый экземпляр, и с этого началась копирастическая "революция" (ну или революция без кавычек, но в самом поганом смысле слова) в области софта. Упоминание Xenix в окрестностях этой истории я вижу впервые, да и при чём тут MS, на Xenix'е деньги бы зарабатывали не они.

parent From diesi (unverified) Sun Mar 9 10:57:54 2025 UTC pencil

Re: Re: offtop

Это верно, но не противоречит тому, что юзеру за его же деньги предоставляют в составе компа "троянского коня", который призван побудить его открыть кошелёк ещё раз, и на этот раз пошире, чтобы получить софт получше. Xenix лицензировалась точно так же, per copy (это для неё придумали изначально, ещё до дел с IBM), но значительно дороже, с отдельным вариантом для многопользовательских машин и без возможности купить копию у самой M$. Современная стратегия продаж винды это что-то среднее между таковыми для DOS и для Xenix.

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

parent From Недопредпенс (unverified) Fri Apr 11 14:26:48 2025 UTC pencil

offtop

DOS шёл на любом PC любого производителя as is

Если производитель написал для своего PC процедуры ввода и вывода на CON:, чтения и записи секторов дискеты, собрал BIOS (IO.SYS) https://raw.githubusercontent.com/microsoft/MS-DOS/refs/heads/main/v1.25/source/IO.ASM прилагаемым ассемблером и позаботился о процедуре IPL.

parent From diesi (unverified) Tue Apr 15 16:05:58 2025 UTC pencil

Re: offtop

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

parent From Недопредпенс (unverified) Sat Apr 12 08:29:43 2025 UTC pencil

Re: offtop

Unix-подобную Xenix, которую нельзя было поставить на PC с завода из-за разногласий между IBM (делавшей PC) и AT&T (которой принадлежали права на Unix)

Gary Kildall:

The problem is that micros haven't had the power to support it. They haven't had the large amount of main memory, the hard disk, the fast processor and so forth.

UNIX1985. Computer Chronicles

У IBM в первой половине 1980-х были машинки с XENIX на мотороловских 68k с 32-разрядной архитектурой. И не только у IBM

parent From diesi (unverified) Tue Apr 15 16:28:58 2025 UTC pencil

Re: Re: offtop

Судя по тексту, Килдалл говорил о персоналках прошедшей эпохи, когда UNIX уже был, но никто и не думал ставить его на персоналки, то есть, про 1970-е годы, примерно времена процессора Intel 8080. На самом первом IBM PC с Intel 8088 Xenix ещё как работал. А писался он вообще для 18-разрядного PDP-7, у которого даже процессора не было, и памяти от десятка до сотни килобайт.

Мало ли, что там у IBM было, у них и сейчас много всякого есть интересного. На PC-то этого не было.

parent From Andrey V. Stolyarov profile Tue Apr 15 19:22:45 2025 UTC pencil

userpic

Re: Re: Re: offtop

> Xenix ещё как работал. А писался он вообще для 18-разрядного PDP-7

Кто, пардон, для PDP-7 писался? Xenix? Что-то сдаётся мне, к моменту появления Xenix если где ещё и были живые PDP-7, то разве что в музеях.

parent From diesi (unverified) Wed Apr 16 03:27:55 2025 UTC pencil

Re: Re: Re: Re: offtop

Возможно, что-то я напутал, и не для PDP-7, а для PDP-11. Но на 11 она работала уже совершенно точно.

parent From Andrey V. Stolyarov profile Wed Apr 16 14:31:56 2025 UTC pencil

userpic

Re: offtop

На PDP-7 Томпсон развлекался со своими игрушками, и типа "заодно операционку написал". Она к тому времени (начало семидесятых) была уже безнадёжно морально устаревшей, зато на конкретный экземпляр никто, кроме Томпсона, не претендовал. Ну, типа, тот самый первый Unix, который ещё Unics.

В PDP-11 верю, почему нет. Её и наштамповали экземпляров примерно в 5000 (прописью: пять тысяч) раз больше, и изрядно позднее сделали, и клонов у неё было — когда я на бейсике БК0010 свой стартрек писал, не подозревал, что эта штуковина у меня на столе где-то в глубине души таки тоже PDP11.

From Саша (unverified) Mon Mar 3 18:39:24 2025 UTC pencil

Содержание

В новом издании «Содержание» подписано как (второе) «Оглавление». Интересно, как так вышло.

parent From Andrey V. Stolyarov profile Sat Mar 29 19:03:15 2025 UTC pencil

userpic

Re: Содержание

Очень просто вышло, закомментарил лишнего. Спасибо за сообщение.

From NorD (unverified) Mon Feb 17 08:00:08 2025 UTC pencil

Процедуры reset/rewrite

Здравствуйте, Андрей Викторович! Объясните, пожалуйста, следующий момент в Вашей книге: В 2.9.3 "Типизированные файлы" 1-го тома указано, что для режима "только запись" нужно в переменную filemode внести значение 1 и использовать процедуру reset. При этом выше по тексту книги написано, что переменная filemode влияет на процедуру reset, но не влияет на процедуру rewrite. Далее в главе 2.9.4 "Блочный ввод-вывод" в коде примера block_cp.pas перед открытием файла dest на запись мы заносим в переменную filemode 1 и используем процедуру rewrite, хотя это противоречит ранее изложенному. Правильно я понимаю, что в данном случае всё-таки должна применяться процедура reset? P.S. Спасибо Вам за книги и удачи в Ваших начинаниях.

parent From Andrey V. Stolyarov profile Mon Feb 17 09:29:31 2025 UTC pencil

userpic

Re: Процедуры reset/rewrite

Нет, там по смыслу нужна именно rewrite, а вот заносить какое-то значение в filemode перед её вызовом не нужно. Это должно было исчезнуть из примера при подготовке второго издания, но, как видим, не исчезло.

From G (unverified) Fri Feb 7 10:36:53 2025 UTC pencil

Файлы

А где файлы с примерами?

parent From Andrey V. Stolyarov profile Fri Feb 7 10:45:24 2025 UTC pencil

userpic

Re: Файлы

Законный вопрос.

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

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

parent From noanon (unverified) Fri Feb 14 11:32:31 2025 UTC pencil

Re: Re: Файлы

Редактирование в плане исправление опечаток и ошибок или какие-то примеры были основательно переработаны для большей наглядности?

parent From Andrey V. Stolyarov profile Fri Feb 14 16:09:16 2025 UTC pencil

userpic

Re: Re: Re: Файлы

В примерах конкретно к первому тому самое заметное изменение — в полноэкранных программах коды кнопок раньше (увы мне) присутствовали в виде чисел прямо в коде. Сейчас они вынесены в именованные константы.

В примерах к остальным двум томам, возможно, будут более серьёзные изменения; в частности, я планирую избавиться от идиотского (комитетского) sig_atomic_t.

From Руслан (unverified) Tue Jan 28 21:12:52 2025 UTC pencil

Задачник

Андрей Викторович, подскажите, задачник для второго издания учебника применим к новому изданию?

parent From Andrey V. Stolyarov profile Tue Jan 28 22:03:33 2025 UTC pencil

userpic

Re: Задачник

Не вижу, каким образом он мог бы стать "неприменим". Насколько я помню, ссылок на трёхтомник по номерам страниц в задачнике всё-таки нет, номера параграфов не изменились.

From a (unverified) Mon Jan 27 10:59:37 2025 UTC pencil

Errata

В издании 2.9 в 1 томе на странице 36 есть сноска номер 21. В ней слово "ps" должно быть напечатано другим шрифтом.

parent From Andrey V. Stolyarov profile Sat Mar 29 19:06:55 2025 UTC pencil

userpic

Re: Errata

Есть такое, благодарю

From Алексей Л. (unverified) Mon Jan 27 07:20:54 2025 UTC pencil

Печать издания 2.9

Издание 2.9 очень сложно распечатать, т.к. там что-то не то с размерами страниц :(

From Anonymous (unverified) Sat Jan 25 02:30:44 2025 UTC pencil

Том 1, стр 44

Я вас надеюсь не сильно заспамил комментариями? Комментарии/ошибки/неточности лучше в одном комменте или отдельно?

> При выполнении заданий практикума

Видно, что скопировано из методички без редактирования. Можно конечно так и оставить, но немного некрасиво.

Кстати и часть про логин в линуксе через putty или иксы где-то раньше тоже мне показалась странной, но я только сейчас осознал, что она тоже скопирована из какой-то методички без изменений. Там речь идёт о дисплейном классе, а в книге вроде как предполагается самостоятельно установленный линукс.

Ну и до кучи, echo "" "$3" "$2" "$1" можно было бы заменить на printf, чтобы избежать неаккуратного пробела, но я думаю то за ошибку не считается, так что я не стал писать сразу.

$ foo() { printf "%s\n" "$3 $2 $1"; }
$ foo 1 2 -3
-3 2 1

parent From Andrey V. Stolyarov profile Sat Mar 29 19:50:31 2025 UTC pencil

userpic

Re: Том 1, стр 44

> Комментарии/ошибки/неточности лучше в одном комменте или отдельно?

Лучше отдельно. Далеко не всегда есть достаточно времени, чтобы обработать целиком поступившую простыню.

> Видно, что скопировано из методички без редактирования.

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

> можно было бы заменить на printf

Простите, вы что, издеваетесь? Посмотрите внимательно на окрестности этого фрагмента и прикиньте, как будет выглядеть, если туда впендюрить ещё и рассказ про printf(1) (особенно учитывая, что текст ориентирован на людей, не имеющих никакого представления о Си).

From Anonymous (unverified) Fri Jan 24 22:02:21 2025 UTC pencil

Том 1, стр 38

VI — это шесть римскими цифрами, а редактор таки vi

parent From Andrey V. Stolyarov profile Sat Mar 29 19:42:57 2025 UTC pencil

userpic

Re: Том 1, стр 38

Согласен, спасибо.

From Anonymous (unverified) Thu Jan 23 01:22:16 2025 UTC pencil

Том 1, стр 27

> flash-брелке

По идее правильно будет с буквой о, flash-брелоке. Я тоже удивился, что оно так склоняется, но вот так.

parent From diesi (unverified) Sun Feb 9 16:42:53 2025 UTC pencil

Re: Том 1, стр 27

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

From anon (unverified) Tue Jan 21 19:22:48 2025 UTC pencil

Изменения в издании 2.9

Извините, а какие есть ключевые изменения в новом издании?

parent From Andrey V. Stolyarov profile Tue Jan 21 20:27:02 2025 UTC pencil

userpic

Re: Изменения в издании 2.9

"Ключевых" нет. В основном исправлены ошибки из эрраты. Из нового — доработаны некоторые параграфы про оформление кода, особенно 2.12.9 и 2.12.10. Ну и ещё много где есть по одному-два абзаца, всего не вспомнить.

parent From anon (unverified) Wed Jan 22 08:36:28 2025 UTC pencil

From Anonymous (unverified) Fri Jan 17 04:56:40 2025 UTC pencil

Стр 23, том 1

"без малого полвека" — уже не "без малого", а чуток больше полвека. Декабрь 1974 — появление Альтаира 8800, то есть ровно полвека - декабрь 2024.

parent From Недопредпенс (unverified) Sat Jan 18 05:24:13 2025 UTC pencil

Полвека ПК

Альтаир 8800 - ещё не привычный прибор, а нечто среднее между игрушечным однобитным Kenbak'ом и настольными миниЭВМ (в том числе и для "персонального", хоть и не домашнего, использования), которыми в 1970 уже никого не удивишь.

Изобретатель Kenbak'а со своим изобретением

Конечно, Альтаир запустил микрокомпьютерный хайп, который привёл в том числе и к взлёту бизнеса трёх корпораций на буквы A, D и М появлению ПК в привычном виде.

parent From Anonymous (unverified) Sat Jan 18 23:24:18 2025 UTC pencil

Re: Полвека ПК

Альтаир уже вполне себе ПК. Я довольно долго ковырялся на эмуляторе с ним. Хотя IMSAI 8080 пожалуй лучше.

From Anonymous (unverified) Thu Jan 16 16:57:24 2025 UTC pencil

Адресная арифметика в паскале

На странице 14 написано "за исключением разве что адресной арифметики" в отношении паскаля, но в гостевой книге есть примеры с таковой на паскале.

Интересно, адресная арифметика появилась только в Free Pascal или в TP и Delphi уже была?

parent From Andrey V. Stolyarov profile Thu Jan 16 17:05:40 2025 UTC pencil

userpic

Re: Адресная арифметика в паскале

Насколько я помню, в TP 7.0 честной адресной арифметики ещё не было, хотя, например, динамические массивы, от которых сишностью пасёт на километр, были уже в 5.0.

Так или иначе, на том этапе обучения, на который рассчитана паскалевская часть книги, адресная арифметика скорее вредоносна. Придумать такие задачи, которые невозможно было бы решить без списков, при этом имея динамические массивы (хоть в каком их варианте), и при этом достаточно простые для начинающих, лично я не возьмусь; следовательно, если обучаемому дать доступ хоть к адресной арифметике "по-честному", хоть к тем динамическим массивам, которые тянутся ещё с TP 5.0, если не раньше — то всё, нормально работать с указателями он никогда уже не научится.

parent From Anonymous (unverified) Thu Jan 16 21:36:14 2025 UTC pencil

Re: Re: Адресная арифметика в паскале

Проблема с динамическим массивом понятна - если массив может ресайзить сама RTL, то нет особой мотивации изучать, как это делать вручную, но с адресной арифметикой в чём проблема?

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

parent From Andrey V. Stolyarov profile Thu Jan 16 22:18:00 2025 UTC pencil

userpic

Re: Re: Re: Адресная арифметика в паскале

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

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

parent From Turbo (unverified) Thu Jan 23 12:47:29 2025 UTC pencil

Re: Адресная арифметика в паскале

Адресная арифметика с PChar появилась в TP/BP7 и TPW вместе с PChar, если мне не изменяет память.

Борландовский странноватый пример к StrEnd():

function StrEnd(Str: PChar): PChar;

uses Strings;
var
S: array[O .. 79] of Char;
begin
Readln(S);
Writeln('String length is', StrEnd(S) - S);
end.

TP7.0 Programmer's Reference (9.9M)

parent From Andrey V. Stolyarov profile Thu Jan 23 12:52:36 2025 UTC pencil

userpic

Re: Адресная арифметика в паскале

Тут да, я вполне могу ошибаться. Дело в том, что я TP осваивал на версии 5.5, активно писал (за деньги) на 6.0, "семёрка" у меня была, но я, скорее всего, не использовал от неё новые возможности, поскольку к моменту её появления (в смысле у меня, а не вообще в природе) все мои проекты на Паскале уже существовали, новых я не начинал. Поэтому если там что-то такое появилось, я мог просто не обратить внимания.

parent From Недопредпенс (unverified) Sat Jan 25 11:41:48 2025 UTC pencil

Re: Re: Адресная арифметика в паскале

Между 6.0 и 7.0 вышел такой "новый" продукт под названием Turbo Pascal for Windows 1.0(и 1.5)

В нём, похоже, и появилось это расширение для удобства прямого вызова функций 16-разрядного WinAPI. Вместе с фирменным борландовским стилем кнопочек, которые рисовала BWCC.DLL

Turbo Pascal for Windows. Version 1.5

From Anonymous (unverified) Wed Jan 15 13:52:47 2025 UTC pencil

Второе издание, которое вы держите в руках

На странице 17 в параграфе "Структура книги и используемые обозначения" во втором абзаце написано: "Второе издание, которые вы держите в руках...", хотя речь идёт про электронное издание 2.9.

From Anonymous (unverified) Wed Jan 15 11:49:08 2025 UTC pencil

Аннотация

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

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

parent From Andrey V. Stolyarov profile Wed Jan 15 12:07:16 2025 UTC pencil

userpic

Re: Аннотация

Есть такое, да. Чуть позже заведу страничку для эрраты.


pencil

пояснение


Вы находитесь на официальном сайте Андрея Викторовича Столярова, автора учебных пособий по программированию и информационным технологиям.

Если вы искали сайт замечательного писателя-фантаста Андрея Михайловича Столярова, то вам, к сожалению, не сюда.

Андрей Михайлович Столяров в библиотеке Мошкова

Авторские права © Андрей Викт. Столяров, 2009 — 2025