based on DigitalOcean guide
Create local project
local$ rails new appname -T -d postgresql
local$ rails g scaffold Story title:string body:text
local$ rails db:migrate
## Task 1 | |
# find closest border number in fib sequence | |
# near_fib_number(9) => 8 | |
# near_fib_number(12) => 13 | |
require 'benchmark' | |
def near_fib_number(num) | |
start_array = [0, 1] | |
while !(start_array[0] <= num && start_array[1] >= num) do |
# Source exports | |
if [ -f ~/.zsh_exports ]; then | |
source ~/.zsh_exports | |
fi | |
# Source aliases | |
if [ -f ~/.zsh_aliases ]; then | |
source ~/.zsh_aliases | |
fi |
brew tap homebrew/versions | |
# Error: homebrew/versions was deprecated. This tap is now empty as all its formulae were migrated. | |
# https://github.com/mrirecon/homebrew-bart/issues/1 | |
brew unlink v8 | |
brew link --force v8-315 | |
gem install therubyracer -v '0.12.2' -- --with-system-v8 |
sudo apt update | |
sudo apt install build-essential | |
wget https://nginx.org/download/nginx-1.17.4.tar.gz | |
tar -xzvf nginx-1.17.4.tar.gz | |
cd nginx-1.17.4 |
based on DigitalOcean guide
Create local project
local$ rails new appname -T -d postgresql
local$ rails g scaffold Story title:string body:text
local$ rails db:migrate
# 9) Дана строка. Необходимо проверить, является ли она палиндромом. | |
class PalindromeChecker | |
def palindrome_check | |
string = "Never a foot too far, even" | |
palindrome?(string) | |
end | |
def palindrome?(str) | |
str == str.reverse | |
end |
# 8) Дана строка в которой записаны слова через пробел. Необходимо посчитать | |
# количество слов. | |
def word_counter | |
string = "alskdfj asd;lfjk asdkfj;lasd flaskdj f as;dlfjk a;sd fkla sdf;" | |
string.split.size | |
end |
# 7) Дана строка в которой записаны слова через пробел. Необходимо упорядочить | |
# слова по количеству букв в каждом слове. | |
def sort_string_by_words_length | |
string = "alskdfj asd;lfjk asdkfj;lasd flaskdj f as;dlfjk a;sd fkla sdf;" | |
splitted = string.split | |
splitted.sort_by(&:length) | |
end |
# 6) Дан целочисленный массив. Упорядочить его по возрастанию. | |
def array_sort | |
victim_array = Array.new(15){rand(-100...100)} | |
victim_array.sort! | |
end |
# 4) Дан целочисленный массив. Осуществить циклический сдвиг элементов массива | |
# влево на одну позицию. | |
class ShakingArrayLeft | |
def initialize | |
@not_so_greatest_array = Array.new(7){rand(-100...100)} | |
end | |
def shake_2_left | |
primary_element = @not_so_greatest_array[0] | |
@not_so_greatest_array.each_with_index do |element, index| | |
if index + 1 < @not_so_greatest_array.length |