Тіл алфавиті дегениміз не? Айналымы Идентификатор, тұрақты қызметі сөздер терминдері Қалай тусиндіреді? Өңдеудиң кіріктілігін ортасы деген не? Оны калай иске косуга болады? Бағдарлама деген не?
1. а) Для начала узнаем, какое количество килобайт мы можем передать за 1 секунду: 19200/1024/8 = 2,3 (Кбайт). Следовательно, если бы не было сжатия информации, то данный файл за одну секунду при данной скорости соединения было бы невозможно передать. Но сжатие есть, 2.6/2.3 < 4, следовательно, передача возможна.
б) Нет не всегда, так как скорость соединения это максимально возможная скорость передачи данных при этом соединении. Реальная скорость может быть меньше.
в) Можно указать минимальное время передачи этого файла: 4*1024*1024/4/19200, около 55 с (столько времени будет передаваться файл на указанной скорости с максимальной компрессией). Максимальное же время передачи оценить вообще говоря нельзя, так как в любой момент может произойти обрыв связи
2. Время = объем(бит) / скорость(бит/с)
переводим объем из килобайт в биты 1500кб= 1500*1024*8 бит
--- Python 3.8.3 ---
import typing
from typing import Callable
from typing import AnyStr
from typing import Any
from typing import Iterable
import re
import string
import random
def ClearString(RawString):
return re.sub(r' +', ' ', re.sub(rf'[{string.punctuation}]|\n', '', RawString))
def FillFile(fname:AnyStr, data:Iterable[Any], encoding:AnyStr):
with open(fname,'a',encoding=encoding) as f:
f.write(' '.join(map(str, data)))
def LoadDataFromFile(fname:AnyStr, encoding:AnyStr):
with open(fname, 'r', encoding=encoding) as f:
rawData = f.read()
return rawData
def StringCount(RawString: AnyStr, Selector: Callable[[AnyStr], bool], splitter: AnyStr) -> int:
counter = 0
ToAnalyse = RawString.split(splitter)
for item in ToAnalyse:
if Selector(item): counter += 1
return counter
def main():
#1 половина задания
RandomSeq = [random.randint(-99, 99) for _ in range(random.randint(0, 100))]
FillFile('temp.txt', RandomSeq, 'utf-8')
#2 половина задания
RawText = LoadDataFromFile('temp.txt', 'utf-8')
CleanText = ClearString(RawText)
def IsDouble(s):
temp = str(abs(int(s)))
return len(temp) == 2 and temp[0] == temp[-1]
DoubleNums = StringCount(CleanText, IsDouble, ' ')
print(DoubleNums)
if __name__ == "__main__":
main()
Объяснение:
1. а) Для начала узнаем, какое количество килобайт мы можем передать за 1 секунду: 19200/1024/8 = 2,3 (Кбайт). Следовательно, если бы не было сжатия информации, то данный файл за одну секунду при данной скорости соединения было бы невозможно передать. Но сжатие есть, 2.6/2.3 < 4, следовательно, передача возможна.
б) Нет не всегда, так как скорость соединения это максимально возможная скорость передачи данных при этом соединении. Реальная скорость может быть меньше.
в) Можно указать минимальное время передачи этого файла: 4*1024*1024/4/19200, около 55 с (столько времени будет передаваться файл на указанной скорости с максимальной компрессией). Максимальное же время передачи оценить вообще говоря нельзя, так как в любой момент может произойти обрыв связи
2. Время = объем(бит) / скорость(бит/с)
переводим объем из килобайт в биты 1500кб= 1500*1024*8 бит
считаем t= секунды