НАДО РЕШИТЬ ЗАДАЧУ ДВОМЯ ФУНКЦИИ 1) ПАРАМЕТРМИ УКАЗАТЕЛЯМИ 2) ПАРАМЕТРМИ ССЫЛКАМИ . Найти размеры всех треугольников, площадь которых равна заданному натуральному числу и стороны которых также целыми числами. При этом варианты, которые получаются перестановкой сторон, считать разными. С++
def automate(n)
a = n / 1000
b = n / 100 % 10
c = n / 10 % 10
d = n % 10
t = [a*b, c*d]
return (t.max.to_s + t.min.to_s).to_i
end
def zadanie()
for i in 1000..9999
t = automate(i)
p [t, i] if t == 174
end
end
# Примеры применения
zadanie()
ответ - нет таких цифр
Аналитическое решение
174 можно разложить на 1 + 74 и 17 + 4
по правилу 2 это только 17 + 4
17 - произведение двух чисел, но 17 простое и произведение только 17 и 1. 17 не может быть одной цифрой
Значит вариант 174 невозможен при таких правилах
Триггеры предназначены для запоминания двоичной информации. Использование триггеров позволяет реализовывать устройства оперативной памяти (то есть памяти, информация в которой хранится только на время вычислений). Однако триггеры могут использоваться и для построения некоторых цифровых устройств с памятью, таких как счётчики, преобразователи последовательного кода в параллельный или цифровые линии задержки.
2.1 RS-триггер
Основным триггером, на котором базируются все остальные триггеры является RS-триггер.
RS-триггер имеет два логических входа:
R - установка 0 (от слова reset);S - установка 1 (от слова set).
RS-триггер имеет два выхода:
Q - прямой;Q - обратный (инверсный).
Состояние триггера определяется состоянием прямого выхода. Простейший RS-триггер состоит из двух логических элементов, охваченных перекрёстной положительной обратной связью (рисунок 2.1).
Рисунок 2.1 - Схема простейшего RS- триггера
Рассмотрим работу триггера:
Пусть R=0, S=1. Нижний логический элемент выполняет логическую функцию ИЛИ-НЕ, т.е. 1 на любом его входе приводит к тому, что на его выходе будет логический ноль Q=0. На выходе Q будет 1 (Q=1), т.к. на оба входа верхнего элемента поданы нули (один ноль - со входа R, другой - с выхода ). Триггер находится в единичном состоянии. Если теперь убрать сигнал установки (R=0, S=0), на выходе ситуация не изменится, т.к. несмотря на то, что на нижний вход нижнего логического элемента будет поступать 0, на его верхний вход поступает 1 с выхода верхнего логического элемента. Триггер будет находиться в единичном состоянии, пока на вход R не поступит сигнал сброса. Пусть теперь R=1, S=0. Тогда Q=0, а =1. Триггер переключился в "0". Если после этого убрать сигнал сброса (R=0, S=0), то все равно триггер не изменит своего состояния.
Для описания работы триггера используют таблицу состояний (переходов).
Обозначим:
Q(t) - состояние триггера до поступления управляющих сигналов (изменения на входах R и S);Q(t+1) - состояние триггера после изменения на входах R и S.
Таблица 2.1 - Таблица переходов RS триггера в базисе ИЛИ-НЕ
RSQ(t)Q(t+1)Пояснения0000Режим хранения информации R=S=000110101Режим установки единицы S=101111000Режим установки нуля R=11010110*R=S=1 запрещённая комбинация111*
RS-триггер можно построить и на элементах "И-НЕ" (рисунок 2.2).
Рисунок 2.2 - Схема RS-триггера, построенного на схемах "2И-НЕ"
Входы R и S инверсные (активный уровень "0"). Переход (переключение) этого триггера из одного состояния в другое происходит при установке на одном из входов "0". Комбинация R=S=0 является запрещённой.
Таблица 2.2 - Таблица переходов RS триггера в базисе "2И-НЕ"
RSQ(t)Q(t+1)Пояснения000*R=S=0 запрещённая комбинация001*0100Режим установки нуля R=001101001Режим установки единицы S=010111100Режим хранения информации R=S=11111