7. Приведите примеры ситуаций, в которых осуществляется обра ботка информации, ведущая к: а) получению новой информации;
б) изменению формы представления существующей информации
8. Боря, Витя, Гриша и Егор встретились на Всероссийской олим- пиаде по информатике. Ребята приехали из разных городов: Мос. квы, Омска, Санкт-Петербурга и Кирова. Известно, что Боря жил в одной комнате с мальчиком из Кирова и ни один из этих двух мальчиков никогда не был ни в Москве, ни в бурге. Гриша жил в одной комнате с мальчиком из Москвы, а ве- черами к ним заходил приятель из Кирова. Егор и мальчик из Москвы увлекались игрой в шахматы. Кто из ребят откуда приехал?
11. Вы отправляете товарищу SMS-сообщение с домашним задани- ем по математике. Рассмотрите эту ситуацию с информацион- ной точки зрения, указав источник информации, кодирующее устройство, канал связи, декодирующее устройство и приемник информации.
Длина стороны может быть определена как расстояние между соответствующими сторонами треугольника:
// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
type
Point=record
x,y:real
end;
procedure GetPoint(c:char;var M:Point);
begin
Write('Введите координаты точки ',c,': ');
Read(M.x,M.y)
end;
function Dist(a,b:Point):=sqrt(sqr(b.x-a.x)+sqr(b.y-a.y));
begin
var A,B,C:Point;
GetPoint('A',A); GetPoint('B',B); GetPoint('C',C);
var ab:=Dist(A,B);
var bc:=Dist(B,C);
var ac:=Dist(A,C);
if (ab<bc+ac) and (bc<ab+ac) and (ac<ab+bc) then
Writeln('Треугольник существует')
else Writeln('Треугольник не существует')
end.
Тестовое решение:
Введите координаты точки A: -6.9 -5.3
Введите координаты точки B: 0 11.4
Введите координаты точки C: 9 3
Треугольник существует
--- Python 3.8.3 ---
#1 - file mdir.py
import os
import sys
import difflib
__all__ = ['CreateEmptyDir', 'RmDir']
__here__ = os.path.dirname(os.path.realpath(__file__))
#Функция, создающая папки
def CreateEmptyDir(count, path = __here__):
try:
for i in range(count):
rpath = path + f'\\dir_{i}'
os.mkdir(rpath)
except OSError:
print(f'Failed to create directory {path}')
#Функция, удаляющая папки
def RmDir(mask, path = __here__):
try:
for folder in os.listdir(path):
s = difflib.SequenceMatcher(None, mask, folder)
if s.ratio() > 0.8:
f = path + '\\' + folder
if os.path.isdir(f):
os.rmdir(f)
except OSError as e:
print(f'Failed to remove directory {f}\n{e}')
#Вызов функций из модуля
def main():
CreateEmptyDir(10)
next = input()
RmDir('dir_')
if __name__ == "__main__":
main()
#2 - file randchoise.py
import random
__all__ = ['RandChoise']
def RandChoise(lst):
if len(lst) == 0: return None
return random.choice(lst)
def main():
data = [1,2,3,4]
print(RandChoise(data))
if __name__ == "__main__":
main()
#3 main.py
from mdir import *
from randchoise import *
import time
def main():
CreateEmptyDir(10)
time.sleep(3) #Что бы успели прогрузиться созданные папки
RmDir('dir_')
print(RandChoise([1,2,3,4,5,6,7,8,9,2,1,32,31,2540]))
if __name__ == "__main__":
main()