нужно что бы была возможность цепных действий
т.е
2
+
2
4
+
5
9
и тд, и работа со стеком (контейнер первый зашел - последний вышел), и что бы калькулятор мог выводить последнее простое число (и записывать его в стек)
Calculator has started
3
primes
10
7 // выводит последнее простое число, все числа пишет в стек
pop
7
pop
5
pop
Error
я не понимаю что и как и куда вписывать. Пожалуйста, помогите мне(
код:
print 'Type number: '
first_number = gets.strip.to_i
print 'Type operation: '
operation = gets.strip
if %w[+ - * / ** %].include? operation
print 'Type second number: '
second_number = gets.strip.to_i
puts first_number.send(operation, second_number)
elsif %w[sqrt sin cos tan exp].include? operation
puts Math.send(operation, first_number)
else
puts 'error'
if fibonacci(n)
n < 3
1
else
fibonacci(n - 1) + fibonacci(n - 2)
(1..16).each {|n| puts "#{fibonacci(n)}, "}
puts "..."
end
end
# Ячейка пам¤ти, не сбрасывается при рестарте калькул¤тора
memory = 0
while true
puts "Calculator has started"
print 'Type number: '
result = gets.strip.to_i
while true
print 'Type operation: '
operation = gets.strip
break if operation == ""
if operation == 'mw'
memory = result
elsif operation == 'mr'
result = memory
else
print 'Type number: '
second_number = gets.strip.to_i
end
if %w[+ - * / ** %].include? operation
print 'Type second number: '
second_number = gets.strip.to_i
puts first_number.send(operation, second_number)
elsif %w[sqrt sin cos tan exp].include? operation
puts Math.send(operation, first_number)
else
puts 'error'
end
end
print 'Result: '
puts result
end