Произведение «Хочешь стать разработчиком?»
Тип: Произведение
Раздел: Эссе и статьи
Тематика: Псевдо научные статьи
Автор:
Читатели: 89 +1
Дата:
Предисловие:
Это небольшое пособие для тех, кто решал стать разработчиком (программистом, кодировщиком), но не очень уверен в своих силах и способностей, да и желаниях тоже. Ходят устойчивые слухи, что сегодня (июнь 2024) ситуация для программистов на рынке труда в России выгодна для искателей работы. Это, действительно, так. Об этом мне поведала Начальник Управления по борьбе с персоналом Вера Ивановна.

Хочешь стать разработчиком?

***** С чего начать *****

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

Проведите самодиагностику. Вам в школе нравилась математика? Вы любите играть в шахматы? Если ответили "да" на оба вопроса, скорее всего, программирование - это ваше дело.

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

Добро пожаловать в семью. У нас тут очень хорошо, комфортно. Наш девиз "Gens Una Sumas". Мы все помогаем друг другу как можем. Вы тоже вполне можете рассчитывать на такую помощь.


***** Javascript - начало всех начал *****

Давайте, начнем с языка Javascript (Джаваскрипт, Яваскрипт). Вообще, разных языков программирования очень много: Питон, PHP, C++, Java и т.д.

Javascript имеет то огромное преимущество перед другими языками программирования, что он уже есть в вашем телефоне, планшете, компьютере. Он встроен в любой браузер. Мы можете немедленно написать первую программу прямо сейчас.

Следуя старым добрым традициям, напишем первую программу в стиле вывода значения строки "Hello, World!"

Текст программы "Hello, World!"

console.log("Превед, Медвед!");

Скопируйте текст программы в буфер обмена, вставьте в консоль браузера (консоль открывается-закрывается по F12 или еще как-нибудь), нажмите "Enter".

Если вы ранее никогда не копипастели в консоль, то вполне возможно, консоль выдаст вам предупреждение.

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

Текст программы "дважды два четыре"
let x=2
let y=2
console.log("x*y=", x*y);

Обратите внимание на интересную особенность языка Javascript: конец строки можно заканчивать символом ;, но можно и опускать.

Если все вы сделали правильно, то в консоли должна отобразиться информация, как на скриншоте ниже.




Теперь можно перейти к чуть более сложным задачам.

***** Факториал натурального числа *****

Факториал, - это число, умноженное на "себя минус один", затем на "себя минус два", и так далее до 1. Факториал n обозначается как n!

Текст программы "Факториал натурального числа"
function fact_fun(n) {
  // делаем рекурсию только если n больше 1
  if (n > 1) {
    return n * fact_fun(n - 1);
  }
  else {
    return 1;
  };
//
}; // function fact_fun(n) {
//

В этой функции fact_fun интересно то, что она вызывает саму себя. Такой прием, когда функция вызывает сама себя, называется Рекурсия.

Чтобы стало совсем все понятно, попробуем визуализировать эту абстракцию с помощью картинки.




Посмотреть, как работает эта программа, и получить коды программ можно по ссылкам ниже.

Теперь переход к чуть более сложной программе.

***** Найти наибольшее число в массиве, являющееся полным квадратом *****

Описание работы алгоритма
*** 1 ***
Вводим несколько чисел из формы HTML, в нашем примере: 49, 64, 77, 25, 99.
Формируем массив:
temp_ar = [49,64,77,25,99];


*** 2 ***
Проходим циклом по этому массиву от нулевого элемента до последнего:
for (let x = 0; x < temp_ar.length; x++)
При проходе выполняем пункт 3.

*** 3 ***
Определяем, является ли текущий элемент полным квадратом с помощью специальной функции: is_int_cur_kv_fun(temp_ar[x])
Если текущий элемент является полным квадратом, выполняем пункт 4.

*** 4 ***
Проверяем, является ли текущий элемент большим по значению, чем max_int (изначально let max_int = null;)
if (temp_ar[x]>max_int)
Если больше, то фиксируем:
max_int = temp_ar[x];

*** 5 ***
Для данного набора чисел получаем результат 64, с такой расшифровкой:
1) 49 КВАДРАТ
2) 64 КВАДРАТ * Максимальный *
3) 77 НЕ квадрат
4) 25 КВАДРАТ
5) 99 НЕ квадрат


Посмотреть, как работает эта программа и получить коды программ можно по ссылке ниже.

А здесь ограничимся скриншотом с этой страницы.




***** Для заданного числа N найти количество способов его записи в виде суммы положительных чисел *****

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

Эта задача популярна среди математиков. Например, герой рассказа Константина Оборотова "Осторожно, женщина!" использует эту задачу для объяснения, что такое математика.

Описание работы алгоритма
*** 1 ***
Получаем число над которым будем работать из формы HTML:
let task1_1 = jQuery('#task1_1').val();

*** 2 ***
Допустим, ввели число 4.
Разбиваем это число на массив temp_ar(4)[1,1,1,1]
Размерность массива temp_ar соответствует числу task1_1, все варианты разложения которого мы ищем.

*** 3 ***
Делаем цикл с условием while(temp_ar[0] < task1_1)
Т.е. проходим по циклу до тех пор, пока нулевой элемент массива temp_ar[0] не станет равным числу над которым работаем.
При этом значение числа task1_1 остается неизменным, а над массивом temp_ar проводим манипуляции, описанные далее

*** 4 ***
Проходим по массиву temp_ar от нулевого элемента до предпоследнего. При этом к минимальному элементу в текущем состоянии массива прибавляем 1
temp_ar[min1index] += 1;

*** 5 ***
При этом мы удаляем следующий элемент:
temp_ar.splice(min1index+1);

*** 6 ***
Дополняем массив необходимым количеством единиц на конце:
temp_ar.push(1);
Делаем это так, чтобы в любом текущем варианте состояния массива temp_ar, сумма его элементов всегда должна быть равна task1_1 (т.е. 4 в нашем примере)

*** 7 ***
После завершения основного цикла, временный массив temp_ar будет содержать единственный элемент, равный по значению числу task1_1
temp_ar: [4]

Всего для данного тестового примера получаем 5 вариантов:
1) 1+1+1+1=4
2) 2+1+1=4
3) 2+2=4
4) 3+1=4
5) 4=4

Посмотреть, как работает эта программа, и получить коды программ можно по ссылке ниже.

А здесь ограничимся скриншотом с этой страницы.



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

Спасибо за внимание! Успехов в программировании, разработке и кодировании!


Послесловие:
Первоисточник:
https://wpvi.ru/pages/story/00056/

Ссылки

https://wpvi.ru/pages/soft/js/ - Маленькие локальные программы на JS, серия 1.

https://wpvi.ru/pages/story/00054/ - Рассказ Константина Оборотова "Осторожно, женщина!"

#############
### Конец ###
#############







Реклама
Обсуждение
Комментариев нет
Реклама