От продавца до Big Data Scientist #2

Прошлый пост – От продавца до Big Data Scientist #1


Итак, я начал проходить базовый курс по Пайтону на сайте степик. Курс №67, вроде. Мне всё нравится =D Хочется стравнить его с практикумом, но наверное пока рановато. Я прошёл первую "неделю" за 4 дня. А всё потому, что достаточно много из пройденного было уже изучено в практикуме. Но! Были и новые для меня штуки. Например input(). Наконец-то меня научили как вводить собственные данные, а не только работать уже с исходными. Я написал свою первую программку, которая решает квадратные уравнения. Принимает на вход 3 аргумента и выдаёт два корня квадратного уравнения, или один =) Зачем мне это нужно было? Потому что, лет 20 назад мой старший брат написал похожую программку на бейсике и я был просто восхищён :) Теперь пришло время и мне написать похожую:


a = float(input('введите первый аргумент'))

b = float(input('введите второй аргумент'))

c = float(input('введите третий аргумент'))

d = b**2 - (4 * a * c)

x1 = (-b + d**0.5) / (2 *a)

x2 = (-b - d**0.5) / (2 *a)

if d < 0:

print('Уравнение корней не имеет')

elif d == 0:

print('Корень уравнения = {:.2f}'.format(x1))

else:

print('Первый корень уравнения = {:.2f}'.format(x1))

print('Второй корень уравнения = {:.2f}'.format(x2))


Вооот.. что ещё нового? Разбирался с логическими операциями: Это даётся не просто, но вроде начал понимать. Прорешал все задания по окончанию недели. Нравится, что потом можно посмотреть решения других учащихся. Все решения можно разделить на 3 типа: Человек такой же как ты и решает весьма примитивно; человек знает гораздо больше и выпендривается решая в одну строчку, но так, что ничего не понятно; человек знает намного больше и тролит показывая сверхпримитивное решение, написанное явно с помощью другого кода =) Спасибо им всем, и научишься и посмеёшься. Многие пишут, что думают над задачами часами, а то и днями. пока максимум пол часа приходилось обмазговывать задания. Но это видимо пока.

Так, начал слушать вторую неделю. Первая тема цикл While: И вроде задачи решались и всё понятно, пока не попалась задача, решением к которой был вот такой код:


a, b = int(input()), int(input())

s = 1

while s%a != 0 or s%b != 0:

s += 1

print (s)


Но в моём первоначальном решении строчка цикла выглядела иначе:

while s%a != 0 and s%b != 0:

что мной читалось как: продолжать цикл пока число s не делится на цело и на a и на b.

блять... пока писал, что нихрена не понимаю, почему там должен стоять оператор or понял.

Ладно проехали :)

Значит продолжаю своё обучение.

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

Всем спасибо :)