Структура информации 1. вычислите выражение, записанное в префиксной форме: * + 57-63 2. вычислите выражение, записанное в префиксной форме: * - +a2bc при а = 6, b = 4 ис= 2. 3. запишите выражение: c*(a+b) в постфиксной форме (без
Import java.util.*; import java.lang.*; import java.io.*; class MyLab { public static void main (String[] args) { int a; //первое число, от которого начнем int b; //второе число, до которого будем считать произведение int product; //произведение всех целых чисел Scanner in; //с этого объекта читаем ввод с клавиатуры in = new Scanner(System.in); System.out.println("Enter A: "); a = in.nextInt(); System.out.println("Enter B: "); b = in.nextInt(); if (a > b) //если число от которого начинаем больше чем до которого нужно считать - поменять их местами { int buf = a; //сохраняем значение a a = b; //присваиваем переменной a значение переменной b b = buf; //присваиваем переменной b значение сохраненной в buf переменной a } product = 1; //инициализируем 1, что бы получить корректное произведение (ни в коем случаи не 0м, если вы не понимаете почему именно 1, то вам нечего делать в программировании, без обид) for (int i = a; i <= b; ++i) //цикл, повторяем на промежутке от a до b с шагом в 1 { product *= i; //умнажаем текущее значение произведения всех целых чисел на текущее целое число } System.out.printf("Product of all integer numbers from A = %d, to B = %d, is = %d\n", a, b, product); } }
Пусть размер изображения X бит. , прям как шкАльные задачки начинаются) Тогда скорость передачи по каналу связи в город А будет: (X / 90) bit per sec (это битов в секунду)
Теперь разберемся с размером... ХА! Поняли? С размером...) Что такое ха? В смысле икс? Это кол-во пикселей по горизонтали * на кол-во пикселей по вертикали и * на размер памяти для кодировки 1 пикселя.
Заметка автора: Звездочка типа "*" - значит знак умножения. ***Конец заметки автора***
А изображение увеличелось в 2 раза, как мы знаем из школьного курса геометрии, если размеры фигуры растут линейно, то площадь квадратично, как-то так, короче закон Квадрата, ищите в интернете.
В нашем случаи это значит вот что: размер увеличели мы в 2 раза, значит площадь увеличится 2^2 то есть в 4 раза.
Следовательно размер изображения теперь будет 4X.
Ну и теперь пременим глубину кадрирования... Это кол-во памяти занимаемое 1 пикселем.
Вспоминаем формулу, что я объяснял ранее, значит размер нашей картинки равен 4 * (x * y * g), где x - ширина картинки, y - высота картинки, а g - глубина кодирования, она у нас уменьшилась в 1.5 раза, то есть новый размер картинки полностью будет выглядить вот так:
4 * (x * y * g / 1.5)
Скорость передачи второй картинки по второму каналу связи:
4 * (x * y * g / 1.5) / 10 bit res sec
Формула для изначального изображения будет выглядить вот так:
x * y * g
Теперь составим пропорцию:
x * y * g 4 * (x * y * g / 1.5) = ? 10
Через неё пытаемся найти примерное время передачи первой картинки по второму каналу связи, надеюсь тут всё понятно :) (Для непонятливых: скорость передачи второй картинки мы получаем делением её размера на время её передачи, скорость у нас константная, то есть не меняется, значит точно с такой же скоростью будет передана первая картинка по этому же каналу связи, но времени мы не знаем, по этому скорости прировняем, а неизвестное время будем сейчас искать)
Ищем по пропорции время, для эотго пременим правило прямоугольника или как оно там называется в школьной алгебре, это не важно:
(знак вопроса заменил на переменную t)
10 * (x * y * g) = (4 * (x * y * g / 1.5)) * t t = (4 * (x * y * g / 1.5)) / (10 * (x * y * g))
А теперь нам нужно сравнить время передачи между первым и вторым каналом, время первого напомню будет:
((x * y * g) / 90)
Что бы найти во сколько раз быстрее второй канал, нужно разделить большее время на меньшее:
(4 * (x * y * g / 1.5)) / (10 * (x * y * g)) / ((x * y * g) / 90)
Теперь упростим выражение:
пусть x * y * g = 1, то есть константа, которая ни на что не повлияет, ведь у нас относительная величина - пропускная канала. тогда получим: (4 * (1 / 1.5)) / (10 * 1) / (1 / 90) ((4 / 1.5)) / 10) / (1 / 90) (4/15) / (1/90) - вспоминаем школьный курс алгебры 4/15 * 90/1 - эквивалентное выражение 4/1 * 6/1 - сократили 90 на 15 4 * 6 = 24
ответ: в 24 раза быстрее
Постскриптум: Конечно можно было бы и не так подробно описывать, но надеюсь теперь понятно всё. Дерзайте и помните: Математика & Программирование — это круто! Только учитесь сами - универы, это параша)
(X / 90) bit per sec (это битов в секунду)
Теперь разберемся с размером... ХА! Поняли? С размером...)
Что такое ха? В смысле икс? Это кол-во пикселей по горизонтали * на кол-во пикселей по вертикали и * на размер памяти для кодировки 1 пикселя.
Заметка автора:
Звездочка типа "*" - значит знак умножения.
***Конец заметки автора***
А изображение увеличелось в 2 раза, как мы знаем из школьного курса геометрии, если размеры фигуры растут линейно, то площадь квадратично, как-то так, короче закон Квадрата, ищите в интернете.
В нашем случаи это значит вот что: размер увеличели мы в 2 раза, значит площадь увеличится 2^2 то есть в 4 раза.
Следовательно размер изображения теперь будет 4X.
Ну и теперь пременим глубину кадрирования... Это кол-во памяти занимаемое 1 пикселем.
Вспоминаем формулу, что я объяснял ранее, значит размер нашей картинки равен 4 * (x * y * g), где x - ширина картинки, y - высота картинки, а g - глубина кодирования, она у нас уменьшилась в 1.5 раза, то есть новый размер картинки полностью будет выглядить вот так:
4 * (x * y * g / 1.5)
Скорость передачи второй картинки по второму каналу связи:
4 * (x * y * g / 1.5) / 10 bit res sec
Формула для изначального изображения будет выглядить вот так:
x * y * g
Теперь составим пропорцию:
x * y * g 4 * (x * y * g / 1.5)
=
? 10
Через неё пытаемся найти примерное время передачи первой картинки по второму каналу связи, надеюсь тут всё понятно :)
(Для непонятливых: скорость передачи второй картинки мы получаем делением её размера на время её передачи, скорость у нас константная, то есть не меняется, значит точно с такой же скоростью будет передана первая картинка по этому же каналу связи, но времени мы не знаем, по этому скорости прировняем, а неизвестное время будем сейчас искать)
Ищем по пропорции время, для эотго пременим правило прямоугольника или как оно там называется в школьной алгебре, это не важно:
(знак вопроса заменил на переменную t)
10 * (x * y * g) = (4 * (x * y * g / 1.5)) * t
t = (4 * (x * y * g / 1.5)) / (10 * (x * y * g))
А теперь нам нужно сравнить время передачи между первым и вторым каналом, время первого напомню будет:
((x * y * g) / 90)
Что бы найти во сколько раз быстрее второй канал, нужно разделить большее время на меньшее:
(4 * (x * y * g / 1.5)) / (10 * (x * y * g)) / ((x * y * g) / 90)
Теперь упростим выражение:
пусть x * y * g = 1, то есть константа, которая ни на что не повлияет, ведь у нас относительная величина - пропускная канала.
тогда получим:
(4 * (1 / 1.5)) / (10 * 1) / (1 / 90)
((4 / 1.5)) / 10) / (1 / 90)
(4/15) / (1/90) - вспоминаем школьный курс алгебры
4/15 * 90/1 - эквивалентное выражение
4/1 * 6/1 - сократили 90 на 15
4 * 6 = 24
ответ: в 24 раза быстрее
Постскриптум:
Конечно можно было бы и не так подробно описывать, но надеюсь теперь понятно всё. Дерзайте и помните:
Математика & Программирование — это круто!
Только учитесь сами - универы, это параша)