А Вы знали, что на YouTube существуют интерактивные ролики, в которых можно “поворачиваться” на 360 градусов? Для меня это открытие! Оказывается, чтобы снять такое видео, нужна специальная камера с линзами “рыбий глаз”…
Посмотрите, как это работает (обратите внимание на стрелочки в левом верхнем углу, которыми можно управлять изображением) https://www.youtube.com/watch?v=sPyAQQklc1s
Посмотрите, как это работает (обратите внимание на стрелочки в левом верхнем углу, которыми можно управлять изображением) https://www.youtube.com/watch?v=sPyAQQklc1s
YouTube
Lions 360° | National Geographic
Growing up is a struggle, especially if you’re a young male lion. In this VR film by National Geographic Explorer Martin Edström, you will come face to face with Gibson and his mother, as they struggle with their pride’s alpha male. Is leaving the safety…
🔥3👍2
Programming for Beginners – это серия курсов по программированию для начинающих на платформе stepik.org. Я помогу Вам сделать комфортный старт в изучении языков С++ или Java. Разберем основы языка и потренируем алгоритмическое мышление.
Постараюсь сделать все возможное, чтобы Вы полюбили программирование так, как люблю его я! 😍.
Переходите по ссылкам и выберите подходящий курс на Степике:
🔖 “Основы языка Java” (Бесплатный)
🔖 “Объектно-ориентированное программирование на Java”
🔖 “Основы программирования на С/С++. Полная версия” (Программа обучения из двух частей)
🔖 Мой канал на YouTube: https://www.youtube.com/@Programming_for_beginners
Для всех подписчиков скидка 10% по промокоду SECRET10.
Для студентов скидка на курс по ООП 25%. Пишите в личку и присылайте фото студенческого билета или другого документа (чтобы подтвердить, что Вы студент).
Важно! Для покупки курсов переходите именно по указанным ссылкам. Это даст мне возможность сэкономить на комиссии платформе. Благодарю за понимание!
Постараюсь сделать все возможное, чтобы Вы полюбили программирование так, как люблю его я! 😍.
Переходите по ссылкам и выберите подходящий курс на Степике:
🔖 “Основы языка Java” (Бесплатный)
🔖 “Объектно-ориентированное программирование на Java”
🔖 “Основы программирования на С/С++. Полная версия” (Программа обучения из двух частей)
🔖 Мой канал на YouTube: https://www.youtube.com/@Programming_for_beginners
Для всех подписчиков скидка 10% по промокоду SECRET10.
Для студентов скидка на курс по ООП 25%. Пишите в личку и присылайте фото студенческого билета или другого документа (чтобы подтвердить, что Вы студент).
Важно! Для покупки курсов переходите именно по указанным ссылкам. Это даст мне возможность сэкономить на комиссии платформе. Благодарю за понимание!
❤4
Дорогие друзья! С наступающим Новым Годом и Рождеством!
Желаю Вам в 2024:
• чтобы учеба приносила радость и удовольствие;
• чтобы трудности закаляли, а не приносили отчаяние;
• чтобы мечты сбывались;
• и рядом были родные и любимые!
А в качестве подарка от меня - промокод NEWYEAR на скидку 15% на все мои платные курсы:
Основы программирования на С/C++
Основы программирования на С/С++. Часть 2
Объектно-ориентированное программирование на Java
Промокод действует до 8 января 2024 года. Хочу напомнить, что Вы можете купить курс в подарок другу, коллеге или ребенку. И это хороший повод напомнить о своем добром отношении, даже если Вы далеко...
Желаю Вам в 2024:
• чтобы учеба приносила радость и удовольствие;
• чтобы трудности закаляли, а не приносили отчаяние;
• чтобы мечты сбывались;
• и рядом были родные и любимые!
А в качестве подарка от меня - промокод NEWYEAR на скидку 15% на все мои платные курсы:
Основы программирования на С/C++
Основы программирования на С/С++. Часть 2
Объектно-ориентированное программирование на Java
Промокод действует до 8 января 2024 года. Хочу напомнить, что Вы можете купить курс в подарок другу, коллеге или ребенку. И это хороший повод напомнить о своем добром отношении, даже если Вы далеко...
👍3
В преддверии праздника не хочется говорить о серьезном… Поэтому Вот Вам для настроения подборка анекдотов про программистов:
***
Жена посылает мужа—программиста в магазин:
— Купи батон колбасы. Да, и спроси, есть ли яйца. Если есть — возьми десяток.
Программист приходит в магазин:
— Батон колбасы, пожалуйста. Ага, спасибо. А яйца у вас в продаже есть?
— Есть.
— Тогда, пожалуйста, ещё девять батонов колбасы.
***
Программист решил занять у друга 1000 рублей, но для ровного счёта занял 1024.
***
Приходит программист к окулисту. Тот его усаживает напротив таблицы, берет указку:
- Читайте!
- "БНОПНЯ"... Доктор, у вас что-то не то с кодировкой!
***
1 монитор - обычный программист, 2 монитора - продвинутый программист, 3 монитора - системный программист, 4 монитора – охранник
***
Объявление: 55—летняя женщина, мать троих программистов, просит кого-нибудь не психованного научить ее интернету.
***
Жена посылает мужа—программиста в магазин:
— Купи батон колбасы. Да, и спроси, есть ли яйца. Если есть — возьми десяток.
Программист приходит в магазин:
— Батон колбасы, пожалуйста. Ага, спасибо. А яйца у вас в продаже есть?
— Есть.
— Тогда, пожалуйста, ещё девять батонов колбасы.
***
Программист решил занять у друга 1000 рублей, но для ровного счёта занял 1024.
***
Приходит программист к окулисту. Тот его усаживает напротив таблицы, берет указку:
- Читайте!
- "БНОПНЯ"... Доктор, у вас что-то не то с кодировкой!
***
1 монитор - обычный программист, 2 монитора - продвинутый программист, 3 монитора - системный программист, 4 монитора – охранник
***
Объявление: 55—летняя женщина, мать троих программистов, просит кого-нибудь не психованного научить ее интернету.
👍8
Хороший повод применить метод нисходящего проектирования…
1 шаг. Расписываем в общих чертах алгоритм, заменяя комментариями не детализированные фрагменты:
for (int i = 0; i < n; i++) { //i - индекс очередного анализируемого числа
bool find = false;
//проверить, есть ли в массиве ранее такое число
if (find) { //есть
//удалить из массива все такие числа далее после i
}//если нет - ничего не делаем, переходим к следующему
}
Здесь лучше было бы использовать не for, а while. Ведь ограничитель цикла n будет изменяться, а это плохо для цикла for. Обычно for используется тогда, когда число повторений цикла известно заранее. Но в условии было именно for, поэтому оставим так….
2 шаг. Детализируем первый комментарий:
//проверить, есть ли в массиве ранее такое число
for (int j = 0; j < i; j++) { //j - индекс очередного элемента перед i
if (arr[j] == arr[i]) {
find = true;
}
}
3 шаг. Детализируем второй комментарий:
//удалить из массива все такие числа далее после i
for (int k = i + 1; k < n; k++) { //k - индекс очередного элемента после i
if (arr[k] == arr[i]) {//число найдено
//удаляем k-й элемент из массива
k--; //чтобы остаться на месте, когда k будет увеличиваться
n--; //число элементов стало меньше
}
}
4 шаг. Детализируем удаление k-го элемента:
//удаляем k-й элемент из массива
for (int m = k + 1; m < n; m++) {//m - индекс элемента после удаляемого
arr[m - 1] = arr[m]; //следующий подвигаем на место предыдущего
}
5 шаг. Собираем все вместе и – вуаля:
for (int i = 0; i < n; i++) { //i - индекс очередного анализируемого числа
bool find = false;
//проверить, есть ли в массиве ранее такое число
for (int j = 0; j < i; j++) { //j - индекс очередного элемента перед i
if (arr[j] == arr[i]) {
find = true;
}
}
if (find) { //есть
//удалить из массива все такие числа далее после i
for (int k = i + 1; k < n; k++) { //k - индекс элемента после i
if (arr[k] == arr[i]) {//число найдено
//удаляем k-й элемент из массива
for (int m = k + 1; m < n; m++) {//m - после удаляемого
arr[m - 1] = arr[m]; //след. на место предыдущего
}
k--; //чтобы отаться на месте, когда k будет увеличиваться
n--; //число элементов стало меньше
}
}
}//если нет - ничего не делаем, переходим к следующему
}
1 шаг. Расписываем в общих чертах алгоритм, заменяя комментариями не детализированные фрагменты:
for (int i = 0; i < n; i++) { //i - индекс очередного анализируемого числа
bool find = false;
//проверить, есть ли в массиве ранее такое число
if (find) { //есть
//удалить из массива все такие числа далее после i
}//если нет - ничего не делаем, переходим к следующему
}
Здесь лучше было бы использовать не for, а while. Ведь ограничитель цикла n будет изменяться, а это плохо для цикла for. Обычно for используется тогда, когда число повторений цикла известно заранее. Но в условии было именно for, поэтому оставим так….
2 шаг. Детализируем первый комментарий:
//проверить, есть ли в массиве ранее такое число
for (int j = 0; j < i; j++) { //j - индекс очередного элемента перед i
if (arr[j] == arr[i]) {
find = true;
}
}
3 шаг. Детализируем второй комментарий:
//удалить из массива все такие числа далее после i
for (int k = i + 1; k < n; k++) { //k - индекс очередного элемента после i
if (arr[k] == arr[i]) {//число найдено
//удаляем k-й элемент из массива
k--; //чтобы остаться на месте, когда k будет увеличиваться
n--; //число элементов стало меньше
}
}
4 шаг. Детализируем удаление k-го элемента:
//удаляем k-й элемент из массива
for (int m = k + 1; m < n; m++) {//m - индекс элемента после удаляемого
arr[m - 1] = arr[m]; //следующий подвигаем на место предыдущего
}
5 шаг. Собираем все вместе и – вуаля:
for (int i = 0; i < n; i++) { //i - индекс очередного анализируемого числа
bool find = false;
//проверить, есть ли в массиве ранее такое число
for (int j = 0; j < i; j++) { //j - индекс очередного элемента перед i
if (arr[j] == arr[i]) {
find = true;
}
}
if (find) { //есть
//удалить из массива все такие числа далее после i
for (int k = i + 1; k < n; k++) { //k - индекс элемента после i
if (arr[k] == arr[i]) {//число найдено
//удаляем k-й элемент из массива
for (int m = k + 1; m < n; m++) {//m - после удаляемого
arr[m - 1] = arr[m]; //след. на место предыдущего
}
k--; //чтобы отаться на месте, когда k будет увеличиваться
n--; //число элементов стало меньше
}
}
}//если нет - ничего не делаем, переходим к следующему
}
Пока праздники, балуюсь нейросетями... Пытаюсь создать логотип будущего курса "Java для продолжающих". Ну, Вы знаете - моя фишка - совы. И вот пока что получается... Как Вам? Кстати, одна из них создана по моему фото. Угадаете, какая?
🔥7
Мы с Вами привыкли пользоваться десятичной системой счисления.
В ней десять цифр от 0 до 9. Но “вес” цифры зависит от ее позиции в числе:
235 – это 2 сотни, 3 десятка и 5 единиц.
Количество цифр, которое можно использовать в позиционной системе счисления, называется “основанием”.
Позиции цифр в числе можно мысленно пронумеровать справа налево, начиная с 0. Т.е. крайняя правая позиция имеет номер 0, левее ее – номер 1, еще левее – номер 2, и т.д.
Значение числа получается как сумма произведений цифры на основание системы счисления в степени «номер позиции».
В двоичной системе счисления две цифры: 0 и 1, а основание = 2.
В восьмеричной системе счисления восемь цифр от 0 до 7, а основание = 8.
В шестнадцатеричной системе счисления используются цифры от 0 до 9 и буквы от A до F (т.е. A ->10, B ->11, и т.д. F->15). Основание = 16.
Примеры перевода чисел в десятичную систему счисления показаны на рисунке.
Потренируйтесь сами, переведите в десятичную систему счисления из двоичной:
111 и 10111, из шестнадцатеричной: 27A и 777, из восьмеричной: 33 и 106. Ответы напишите в комментариях…
В ней десять цифр от 0 до 9. Но “вес” цифры зависит от ее позиции в числе:
235 – это 2 сотни, 3 десятка и 5 единиц.
Количество цифр, которое можно использовать в позиционной системе счисления, называется “основанием”.
Позиции цифр в числе можно мысленно пронумеровать справа налево, начиная с 0. Т.е. крайняя правая позиция имеет номер 0, левее ее – номер 1, еще левее – номер 2, и т.д.
Значение числа получается как сумма произведений цифры на основание системы счисления в степени «номер позиции».
В двоичной системе счисления две цифры: 0 и 1, а основание = 2.
В восьмеричной системе счисления восемь цифр от 0 до 7, а основание = 8.
В шестнадцатеричной системе счисления используются цифры от 0 до 9 и буквы от A до F (т.е. A ->10, B ->11, и т.д. F->15). Основание = 16.
Примеры перевода чисел в десятичную систему счисления показаны на рисунке.
Потренируйтесь сами, переведите в десятичную систему счисления из двоичной:
111 и 10111, из шестнадцатеричной: 27A и 777, из восьмеричной: 33 и 106. Ответы напишите в комментариях…
Такой перевод легко сделать, выполняя целочисленное деление на основание другой системы счисления. Если переводим в двоичную систему – делим на 2. В шестнадцатеричную - делим на 16!
Полученное частное опять делим на основание системы счисления, и так до тех пор, пока не получим 0.
После этого все остатки выпишем в обратном порядке:
393 : 16 = 24 (ост 9) 24 : 16 = 1 (ост 8) 1 : 16 = 0 (ост 1) Выписываем остатки в обратном порядке:
393(десятичное) = 189 (шестнадцатеричное)
А теперь потренируйтесь и переведите число 751 из десятичной в двоичную, восьмеричную и шестнадцатеричную системы счисления!
Полученное частное опять делим на основание системы счисления, и так до тех пор, пока не получим 0.
После этого все остатки выпишем в обратном порядке:
393 : 16 = 24 (ост 9) 24 : 16 = 1 (ост 8) 1 : 16 = 0 (ост 1) Выписываем остатки в обратном порядке:
393(десятичное) = 189 (шестнадцатеричное)
А теперь потренируйтесь и переведите число 751 из десятичной в двоичную, восьмеричную и шестнадцатеричную системы счисления!
👍2
Я всегда говорила о том, что хотеть быть программистом нужно не ради денег... Это занятие должно сильно нравиться, иначе не преуспеть. Но все же, все же... Эта профессия дает многие возможности, которые в других сферах достичь гораздо сложнее! Позаботиться о детях, родителях, любимых - это ли не достойная цель? Идите к ней! И когда совсем лень и напала прокрастинация - пусть эта мысль Вам поможет...
❤8
Осенью на Степике проводили опрос учеников о их целях. И оказалось, что 13,6% людей учатся потому, что им нравится сам процесс обучения… Я сначала подумала: “Ну не может быть! “ Все-таки это слишком большой процент учеников, а Степик не использует ни геймификацию, ни edutainment (вот Вам новое слово!)
Но потом поймала себя на мысли – а я ведь тоже получаю удовольствие от учебы! И главный фактор этого удовольствия – возможность почувствовать победу… Когда задача, наконец, решилась! Когда то, что было темно и запутанно, стало ясным и простым!
И дело тут не в забавных персонажах, как в JavaRush. И не в игровом контенте, как в обучалках для маленьких детей. Тут главное – “не спугнуть” естественный интерес. А спугнуть его ой как легко: слишком сложная задача, слишком занудный текст, слишком длинное видео… Но и легкие задачи тоже не вариант – скучно долбить одно и то же, как дятел!
Но потом поймала себя на мысли – а я ведь тоже получаю удовольствие от учебы! И главный фактор этого удовольствия – возможность почувствовать победу… Когда задача, наконец, решилась! Когда то, что было темно и запутанно, стало ясным и простым!
И дело тут не в забавных персонажах, как в JavaRush. И не в игровом контенте, как в обучалках для маленьких детей. Тут главное – “не спугнуть” естественный интерес. А спугнуть его ой как легко: слишком сложная задача, слишком занудный текст, слишком длинное видео… Но и легкие задачи тоже не вариант – скучно долбить одно и то же, как дятел!
👍4