(1 курс ФИИТ) CS101. Основы программирования — практика


#1

Тема для обсуждения лабораторных.

>>> Страница курса


#2

Страница курса уже содержит много познавательной информации. Вам следует зарегистрироваться на сайте http://edu.mmcs.sfedu.ru/ письмо с кодом активации должно прийти на почту в раздел Спам.

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

1.8-1, Анна Владимировна Абрамян

  1. Бурмистров Артем Андреевич
  2. Вельмисов Владислав Олегович
  3. Гриценко Михаил Евгеньевич
  4. Гуртовой Александр Игоревич
  5. Дмитриева Мария Юрьевна
  6. Зотов Александр Сергеевич
  7. Кардашьян Анна Александровна
  8. Карпенко Елизавета Сергеевна
  9. Коломийцев Вадим Васильевич
  10. Корчагина Анастасия Алексеевна (с.)
  11. Крылов Данил Александрович
  12. Кумаритов Алан Олегович
  13. Лопина Мария Михайловна
  14. Маслова Ольга Владимировна
  15. Махмудова Валерия Андреевна
  16. Мергенов Санджа Анджаевич
  17. Османян Владимир Аршалуйсович
  18. Солопов Дмитрий Андреевич
  19. Сысоев Вячеслав Владимирович

1.8-2, Наталья Николаевна Ячменёва

  1. Зинин Александр
  2. Погорелов Александр Александрович
  3. Погорелова Нина Александровна
  4. Поповская Влада Сергеевна
  5. Соломкина Екатерина Алексеевна
  6. Темерев Георгий Викторович
  7. Тен Егор Григорьевич
  8. Шарыпова Вера Алексеевна
  9. Швырев Артём Николаевич
  10. Якубовский Илья Ярославич

1.9-1, Артём Михайлович Пеленицын

  1. Бедросов Аркадий Владимирович
  2. Белова Анастасия Михайловна (с.)
  3. Вегиев Асхаб Харонович
  4. Володин Дмитрий Александрович
  5. Денисенко Алексей Васильевич
  6. Карякин Вадим Вадимович
  7. Кузнецова Анастасия Владимировна
  8. Кулиев Эдуард Сергеевич
  9. Кулишова Александра Андреевна
  10. Луговая Маргарита Викторовна
  11. Марченко Андрей Михайлович
  12. Моздоров Николай Алексеевич
  13. Палий Иоланта Григорьевна
  14. Пацеев Андрей Константинович
  15. Пишков Юрий Вячеславович
  16. Попкова Дарья Олеговна

1.9-2, Павел Сергеевич Углич

  1. Рахуба Алексей Михайлович
  2. Романовский Андрей Андреевич
  3. Руднев Александр Сергеевич
  4. Смирнов Олег Сергеевич
  5. Суроедов Алексей Александрович
  6. Тактаров Евгений Алексеевич
  7. Татарова Анастасия Дмитриевна
  8. Ушаков Игорь Александрович
  9. Чижиков Дмитрий Александрович
  10. Шецер Игорь Олегович
  11. Шкуро Татьяна Александровна
  12. Ярошенко Даниил Геннадьевич

#3

Обращаю внимание студентов 1.9, что распределение по подгруппам немного изменилось на границе подгрупп в связи с перестановками в расписании.


#4

Можно ли в бонусном задании использовать условный оператор?


#5

Нельзя использовать ни условный оператор, ни циклы. Разве что в заданиях #5, 7 для красивого вывода ответа, но не более того.


#6

Как раз это и интересовало. Спасибо.


#7

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

Заодно обращаю внимание всех, что уже есть второе ДЗ и два теста на следующую неделю.


#8

Теперь о грустном. К счастью, не так много. Пламенный привет студенткам Кардашьян и Махмудовой, которые зачем-то сдали две копии домашней. Также несколько мест выглядят подозрительно похожими у студентов Зотова и Кумаритова.


#9

Прошу прощения, учту.


#10

Артём Михайлович, в тесте №2 не работает ссылка, по которой можно посмотреть информацию о форматном выводе. Обновите её, пожалуйста. Кроме того, подскажите, что значит “вывод числа в экспоненциальном формате”?


#11

Ссылку на статью про форматный вывод я поправил, спасибо. В этой статье вы найдёте ссылку на страницу MSDN, в ней поищите (модно Ctrl+F) слово «экспоненциального», это ответит на ваш вопрос (я думаю).


#12

В тесте по условным операторам в 6м задании творится это (1, 2)


#13

Да, спасибо за замечание, исправил как смог.


#14

Ну вот: никто не караулит появление домашнего задания. По ошибке этого оно стало доступно несколько позже назначенного.


#15

В связи с началом темы 2 обновлены требования к оформлению лабораторных работ: новые два раздела расположены сверху страницы и особо отмечены.


#16

На странице курса опубликован методический материал к этой неделе: Обработка последовательностей чисел. Просьба ознакомиться до первого занятия.


#18

В 4-ом задании домашней работы, где надо найти первый из номеров k, для которых выполняется заданное условие, я обнаружил пару вещей. Во-первых, элементы последовательности стремятся к числу 1.75. А во-вторых, при достаточно малых eps (где-то с 1e-14), элементы последовательности выводятся у меня как 1.75. Хотя при уменьшении eps уменьшается и расстояние между соседними элементами последовательности. Тогда я подумал, что WritelnFormat просто “обрезает” число и не выводит его полностью. Я решил проверить, указав в форматном выводе количество цифр после запятой вручную. У меня не получилось =( Вплоть до :f99 выводится просто 1.75(0), а при :f100 вообще выводит f102 вместо числа. НО! Если выводить в экспоненциальном виде, то уже при :e18 после многочисленных нулей появляются искомые циферки (вот так 1.750000000000001600e+000). С чем это связано? Ведь уже при :f18 я по идее должен был увидеть то же самое. И что такое f102?

WritelnFormat('Ak-1 = {0}, Ak = {1}', a1, a2);

eps =  1e-14
Номер k = 32
Ak-1 = 1.75, Ak = 1.75
|Ak - Ak-1| = 4.88498130835069E-15

eps = 1e-15
Номер k = 34
Ak-1 = 1.75, Ak = 1.75
|Ak - Ak-1| = 6.66133814775094E-16
// Тут видно, что элементы не меняются, а расстояние между ними - да.

WritelnFormat('Ak-1 = {0}, Ak = {1:f20}', a1, a2);
Ak-1 = 1.75, Ak = 1.75000000000000000000

WritelnFormat('Ak-1 = {0}, Ak = {1:e18}', a1, a2);
Ak-1 = 1.75, Ak = 1.750000000000001600e+000

WritelnFormat('Ak-1 = {0}, Ak = {1:f100}', a1, a2);
Ak-1 = 1.75, Ak = f102

#19

Это совершенно нормально, writeln тут не при чём.

Числа двойной точности с плавающей запятой обеспечивают точность в 15-17 десятичных цифр

Википедия: Число двойной точности


#20

Но почему в экспоненциальном виде и в дробном числа отличаются?


#21

Это сложный вопрос, тут уже надо с форматами writeln разбираться, наверное. Ну и кроме того, тут (без программы) не совсем понятно, что именно вы выводите.