Python — Клёвый код https://coolcode.ru Скриптописание и кодинг Tue, 08 Nov 2016 10:05:37 +0000 ru-RU hourly 1 https://wordpress.org/?v=5.8.13 https://coolcode.ru/wp-content/uploads/2015/10/YO1-150x150.png Python — Клёвый код https://coolcode.ru 32 32 Решаем задачи Абрамян на Python 3. Array23 https://coolcode.ru/reshaem-zadachi-abramyan-na-python-3-array23/ https://coolcode.ru/reshaem-zadachi-abramyan-na-python-3-array23/#comments Tue, 08 Nov 2016 10:05:37 +0000 http://coolcode.ru/?p=10829

Array23. Дан массив размера $$N$$ и целые числа $$K$$ и $$L$$ ($$1 \lt K \leq L \leq N$$). Найти среднее арифметическое всех элементов массива, кроме элементов с номерами от $$K$$ до $$L$$ включительно.

Решение:

a=[]

N = int(input("N:"))

for i in range(N):
    a.append(int(input("A: ")))

K = int(input("K:"))
L = int(input("L:"))

sum=0
for i in range(0,K-1):
    sum+=a[i]
for i in range(L,N):
    sum+=a[i]


print( sum)

Другие задачи из раздела Array можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-python-3-array23/feed/ 7
Решаем задачи Абрамян на Phyton 3. Array27 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array27/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array27/#respond Mon, 07 Nov 2016 03:36:26 +0000 http://coolcode.ru/?p=10690

Array27. Дан массив ненулевых целых чисел размера $$N$$. Проверить, чередуются ли в нем положительные и отрицательные числа. Если чередуются, то вывести $$0$$, если нет, то вывести порядковый номер первого элемента, нарушающего закономерность.

Решение:

a=[]

N = int(input("N:"))
for i in range(N):
    a.append(int(input(" : ")))

Temp=(a[0]>0)
i = 1

while ((i<N) and (Temp!=(a[i]>0))):
    Temp=(a[i]>0)
    i+=1

if i==N:
    print('0')
else:
    print(i+1)

Другие задачи из раздела Array можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array27/feed/ 0
Решаем задачи Абрамян на Phyton 3. Array13 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array13/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array13/#respond Tue, 01 Nov 2016 10:32:18 +0000 http://coolcode.ru/?p=10576

Array13. Дан массив $$A$$ размера $$N$$ ($$N$$ — нечетное число). Вывести его элементы с нечетными номерами в порядке убывания номеров: $$A_N, A_{N-2}, A_{N-4}, …, A_1.$$ Условный оператор не использовать.

Решение:

a=[]

N = int(input("N:"))
for i in range(N):
    a.append(int(input(" : ")))

i = N-1
while (i>=1):
    print(i+1,' : ',a[i])
    i -= 2

Другие задачи из раздела Array можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array13/feed/ 0
Решаем задачи Абрамян на Phyton 3. Array3 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array3/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array3/#respond Tue, 01 Nov 2016 10:25:19 +0000 http://coolcode.ru/?p=10574

Array3. Дано целое число $$N (\gt 1)$$, а также первый член $$A$$ и разность $$D$$ арифметической прогрессии. Сформировать и вывести массив размера $$N$$, содержащий $$N$$ первых членов данной прогрессии:

$$A, A + D, A + 2*D, A + 3*D, …$$ .

Решение:

N = int(input("N:"))
a=[]
a.append(int(input("A1:")))
D = int(input("D:"))

for i in range(1,N-1):
    a.append(a[0]+(i)*D)

for i in range(N-1):
    print(a[i], end=' ')

Другие задачи из раздела Array можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array3/feed/ 0
Решаем задачи Абрамян на Phyton 3. Recur17 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-recur17/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-recur17/#respond Tue, 01 Nov 2016 09:49:53 +0000 http://coolcode.ru/?p=10568

Recur17. Вывести значение целочисленного выражения, заданного в виде строки $$S$$. Выражение определяется следующим образом:
<выражение>::= <цифра>| (<выражение><знак><выражение>)
<знак>::= + | — | *

Решение:

def LenExpression(S):
    if len(S)<=0:
        return 0
    else:
        if S[len(S)-1] == ')':
            S=S[:-1]
            lenS = LenExpression(S)
            S = S[:-lenS+1]
            return lenS+LenExpression(S)+1
        if S[len(S)-1] == '(':
            return 1
        else:
            S = S[:-1]
            return 1+LenExpression(S)

def Expression(S):
    Res=0

    if len(S)>0:
        if S[len(S)-1]==')':
            S = S[:-1]
            lenS = LenExpression(S)
            Res = Expression(S)
            S = S[:-lenS+1]
        elif S[len(S)-1] == '0' or S[len(S)-1] == '1' or S[len(S)-1] == '2' or S[len(S)-1] == '3' or S[len(S)-1] == '4' or S[len(S)-1] == '5' or S[len(S)-1] == '6' or S[len(S)-1] == '8' or S[len(S)-1] == '9':
            Res = (ord(S[len(S)-1])-48)
            S = S[:-1]
    if len(S)>0:
        if S[len(S)-1] == '-':
            S = S[:-1]
            return Expression(S)-Res
        if S[len(S)-1] == '+':
            S = S[:-1]
            return Expression(S)+Res
        if S[len(S)-1] == '*':
            S = S[:-1]
            return Expression(S)*Res
        if S[len(S)-1] == '(':
            return Res
        else:
            return Res

    else:
        print('!!error!!')


S= input("S:")
S = '('+S+')'
print('Exp: ',Expression(S))

Другие задачи из раздела Recur можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-recur17/feed/ 0
Решаем задачи Абрамян на Phyton 3. Recur7 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-recur7/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-recur7/#respond Tue, 01 Nov 2016 08:53:11 +0000 http://coolcode.ru/?p=10564

Recur7. Описать рекурсивную функцию CombiN_2($$N$$, $$K$$) целого типа, находящую $$C(N, K)$$- число сочетаний из $$N$$ элементов по $$K$$ — с помощью рекуррентного соотношения: $$C(N, 0)=C(N, N)=1$$, $$C(N, K)=C(N — 1, K)+C(N — 1, K — 1)$$ при $$0<K<N$$. Параметры функции — целые числа; $$N>0$$, $$0 \le K \le N$$. Считать, что параметр $$N$$ не превосходит $$20$$. Для уменьшения количества рекурсивных вызовов по сравнению с функцией CombiN_1 (см. задание Recur6) описать вспомогательный двумерный массив для хранения уже вычисленных чисел $$C(N, K)$$и обращаться к нему при выполнении функции CombiN_2. С помощью функции CombiN_2 найти числа $$C(N, K)$$для данного значения $$N$$ и пяти различных значений $$K$$.

Решение:

Memory = []

def CombiN_2(N,K):
    global Memory
    CombiN_2_1 = 0
    CombiN_2_2 = 0
    if (K==0) or (K==N):
        temp=1
    else:
        if Memory[N-1][K]>0:
            CombiN_2_1 = Memory[N-1][K]
        else:
            CombiN_2_1 = CombiN_2(N-1,K)

        if Memory[N-1][K-1]>0:
            CombiN_2_2 = Memory[N-1][K-1]
        else:
            CombiN_2_2 = CombiN_2(N-1,K-1)

        temp = CombiN_2_1+CombiN_2_2

    Memory[N][K]=temp
    return temp


for i in range(20):
    Memory.append([])
    for i2 in range(20):
        Memory[i].append(0)

N = int(input('N : '))

for i in range (5):
    K = int(input('K : '))
    print(CombiN_2(N,K))

Другие задачи из раздела Recur можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-recur7/feed/ 0
Решаем задачи Абрамян на Phyton 3. Array17 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array17/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array17/#respond Tue, 01 Nov 2016 06:59:07 +0000 http://coolcode.ru/?p=10558

Array17. Дан массив $$A$$ размера $$N$$. Вывести его элементы в следующем порядке: $$A_1, A_2, A_N, A_{N-1}, A_3, A_4, A_{N-2}, A_{N-3}, …$$ .

Решение:

import math
a= []

N = int(input('N: '))
print(N//2)
for i in range(0, N):
    a.append(int(input(' : ')))
i=1

while(i<=(N//2)+1):
    print(a[i-1], end = ' ')
    if i<=N//2:
        print(a[i], end = ' ')
    if (N-i)>(N//2):
        print(a[N - i], end = ' ')
    if (N-i-1)>(N//2):
        print(a[N - i - 1])
    i+=2

Другие задачи из раздела Array можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array17/feed/ 0
Решаем задачи Абрамян на Phyton 3. Array7 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array7/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array7/#respond Tue, 01 Nov 2016 06:08:53 +0000 http://coolcode.ru/?p=10550

Array7. Дан массив размера $$N$$. Вывести его элементы в обратном порядке.

Решение:

a= []

N = int(input('N: '))
for i in range(0, N):
    a.append(int(input(' : ')))

for i in range(len(a)-1,-1,-1):
    print(a[i])

Другие задачи из раздела Array можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-array7/feed/ 0
Решаем задачи Абрамян на Phyton 3. Proc 28 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-proc-28/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-proc-28/#respond Wed, 26 Oct 2016 05:09:30 +0000 http://coolcode.ru/?p=10416

Proc28. Описать функцию IsPrime($$N$$) логического типа, возвращающую True, если целый параметр $$N$$ ($$> 1$$) является простым числом, и False в противном случае (число, большее 1, называется простым, если оно не имеет положительных делителей, кроме 1 и самого себя). Дан набор из 10 целых чисел, больших 1. С помощью функции IsPrime найти количество простых чисел в данном наборе.

Решение:

import math

def IsPrime(N):
    i = 1
    Temp = True
    while (i<N/2):
        i += 1
        if math.fmod(N,  i) == 0:
            I = N
            Temp = False
    return Temp

Res = 0
for i in range(0, 10):
    print('N :')
    N=int(input())
    if IsPrime(N):
        Res += 1
print(Res)

Другие задачи из раздела Proc можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-proc-28/feed/ 0
Решаем задачи Абрамян на Phyton 3. Proc 18 https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-proc-18/ https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-proc-18/#respond Wed, 26 Oct 2016 04:58:26 +0000 http://coolcode.ru/?p=10414

Proc18. Описать функцию CircleS($$R$$) вещественного типа, находящую площадь круга радиуса $$R$$ ($$R$$ — вещественное). С помощью этой функции найти площади трех кругов с данными радиусами. Площадь круга радиуса $$R$$ вычисляется по формуле $$S = \pi*R^2$$. В качестве значения $$\pi$$ использовать 3.14.

Решение:

def CircleS(R):
    return 3.14*R*R

print('Введите радиус первой окружности: ')
r1=float(input())
print('Площадь первой окружности равна: ')
print(CircleS(r1))

print('Введите радиус второй окружности: ')
r2=float(input())
print('Площадь второй окружности равна: ')
print(CircleS(r2))

print('Введите радиус третьей окружности: ')
r3=float(input())
print('Площадь третьей окружности равна: ')
print(CircleS(r3))

Другие задачи из раздела Proc можно посмотреть здесь.

]]>
https://coolcode.ru/reshaem-zadachi-abramyan-na-phyton-3-proc-18/feed/ 0