Skip to content

Instantly share code, notes, and snippets.

View sunmeat's full-sized avatar
🐈
MEOW

Oleksandr Zahoruiko sunmeat

🐈
MEOW
View GitHub Profile
@sunmeat
sunmeat / tasks.md
Created October 16, 2025 11:54
друге ДЗ

виконати на вибір 1 будь-яке завдання. код проєкту викласти в публічний репозиторій, посилання на репозиторій надіслати в коментар до цього ДЗ. якщо це завдання вже було зроблено в ДЗ1, то обрати інше з цього списку :)

  1. Передати на друге актівіті через інтент об'єкт типу Cat або Student. Витягти з переданого об'єкта основні дані, показати тостом.

  2. Програмно отримати мовні налаштування системи, і в залежності від вибраної мови розмістити на імедж-баттоні на весь екран пристрою прапор тієї чи іншої країни.

  3. Натискання на кнопку виводить у тост текст улюбленої пісні по одному куплету/приспіву. Коли закінчується текст пісні, починати показ першого куплета. На фоні може грати музика із цієї пісні.

@sunmeat
sunmeat / different files.java
Created October 14, 2025 17:26
web view android example
MainActivity.java:
package com.alex.webviewexample;
import android.os.Bundle;
import android.webkit.WebView;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
@sunmeat
sunmeat / activity_main.xml
Created October 14, 2025 10:40
constraint layout android example
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F0F4F8">
<ImageView
android:id="@+id/logo"
@sunmeat
sunmeat / activity_main.xml
Created October 14, 2025 10:31
frame layout example android
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF5722">
<View
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#80000000" />
@sunmeat
sunmeat / tasks.md
Last active October 15, 2025 11:56
перше ДЗ android

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

  1. Передати на друге актівіті через інтент об'єкт типу Cat або Student. Витягти з переданого об'єкта основні дані, показати тостом.

  2. Кожен клік по кнопці трохи збільшує її ширину. Кнопка завжди повинна бути по центру екрана.

  3. Кнопка рахує кількість кліків по ній, і виводить цю кількість на себе. Приблизно після 20-го кліка кнопка повинна «зламатися». Ефект «поломки» реалізувати на власний розсуд (наприклад, кнопку можна зробити неактивною, або її текст змінюється на «догрався» і вона просто перестає відповідати на натискання).

@sunmeat
sunmeat / task.md
Created October 10, 2025 10:21
ДЗ на сервлети + кукі

Реалізувати механізм вибору теми (темної або світлої) для веб-сторінки за допомогою радіо-кнопок.

Вибір має зберігатися в кукі, щоб при повторному завантаженні сторінки тема автоматично застосовувалася, а відповідна радіо-кнопка була активною та в фокусі.

Вимоги до реалізації:

  1. Інтерфейс вибору теми:
    • Створіть дві радіо-кнопки з однаковим атрибутом name="theme":
      • Перша: значення value="dark", мітка "Темна тема" (тло — чорне або сіре, текст — світлий для читабельності).
      • Друга: значення value="light", мітка "Світла тема" (тло — біле, текст — темний для читабельності).
  • Розмістіть їх у зручній формі або блоці для користувача.
@sunmeat
sunmeat / task.md
Created October 9, 2025 13:09
events hometask C#

Завдання з подіями для класу Student

  • Додати подію LectureMissed, яка спрацьовує, якщо при виклику методу CheckTime поточний системний час перевищує час початку пари о 16:45. Обробник надсилає жартівливе нагадування з порадою "Швидко вмикай онлайн-трансляцію!".
  • Додати подію AutomatReceived, яка генерується при автоматичній високій оцінці (наприклад, 100% за залік). Обробник вітає з "автоматом" і пропонує святкувати кавою.
  • Додати подію ScholarshipAwarded, яка виникає при досягненні середнього балу >=10. Обробник симулює приємне повідомлення: "Вітаємо! Ви отримуєте стипендію!".

Завдання з подіями для класу Group

  • Додати подію GroupPartyPlanned, яка активується при досягненні 100% успішності сесії всією групою (всі здали на відмінно). Обробник пропонує ідеї для свята: "Піца та рево на всіх!".
  • Додати подію SessionSurvived, яка спрацьовує після успішного складання сесії всіма. Обробник надсилає групове повідомлення: "Ура, сесія позаду! Час на відпочинок у парку".
@sunmeat
sunmeat / Program.cs
Created October 9, 2025 13:01
event args C#
/*
Події — це особливий тип багатонадресних делегатів, які можна викликати лише з класу
або структури, в якій вони оголошені (клас видавця).
Якщо на подію підписані інші класи або структури,
їхні методи обробники подій будуть викликані, коли клас видавець ініціює подію.
Події дозволяють класу або об'єкту повідомляти інші класи або об'єкти
про виникнення певних ситуацій.
Клас, що надсилає (або викликає) подію, називається видавцем, а класи,
що приймають (або обробляють) подію, називаються підписниками.
@sunmeat
sunmeat / Program.cs
Created October 9, 2025 12:39
files & web
using System.Net;
using System.Text;
namespace ConsoleEvents
{
public class FileDownloader
{
public event EventHandler<double>? ProgressChanged;
public event EventHandler<string>? DownloadCompleted;
@sunmeat
sunmeat / Program.cs
Created October 9, 2025 12:13
подія в класі Console + реакція на закриття вікна
// https://habr.com/ru/articles/213809/
// https://habr.com/ru/articles/148562/
// https://learn.microsoft.com/uk-ua/dotnet/csharp/programming-guide/events/
using System.Text;
namespace ConsoleEvents
{
class Program
{