@ALaLaLh

Как сделать что бы калькулятор был цепным? Как вписать в код стеки? Как вывести последнее простое число?

нужно что бы была возможность цепных действий

т.е

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
  • Вопрос задан
  • 62 просмотра
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы