Нет, не отношусь. Тем более я на C++ не пишу и даже своим студентам пятого курса честно говорю — «я его не знаю!» (некоторые мои студенты знают его лучше меня). Что я думаю о нём? 1. C++ очень хорош. 2. Он оказал огромное влияние на развитие других ЯП. 3. Он в меру опасен. 4. Он очень распространён (множество проектов и разработчиков). Лучший ли он? Возможно, в каких-то областях. Будет ли он лучшим в этих областях спустя какое-то время — никто не знает.
А вот трактовки терминов получились довольно вольными.
Мы-то знаем, что такое заголовочный файл. Знаем, где он хранится на диске, и что в нём находится. Но опять же, тянем за верёвочку и мы будем обязаны объяснить, что функцию до использования нужно объявить, чтобы компилятор знал о количестве и типе передаваемых параметров, да и много других вещей (именованные константы, пользовательские типы данных, директивы препроцессора). А это в свою очередь, тянет за собой ещё кучу материала. В условиях ограниченности времени пришлось этим пожертвовать. И в статье я хотел это показать — «смотрите, я сказал неправильно, но при этом минимизировал вред неокрепшей детской психике».
День добрый, коллега! Это у десятиклассников такой вид практики. Ходят в университет, а преподаватели (в добровольно-принудительном порядке) читают лекции и проводят практические занятия, кто в чём горазд. Причём, так как это политех, то предметов — уйма. Из плюсов — школьники смотрят, что им нравится, а что нет; могут определиться за год, куда поступать и какие для этого нужно сдавать экзамены. Из минусов — действительно, за один урок ничему не научишься, 99% полученной информации улетучится после выхода из аудитории. Но в целом, нужно смотреть на такой вид практики в комплексе. Что включает и тематику материала, который был представлен, и манеру преподавания, и много других вещей, которые сходу не сформулируешь. Главное — чтобы у школьников осталось какое-то чувство, типа, это моё, может, стоит задуматься на счёт этого, а вот это — точно не моё.
Zelenyikot, что Вы думаете о выводе на орбиту Луны одного/нескольких пикоспутников/фемтоспутников? Возможно ли это с технической точки зрения и с экономической? Есть ли задачи, которые смогли бы такие спутники решать? Если есть, то какое оборудование должно присутствовать?
Вопрос, рассматриваемый в статье, очень интересный и актуальный (сходу вспоминается несколько задач, где необходимо компенсировать погрешности при накоплении). Но проверять выкладки совершенно не хочется после увиденного кода… Сразу с первого примера…
Сначала:
val = val/10000000000.0.0;
Потом:
for (int i = 0; i < 10000000000.0; i++) {
(не могу проверить на разных 64-битных компиляторах — да, возможно, в некоторых случаях int будет занимать 64 бита, но в 32-битной системе значение переменной в int не может превышать 2^31-1, что << 10^10).
Ну, и всякие мелочи, вроде вместо для функции printf.
Рассматривал и эту версию, и ту, которая указана выше. И честно говоря, сам склонялся именно к этой. Плюсы за Ваш ответ могут косвенно свидетельствовать, что так и было — преподаватель набрасывал пару баллов для того, чтобы испытуемые всё-таки набрали минимум баллов и прошли тест.
Классно! :) Хотелось бы запоминание места, на котором остановился (а лучше подобие библиотеки) и отключения текста снизу (чтобы только одно слово было видно).
Да, фантазии не хватило дать полям структуры имена. p — pointer to XX offset. Возьму на заметку — надо исправить.
А вообще, это структура для работы с файловой системой:
Общий формат информационной структуры:
+0: dword: номер подфункции
+4: dword: смещение в файле
+8: dword: старший dword смещения (должен быть 0) или поле флагов
+12 = +0xC: dword: размер
+16 = +0x10: dword: указатель на данные
+20 = +0x14: n db: ASCIIZ-строка с именем файла или
+20 = +0x14: db 0
+21 = +0x15: dd указатель на ASCIIZ-строку с именем файла
Да, согласен. Возможно, стоит задуматься над вопросом совместимости. Но это больше философский вопрос. С точки зрения программирования реализация не такая уж и сложная.
Чтобы не обнадёживать пользователей. Потому что на этом совместимость и закончилась бы. Нет многих команд, перенаправления ввода/вывода (пока что), пайпов и много другого. Также различна структура каталогов операционных систем. Тем не менее, если пользователь уверен в своих силах, никто не может запретить ему скорректировать скрипт для запуска в Шелле.
Сначала:
Потом:
(не могу проверить на разных 64-битных компиляторах — да, возможно, в некоторых случаях int будет занимать 64 бита, но в 32-битной системе значение переменной в int не может превышать 2^31-1, что << 10^10).
Ну, и всякие мелочи, вроде вместо для функции printf.
Думаю, нужно уточнить, что может ли человек получить более одного приза.
Шуточный вопрос. В статье написано:
На чём играет 1 пользователь? :)
А в целом, очень интересно.
Вообще, комментарии к статье оказались очень полезными — они указывают на такие вещи, на которые я обращал недостаточно внимания.
А вообще, это структура для работы с файловой системой:
Общий формат информационной структуры:
+0: dword: номер подфункции
+4: dword: смещение в файле
+8: dword: старший dword смещения (должен быть 0) или поле флагов
+12 = +0xC: dword: размер
+16 = +0x10: dword: указатель на данные
+20 = +0x14: n db: ASCIIZ-строка с именем файла или
+20 = +0x14: db 0
+21 = +0x15: dd указатель на ASCIIZ-строку с именем файла