Сколько времени в минутах затратив школьник на дорогу из школы до стадиона если известна длина этого расстояния и средняя скорость движения школьников написать программу которая получает на вход значение расстояние от школы до стадиона и средняя скорость и печатает на экране количество минут на дорогу. написать программу в python.
#include <iostream>
#include <string>
using namespace std;
string dectobin(int num) // функция для перевода
{
string result; // строка для результата
for (; num!=0; num>>=1) // цикл со сдвигом вправо на 1 бит (работает быстрее чем деление на 2,
//но также делит)
result.insert(0, num&1 ? "1" : "0"); // вставка цифры в начало строки (1 если последний бит 1, 0 если 0)
return result; // возврат результата
}
int main(int argc, char *argv[])
{
// тут думаю понятно, ввод данных и вызов функции
int num;
cout<<"Enter number: ";
cin>>num;
cout<<dectobin(num);
return 0;
}
Объяснение:
Не очень понятно, что подается на вход.
Один сигнал - 1, а второй обозначен & - логическое И.
Я их на всякий случай обозначу & = A, 1 = B.
Логичекое НЕ я буду обозначать ~. Черточки над буквой у меня нет.
Прямоугольник с 1 - это сумматор, логическое ИЛИ.
Прямоугольник с & - это мультипликатор, логическое И.
Прямоугольник с кружочком - это инвертор, логическое НЕ.
F = (A + B) & (~A) + ~(A + B)
Таблица истинности:
A | B | F
0 | 0 | 1
0 | 1 | 1
1 | 0 | 0
1 | 1 | 0
Можно формулу сократить:
F = A & (~A) + B & (~A) + (~A) & (~B) = 0 + B & (~A) + (~B) & (~A) =
= (~A) & (B + ~B) = (~A) & 1 = ~A
И таблица истинности это подтверждает.