пʼятницю, 29 листопада 2019 р.

Декілька класичних задач на опрацювання рядкових величин

Приклад 1.

Чи є слово паліндромом?

slovo=input()
sl=slovo.lower()
ls=sl[::-1]
if ls==sl:
    print('Це паліндром')
else:
    print('Це не паліндром')

Самостійно 

Чи є вираз паліндромом? Наприклад,  
Я несу гусеня
Де помити мопед?

Приклад 2.

Підрахувати кількість великих і малих літер, кількість цифр у виразі

s=input()
v=0
m=0
c=0
for bukva in s:
    if bukva.isupper():
        v+=1
    if bukva.islower():
        m+=1
    if bukva.isdigit():
        c+=1
print('Великих літер - ',v)
print('Малих літер - ',m)
print('Цифр - ',c)

Приклад 3.

Перетворити Прізвище Ім'я  По-батькові на рядок Ініціали Прізвище

Наприклад, Ковальова Анна Вікторівна стане А.В.Ковальова


s=input()
n=s.find(' ')
k=s.find(' ',n+1)
pr=s[:n]
im=s[n+1:k]
pb=s[k+1:]
print(im[0],'.',pb[0],'.',pr)
print(im[0],'.',pb[0],'.',pr,sep='')

a=s.split()
print(a)
Im=a[1][0]
Pb=a[2][0]
print(Im,'.',Pb,'.',a[0],sep='')

Приклад 4.

Видалити голосні літери

golosni='УЕІАОЄЯИЮуеіаоєяию'
text=input()
newtext=''
for bukva in text:
    if bukva not in golosni:
        newtext=newtext+bukva
print(newtext) 


Приклад 5.

Видалити з рядка символи, які повторюються

s=input()
for bukva in s:
    if s.count(bukva)>1:
        s=s.replace(bukva,'',s.count(bukva)-1)
print(s)

Приклад 6.

Чи можна з одного слова скласти інше?

Наприклад, "інформатика" - "форма" (скласти можна), а "інформатика" - "макет" (ні)

slovo1=input()
slovo2=input()
pok=True
for bukva in slovo2:
    if bukva not in slovo1:
        pok=False
if pok:
    print('слово скласти можна')
else:
    print('слово скласти не можна')

Самостійно

1. Яких літер бракує, щоб скласти слово.
2. Викреслити зі слова всі літери, які містяться в іншому. Наприклад, є слово "інформатика", друге слово - "форма", а отримуємо "інтик"

Самостійно *

 


Рядкові величини. Класичні алгоритми опрацювання рядкових величин

Рядки використовуються для зберігння і опрацювання текстової інформації.
Рядки є незмінним типом даних.

Запис рядка:

s='мама мила раму'
або
s="мама мила р'аму"

Тип даних - string(str)

print(type(s))

<class 'str'>

Друк рядка, елементів, диапазону

print(s)
print(s[0])
print(s[5:10])

мама мила раму                                                                                                         
м
мила

Друк рядка в декілька рядків (символ \n)

s="мама \nмила \nраму"
print(s)

мама                                                                                                                   
мила                                                                                                                   
раму

Довжина рядка

print(len(s))

14
16 (з символом \n)

Перетворення в список

s='рядок'
print(s)
print(s.split())

рядок                                                                                                                  
['рядок']

Обернений рядок

print(s[::-1])

кодяр

Коди символів (функції ord(<літера>) та chr(<число>))

print('код літери м - ',ord('м'))
print('код літери М - ',ord('М'))
print('код літери m - ',ord('m'))
print('літера коду 111 - ',chr(111))

код літери м -  1084                                                                                                   
код літери М -  1052                                                                                                   
код літери m -  109                                                                                                    
літера коду 111 -  o

Рядок з заглавної літери

s='рядок'
print(s.title())

Рядок 

Перетворення рядка в верхній регістр

s='AaBbCc'
s1=s.upper()
print(s1)

AABBCC

Перетворення рядка в нижній регістр

s2=s.lower()
print(s2)

aabbcc

Перевіряємо чи є рядок числовим 

s1="123"
s2='AaBbCc'
s3='123abc'
print(s1.isdigit())
print(s2.isdigit())
print(s3.isdigit())

True
False
False

Перевіряємо чи всі літери рядка верхнього регистру

s1='рядок'
s2='123abc'
s3='123abC'
s4='123ABC'
print(s1.isupper())
print(s2.isupper())
print(s3.isupper())
print(s4.isupper())

False                                                                                                                  
False                                                                                                                  
False                                                                                                                  
True

Перевіряємо чи всі літери рядка нижнього регистру

print(s1.islower())
print(s2.islower())
print(s3.islower())
print(s4.islower())

True                                                                                                                   
True                                                                                                                   
False                                                                                                                  
False

Перевіряємо чи підрядок входить до рядка

s='Тут був Вася'
print('Вася' in s)

True

Пошук в рядку

з початку
print(s.find('у'))

1
з деякої позиції
print(s.find('у',2))

5
з кінця
print(s.rfind('у'))

5

Підрахуємо скільки раз підрядок входить до рядка

print(s.count('у'))

2

Заміна символу або декількох

s='Тут був Вася'
s1='мама мила раму'
print(s.replace('с','н'))

print(s1.replace('м','с',2))

Тут був Ваня
саса мила раму

неділю, 10 листопада 2019 р.

Авторське право


Пошук інформації в Інтернеті

ПОШУК В ІНТЕРНЕТІ

Пошукова система — це комплекс програм і потужних комп’ютерів, здатних приймати, аналізувати й обслуговувати запити користувачів з пошуку даних в Інтернеті.

https://shukalka.com.ua/


https://www.kiddle.co/


Kiddle блокує запити, здатні привести на сторінки, які дітям бачити не рекомендується. Крім того, пошуковик сортує сайти у видачі таким чином, щоб дітям було легше знайомитися з новою інформацією.
Kiddle використовує безпечний пошук Google, але американська компанія не запускала дитячий пошуковик.

https://www.alarms.org/kidrex/

Картинки по запросу "kidrex""

https://www.kidzsearch.com/


Знайти наступну інформацію:

  1. Хто першим придумав словосполучення "Всесвітня павутина" (’World Wіde Web’) і в якому році?
  2. Хто такий Дж. К.Р. Ліклайдер?
  3. Що таке ARPANET?
  4. Що таке Ethernet?
  5. Як називався перший пошуковик у Мережі?

Результат пошуку оформити на слайдах

Деякі правила створення вірних запитів

1. !Україна - точна словоформа
2. [перемагають] - форми дієслова (однокореневі слова не враховуються)
3. "Рідна мати моя" - точна фраза
4. "людина * не літає" - якщо у фразі забули деякі слова
5. школа програмування & Кропивницький - ключові слова в одному реченні
6. школа програмування +Кропивницький - ключові слова в одному документі
7. Енеїда -мультфільм - пошук без мультфільму
8. @gntn - пошук за нікнеймом 
9. #гнтн - пошук за актуальним хештегом

Тест 4. Python


Тест 3. Python


четвер, 7 листопада 2019 р.

Міні-проект "Алгоритми для рішення мат.задач з використанням функції"

Завдання


  • Розробити програму для рішення будь-якої математичної задачі 
  • Один або декілька блоків обчислення оформити у вигляді функцій
  • Програмний код розбавити коментарями
  • Протестувати задачу на декількох вхідних даних
  • Перевірити своє рішення на сайті онлайн-калькулятор https://ru.onlinemschool.com/math/assistance/vector/ або на іншій платформі
  • Оформити звіт на своєму блозі, використовуючи скріншоти програмного коду, результату роботи програми і відповідей з онлайн-калькулятора

Приклад

Трикутник заданий трьома своїми вершинами. Знайти:
  • Площу трикутника по формулі Герона
  • Площу через вектори
  • Кут між векторами

Рішення

В задачі було сформовано 5 функцій:


Програмний код для обчислень:


Тестування


  • Перший тест
    1. Результат програми

    2. Онлайн-калькулятор





    • Другий тест
    1. Результат програми


    2. Онлайн-калькулятор



    понеділок, 4 листопада 2019 р.

    Самостійна робота. Цикли

    1. Факторіалом числа n називається вираз 1 × 2 × ... × n. Позначення: n!.
    За даним натуральним n обчисліть значення n!. Користуватися математичної бібліотекою math в цьому завданні заборонено.
    Вхідні дані
    7
    Вихідні дані
    5040

    2. Клієнт поклав на депозит в банк 1000 грн. під 25% річних на n-кількість років (n запитувати на початку програми). Програма повинна підрахувати скільки грошей отримає вкладник через n років (результат округлити до сотих).
    Вхідні дані
    5
    Вихідні дані
    3051.76

    3. Маємо нескінченну послідовність із цілих чисел, перше з яких 0, а кожне наступне на d більше. Програма повинна вивести суму перших n чисел в цій послідовності, включаючи і число 0. Значення параметрів n i d запитувати на початку програми.
    Вхідні дані
    14
    2
    Вихідні дані
    56

    4. За даним цілим числом n роздрукуйте всі квадрати натуральних чисел, що не перевищують n, в порядку зростання.
    Вхідні дані
    10
    Вихідні дані
    1
    4
    9

    5. Дано ціле число, що не менше 2. Виведіть його найменший натуральний дільник, відмінний від 1.
    Вхідні дані
    15
    Вихідні дані
    3

    6. За даним натуральним числом n знайдіть найбільшу цілу степінь двійки, яка не перевищує n. Виведіть показник степеня і саму степінь. Операцією піднесення до степеню користуватися не можна!
    Вхідні дані
    50
    Вихідні дані
    5 32

    7. Дано n чисел: спочатку вводиться число n, потім вводиться рівно n цілих чисел. Підрахуйте кількість нулів серед введених чисел і виведіть цю кількість. Вам потрібно підрахувати кількість чисел, рівних нулю, а не кількість цифр.
    Вхідні дані
    5
    0
    200
    0
    700
    2
    Вихідні дані
    2

    8. За даним натуральним n ≤ 9 виведіть драбинку з n сходинок, i-та сходинка складається з чисел від 1 до i без пробілів.
    Вхідні дані
    5
    Вихідні дані
    1
    12
    123
    1234
    12345