Средняя глубина Камского водохранилища - 6,5 м. Площадь Горьковского водохранилища - 1400 кв. км. Объем Рыбинского водохранилища - 25 куб. км. Напор Цимлянского водохранилища - 26 м. Площадь Братского водохранилища - 5300 кв. км. Средняя глубина Куйбышевского водохранилища - 10,4 м. Объем Цимлянского водохранилища - 24 куб. км. Площадь Рыбинского водохранилища - 4650 кв. км. Объем Братского водохранилища - 180 куб. км. Площадь Камского водохранилища - 1700 кв. км. Напор Куйбышевского водохранилища - 28 м. Средняя глубина Цимлянского водохранилища - 9,2 м. Напор Камского водохранилища - 21 м. Площадь Куйбышевского водохранилища - 5000 кв. км. Напор Рыбинского водохранилища - 25 м. Средняя глубина Братского водохранилища - 34 м. Объем Куйбышевского водохранилища - 52 куб. км. Напор Горьковского водохранилища - 18 м. Средняя глубина Рыбинского водохранилища - 5,5 м. Объем Камского водохранилища - 11 куб. км. Напор Братского водохранилища - 104 м. Площадь Цимлянского водохранилища - 2600 кв. км. Большие и маленькие
--- Python 3.8.3 ---
#Не удаляйте импорты
import typing
from typing import Callable
from typing import AnyStr
from typing import Any
from typing import Iterable
from typing import List
#DEFINING USER TYPES
Numeric = typing.TypeVar('Numeric', int, float, complex)
#ENDDEF
#Решение задания 1
def StringCount(RawString: AnyStr, Selector: Callable[[AnyStr], bool], splitter: AnyStr = None) -> int:
counter = 0
if splitter:
ToAnalyse = RawString.split(splitter)
else:
ToAnalyse = list(RawString)
for item in ToAnalyse:
if Selector(item): counter += 1
return counter
#Вс функция для решения задания 2. Возвращает считанные из файла данные
def LoadDataFromFile(fname:AnyStr, encoding:AnyStr):
with open(fname, 'r', encoding=encoding) as f:
rawData = f.read()
return rawData
def Product(data: Iterable[Numeric]):
#Перемножает все значения в переданной последовательности.
#Последовательность НЕ МОЖЕТ содержать какие либо элементы, кроме чисел
p = 1
for i in data: p *= i
return p
def Dump(fname: AnyStr, data: AnyStr, encoding: AnyStr):
with open(fname, 'w', encoding=encoding) as f:
f.write(str(data))
def Task1():
'''
Использует фукнцию StringCount(RawString: AnyStr, Selector: Callable[[AnyStr], bool], splitter: AnyStr = None)
При помещении в отдельный файл функции Task2, в этот же файл необходимо поместить фукнцию StringCount(), а так же выполнить следующие импорты:
import typing
from typing import Any
from typing import AnyStr
from typing import Callable
При помещении в отельный файл код из функции Task1() можно поместить в глобальную область.
'''
RawNum = input()
fives = StringCount(RawNum, lambda s: s == '5')
print(f'"5" count: {fives}')
def Task2():
'''
Использует функции:
LoadDataFromFile(fname:AnyStr, encoding:AnyStr)
Dump(fname: AnyStr, data: AnyStr, encoding: AnyStr)
При помещении функции Task2 в отдельный файл,
в этот же файл необходимо поместить функцию LoadDataFromFile(), Функцию Dump(),
а так же выполнить следующие импорты:
import typing
from typing import Any
from typing import AnyStr
from typing import Iterable
а так же сразу после импортов добавить следующую строку:
Numeric = typing.TypeVar('Numeric', int, float, complex)
при помещении в отдельный файл код из функции Task2() можно поместить в глобальную область.
'''
Numbers = [int(i) for i in LoadDataFromFile('input.txt', 'utf-8').split('\n')]
Dump('Output.txt', Product(Numbers), 'utf-8')
P.S Не советую что то менять, если вы плохо разбираетесь. Решение представляет собой цельную программу, которая выполняет оба задания сразу.
P.S 2 Код работает для интерпретатора Python 3.5 и выше
P.S 3 Код протестирован
P.S 4 Файл, в котором лежат входные данные для задачи 2, должен называться input.txt и лежать в одной директории с файлом программы
P.S 5 Если вы тупо скопируете код, Интерпретатор может начать ругаться. Это вызвано тем, что наш любимый сайт подменяет табуляции и подряд идущие пробелы каким то своим дурацким символом, который не может переварить интерпретатор
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
void main(void){
setlocale(LC_ALL, "rus");
int i,sum=0,n,r=0;
char date[255];
cout << "Введите двоичное число"<< endl;
cin >> date;
n = strlen(date);
int *arr = new int[n];
for (i = 0; i < n; i++){
arr[i] = (int)date[i] - (int)'0';
}
for (i = 0; i < n; i++){
cout << arr[i] << " ";
}
cout << " " << endl;
for (i = 0; i < n; i++){
r = r + arr[i]*pow(2, n - i-1);
}
cout << "Десятичное число равно" << r;
}