четвер, 4 березня 2021 р.

Дистанційна освіта з інформатики 16.03.2021 - 21.03.2021

Дистанційна освіта з інформатики в період березня  2021 року

16.03.2021 - 21.03.2021

Конспект уроку для учнів

Тема: Логічний тип даних, логічні вирази та змінні. Операції над ними. Створення масивів та операції над масивами.

Теоретична частина

















Вбудовані логічні типи в Python

У наступних розділах описуються стандартні типи, які вбудовані в інтерпретатор.

Основними вбудованими типами є цифри, послідовності, відображення, класи, екземпляри та винятки.

Деякі класи колекції можна змінювати. Методи, які додають, віднімають або переставляють своїх членів на місце і не повертають певний елемент, ніколи не повертають сам екземпляр колекції, але None.

Деякі операції підтримуються декількома типами об'єктів; зокрема, практично всі об'єкти можна порівняти за рівністю, перевірити на істинність і перетворити на рядок (із repr() функцією або дещо іншою str() функцією). Остання функція неявно використовується, коли об’єкт записується print()функцією.

Перевірка  істинності відношень 

Будь-який об'єкт може бути перевірений на істинність, на використання у if або в while стані або як операнд булевих операцій нижче.

За замовчуванням об'єкт вважається істинним, якщо його клас не визначає або __bool__() метод, який повертає, Falseабо __len__() метод, який повертає нуль, коли його викликають з об'єктом. 1 Ось більшість вбудованих об’єктів, які вважаються помилковими:

·         константи, визначені як хибні: Noneі False.

·         нуль будь-якого числового типу: 00.00jDecimal(0)Fraction(0, 1)

·         порожні послідовності і колекції: ''()[]{}set()range(0)

Операції та вбудовані функції, які мають логічний результат, завжди повертаються 0 або Falseдля false, 1або Trueдля true, якщо не вказано інше. (Важливий виняток: булеві операції orта andзавжди повертають один із їх операндів.)

Булеві операції - andornot

Ось такі логічні операції, упорядковані за зростанням пріоритету:

Операція

Результат

Примітки

x or y

якщо x хибне, то y , інакше x

(1)

x and y

якщо x хибне, то x , інакше y

(2)

not x

якщо x хибне, то True, інакшеFalse

(3)

Примітки:

1.    Це оператор короткого замикання, тому він обчислює лише другий аргумент, якщо перший хибний.

2.    Це оператор короткого замикання, тому він обчислює лише другий аргумент, якщо перший є істинним.

3.    notмає нижчий пріоритет, ніж небулеві оператори, тому інтерпретується як і є синтаксичною помилкою.not a == bnot (a == b)a == not b

Порівняння 

У Python існує вісім операцій порівняння. Усі вони мають однаковий пріоритет (який вищий, ніж у булевих операцій). Порівняння можна сковувати довільно; наприклад, еквівалентно , за винятком того, що y обчислюється лише один раз (але в обох випадках z взагалі не обчислюється, коли виявляється хибним).x < y <= zx < y and y <= zx < y

Ця таблиця підсумовує операції порівняння:

Операція

Значення

< 

строго менше ніж

<=

менше або дорівнює

> 

строго більше ніж

>=

більше або дорівнює

==

рівний

!=

не рівний

is

ідентичність об’єкта

is not

заперечена ідентичність об’єкта

Об'єкти різних типів, крім різних числових типів, ніколи не порівнюють рівними. ==Оператор завжди визначаються , але для деяких типів об'єктів (наприклад, клас об'єкти) еквівалентні is. В <<=>і >= оператори визначені тільки , де вони мають сенс; наприклад, вони викликають TypeErrorвиняток, коли одним із аргументів є комплексне число.

 https://pythontask.pp.ua/



Практична частина

Завдання 1. Реалізувати алгоритм вибору із чотирьох варіантів мовою програмування Python3 в середовищі Thonny.

Реалізація вибору.

x = int(input("Введіть ціле число: "))

if x < 0:

    x = 0

    print('Це відємне число')

elif x == 0:

     print('Це число - Zero')

elif x == 1:

     print('А, це одиниця')

else:

     print('це додатне число')

Завдання 2. Реалізувати алгоритм повтореня та переборів із лічильником мовою програмування Python3 в середовищі  Thonny.

Реалізація повторення або циклів

print("Зразок 1 кодування циклів з лічильником і кроком +1")

for i in range(5, 10):

      print(i)             #5, 6, 7, 8, 9

print("Зразок 2 кодування циклів з лічильником і кроком +3")

for n in range(0, 10, 3):

      print(n)             #0, 3, 6, 9

print("Зразок 3 кодування циклів з лічильником і кроком -30")

for k in range(-10, -100, -30):

      print(k)                #-10, -40, -70

print("Зразок 4 кодування циклів з лічильником по усім номерам")

x=[56,-78,9,0,-5,1]

for m in range(len(x)):

       print(2*m+x[m])

Завдання 3. Реалізувати алгоритм створення одновимірних масивів мовою програмування Python3  в середовищі  Thonny.

Реалізація основних операцій виведення елементів із одномірних масивів або списками

import random;   print("Oперації із списками на Python3")

print("Oперації над одномірними масивами на Python3")

k=6;   z=['None']*k;     y=[2**k+5*k]*(10-k);     x=[-3.95-k/4.5]*(8-k)

d=[random.randint(11,22)]*7;  print("Порожній масив або список:",z)

print("Нульовий масив або список:",y)

print("Числовий масив або список:",x)

print("Випадкове число у масиві або списку:",d)

squares = [1, 4, 9, 16, 25];   print(squares)

print("Початковий елемент",squares[0]) ; print("Останній елемент",squares[-1])

print("Останні три елементи",squares[-3:]); print("Усі елементи списку",squares[:])

print("Середні елементи списку",squares[2:4])

m=40;  q=[s for s in range(m,20,-8)];  print("Із кінця запис елементи списку",q)

h=6; 

for j in range(0,h):

     z[j]=((-1)**h)*random.randint(-897+h,922-h)

print("Випадкові числа у масиві або списку:", z)

 

Завдання 4. Реалізувати алгоритм операції створення одновимірних масивів(списками чисел) мовою програмування Python3  в середовищі  Thonny.

Реалізація основних операцій з одномірними масивами або списками (цикл всередині списку).

n=10;   g=[s for s in range(0, n)]

print("Усі елементи списку", g)

k=20;  f=[s for s in range(0, k, 3)]

print("Усі елементи списку 3k", f)

m=30;  q=[s for s in range(m, 0, -5)]

print("Не усі елементи списку", q)

h=40;  q=[s for s in range(h, 20, -8)]

print("Із кінця запис деяких елементів списку", q)

Завдання 5. Реалізувати алгоритм операцій з одновимірними масивами(списками) мовою програмування Python3  в середовищі  Thonny.

Реалізація основних операцій з одномірними масивами або списками(цикли з умовами).

import random

g=[s for s in range(0,50)];

p=[s for s in g if int(g[s])%4==1];

print("Усі елементи списку 4k+1:",p)

u=[s for s in g if int(g[s])%4!=1];

print("Усі елементи списку, окрім 4k+1:",u)

c=[s for s in g if int(g[s])%2==0];

print("Усі елементи списку 2k:",c)

u.append([1,2]);

print("Дописування [1,2] до  кінця елементів списку u=",u)

p.append(c);

print("Дописування списку c до  кінця елементівсписку p=",p)

u.extend([1,2]);

print("Дописування [1,2] до  кінця елементів списку u=",u)

p.extend(c); print("Дописування списку c до  кінця елементів списку p=",p)

p.insert(1,[0,0,0]);

print("Вставлення [0,0,0] у середину списку p=", p)

u.pop(3);

print("Видалення 4-го елементу із середину списку  u=",u)

u.pop(2);

print("Видалення 3-ого елементу",u.pop(2)," із середину списку  u=",u)

Завдання 6. Реалізувати алгоритм операцій з одновимірними масивами(списками) мовою програмування Python3  в середовищі  Thonny.

Реалізація основних операцій з одномірними масивами або списками(цикли з умовами).

import random

g=[s for s in range(0,50)];

h=12; p=[((-1)**h)*random.randint(-897+h,922-h) for s in g if int(g[s])%6==3];

print("Усі випадкові елементи списку  вигляду 23k+19:",p)

u=[s for s in g if int(g[s])%7!=5]; print("Усі елементи списку, окрім 41k+17:",u)

c=[((-1)**h)*random.randint(-897+h,922-h) for s in g if int(g[s])%10==0];

print("Усі випадкові елементи списку  вигляду списку 10k:",c)

u.remove(2)

print("Видалення елемента 2 із списку u=",u)

del u[0]

print("Вилучення 0-го елементу із списку u=",u)

u[0:2]=[]

print("Вилучення 0,-2-го елементів із списку u=",u)

u.pop(3)

print("Видалення 4-го елементу із середину списку  u=",u)

u.pop(2)

print("Видалення 3-ого елементу",u.pop(2)," із середину списку  u=",u)

u[2:3]=[-2,-4,-6,-8]

print("Видалення 2-ох елементів і долучення 4-ох елементів в середину списку  u=",u)

logic1=2 in [2,9,-5]; print('перевірка належності числа: 2 до списку [2,9,-5]',logic1)

logic2=0 in [2,9,-5]; print('перевірка належності числа: 0 до списку [2,9,-5]',logic2)

a=[2,9,-5,1,0, 2].index(2,3); print('пошук номера у масиві [2,9,-5,1,0, 2] для числа: 2 ',a)

b=[2,2,-5,2,0, 2].count(2); print('пошук у [2,2,-5,2,0, 2] кількості двійок: ',b)

w=sorted(u); print('упорядкування чисел за зростанням у масиві: ',w)

p.sort(); print('упорядкування чисел за зростанням у масиві: ',p)

f=p.copy();  print('копіювання чисел у масиві f=p: ',f)

f1=p[:]; f1[1]=0;f1[4]=0; f1[5]=0;  print('копіювання чисел і заміна на 0 у масиві f1=p: ',f1)

 

 

Результат виконаної практичної роботи це файли( із результатами виконання програм) надіслати вашому учителю на електронну скриньку: 
vinnser@gmail.com (Сергій Петрович)
ktdfz@i.ua (Юрій Васильович)


Додаткові завдання для самостійного вироблення  умінь, навичок компетенцій учнів

Програмування з числовими типами.

Завдання  на  IQ

Складіть програми мовою програмування або Scratch  або Python або  Pascal для розв´язування наступних задач

Найпростіші завдання з програмування

D1.Програма задає два випадкових додатних парних числа k та b.  Створити алгоритм мовою програмування, який спочатку додає до кожного числа однакове випадкове число, що більше 102, а потім знаходить потроєну суму  двох чисел.  А в  остаточному результаті  виводить остачу від  ділення знайденої суми на 18.

D2. Програма задає два випадкових непарних числа k та b, що більші, ніж 199 і менші 899.  Створити алгоритм мовою програмування, який спочатку знаходить квадрати обох чисел, а потім середнє арифметичне цих квадратів.  А в  остаточному результаті  виводить остачу від  ділення  середнього арифметичного на 11.

D3. Програма задає два випадкових непарних числа k та b, що більші, ніж 399 і менші 999.  Створити алгоритм мовою програмування, який спочатку знаходить більше число та його квадрат , а потім знаходить куб меншого числа,   а потім знаходить їхнє середнє арифметичне квадрату та кубу.  А в  остаточному результаті  виводить остачу від  ділення  середнього арифметичного на 14.

D4. Програма задає два випадкових непарних числа k та b, що більші, ніж 499 і менші 799.  Створити алгоритм мовою програмування, який спочатку знаходить більше число та його подвоює, а потім знаходить потроєне менше число,  а потім знаходить їхнє середнє арифметичне.  А в  остаточному результаті  виводить остачу від  ділення  середнього арифметичного на 18.


Для наступних завдань записати, реалізувати програму мовою програмування та протестувати її на правильність.

Завдання А1

А1. Задано одновимірний масив на 10 елементів типу випадкових цілих чисел із числового проміжку (-100;100). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який замінює елементи в заданому масиві на протилежні за знаком.

А2. Задано одновимірний масив на 5 елементів типу випадкових цілих чисел із числового інтервалу (-150; 120). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який замінює елементи в заданому масиві на квадрати.

А3. Задано одновимірний масив на 7 елементів типу випадкових цілих чисел із числового інтервалу (-950; 820). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який замінює елементи в заданому масиві на вдвічі збільшені.

А4. Задано одновимірний масив на 8 елементів типу випадкових дробових чисел із числового інтервалу (-9; 8). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість додатних елементів масиву.

А5. Задано одновимірний масив на 20 елементів типу випадкових дробових чисел із числового інтервалу (-95; 80). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість від´ємних елементів масиву.

А6. Задано одновимірний масив на 18 елементів типу випадкових дробових чисел із числового інтервалу (-29; 89). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість додатних елементів масиву.

А7. Задано одновимірний масив на 20 елементів типу випадкових дробових чисел із числового інтервалу (-95; 80). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість від´ємних елементів масиву.

А8. Задано одновимірний масив на 12 елементів типу випадкових дробових чисел із числового інтервалу (-79; 89). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує середнє арифметичне додатних елементів масиву.

А9. Задано одновимірний масив на 10 елементів типу випадкових дробових чисел із числового інтервалу (-65; 60). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує середнє арифметичне від´ємних елементів масиву.

А10. Задано одновимірний масив на 10 елементів типу випадкових дробових чисел із числового інтервалу (-65; 60). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість парних від´ємних елементів масиву.

 

Двовимірні масиви

Завдання А2

А21. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці)  елементів типу випадкових цілих чисел із числового проміжку (-100;100). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який замінює елементи в заданому масиві на протилежні за знаком.

А22. Задано двовимірний масив розміром 5х4( 5 рядків, чотири стовпці)  елементів типу випадкових цілих чисел із числового інтервалу (-150; 120). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який замінює елементи в заданому масиві на квадрати.

А23. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці)  елементів типу випадкових цілих чисел із числового інтервалу (-950; 820). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який замінює елементи в заданому масиві на вдвічі збільшені.

А24. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці)  елементів типу випадкових дробових чисел із числового інтервалу (-9; 8). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість додатних елементів масиву.

А25. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці)  елементів типу випадкових дробових чисел із числового інтервалу (-95; 80). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість від´ємних елементів масиву.

А26. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці)  елементів типу випадкових дробових чисел із числового інтервалу (-29; 89). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість додатних елементів масиву.

А27. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці)  елементів типу випадкових дробових чисел із числового інтервалу (-95; 80). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість від´ємних елементів масиву.

А28. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці) елементів типу випадкових дробових чисел із числового інтервалу (-79; 89). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує середнє арифметичне додатних елементів масиву.

А29. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці) елементів типу випадкових дробових чисел із числового інтервалу (-65; 60). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує середнє арифметичне від´ємних елементів масиву.

А30. Задано двовимірний масив розміром 3х4(три рядки, чотири стовпці) елементів типу випадкових дробових чисел із числового інтервалу (-65; 60). Створити алгоритм мовою програмування Python в середовищі програмування Thonny, який підраховує кількість парних від´ємних елементів масиву.

 


Додаткові завдання на розвиток кмітливості

Немає коментарів:

Дописати коментар