SEC 20W4 || Булькотливі оператори - умовні та логічні

in Ukraine on Steemlast month (edited)

SEC 20W4 (1).jpg

SDXL 1.0 та Photopea

1. Дійти до п'ятизначного числа від 1 до 18339, універсальним оптимальним способом, щоб зрозуміти принцип, використовуючи лише +1 та *2.

Шось це не дуже мені дійшло, бо універсальний спосіб, це якась автоматизація процесу на декілька рядків коду. Тож не зовсім мені дійшло, може й не дійде. Хоча ШІ запропонував зворотний проце, тобто взяти число й ділити коли парне та віднімати один коле не парне, щоб дізнатись потрібну кулькість кроків, які потім виконати в порядку зростання й замість ділення й віднімання буде множення та додавання, відповідно до умов. Наприклад, за цією схемою для 18339 це буде 21 крок, інакше довго врийдеться визначати підбором чи підрахунком й довго довго думать, як більші числа то роботи на цілий день, тиждень, місяць і т.п.))

2. Яке призначення булевих змінних? Чому вони так називаються?

У нас в Україні, колись одні іноземні кубики робили: "Галіна Бланка, буль-буль". А англійський пан Джордж Буль добре розумівся із цифрами. Отже булеві змінні названи саме на його честь. Вони по суті мають два значення Так і Ні, що визначаєтьсся правдою (true) та не правдою (false). Типу як вимикач on/off. ON це істина (true), коли увімкнений світло горить (якщо є), а OFF не істина (false) й світло не горить. Тру тру й фальш стрираю. Може ще бути як 1 та 0, з тими ж значеннями, зустрічається в системних налаштуваннях Windows й багато де.

Тож булеві змінні призначені для встановлення істини та не правди, щоб на основі цих даних виконувати інші операції, в тому числі маніпуляції даними та отримання інформації.

3. Яке призначення умовного оператора? Яким він буває?

Є декілька умовних операторів. Із тих що подано в цьому уроці, можна зазначити:

if - якщо, призначене для виконання коду, коли буде отримано зрачення true;
else if - інше якщо, якщо встановлено false, тоді буде задіяний код розміщений в цьому контейнері;
else - інше, це наступний варіант після встановлення falce, буде діяти він.
Є ще одни - switch, для обєднання більшої кількості варіантів.
Майже так написано на сайті W3.

Копнувши глибше, то можна зрозуміти, що умовні оператроти обробляють інформацію чи керують напрямками, після встановлення true або false. А щоб до отримати фактичні значенн 1 або 0, задаються логічні змінні відповідно до поставлених задач. Тобто логічні змінні шляхом перевірок фільтрують і направляють іформацію до результату, щоб подати для умовного оператора один із двух сигналів - істина чи не правда, які потім перебирають інші варіанти.

4. Написати програму для перевірки підписки на один обіковий запис

Це просте, треба задати просту логічну переревірку >=0.

#include <iostream>
using namespace std;
int main()
{
int follow = 0;

if(follow >= 0)
    cout<<"Відсутні підписки на один обліковий запис";
else
    cout<<"Так";

return 0;
}

5. Написати програму для перевірки, чого більше підписників чи опублікованих дописів на steemit.com

Додати два int та проста умова >, для перевірки, що більше.

#include <iostream>
using namespace std;

int main() {
    int pidpysnyky = -2;
    int dopysy = 168;

    if (dopysy > pidpysnyky) {
        cout << "Більше дописів";
    } else {
        cout << "Більше підписників";
    }

    return 0;
}

6. Програма на перевірку трьох варіантів, чого більше - підписників, дописів чи SteemPower

Трохи більше вхідних даних, аж три різні чила. Задати логічні умови для операторі, що оде із чисел має бути одночасно > більше інших двох, за допомогою && об'єднання.

#include <iostream>
using namespace std;

int main() {
    int pidpysnyky = -2;
    int dopysy = 168;
    int steempower = 145;

    if (dopysy > pidpysnyky && dopysy > steempower) {
        cout << "Більше дописів";
    } else if (pidpysnyky > dopysy && pidpysnyky > steempower) {
        cout << "Більше підписників";
    } else
        cout << "Більше СтімСили";

    return 0;
}

7. Програма для визначення що більше, добуток чи сума двох чисел.

Два числа та простенька логічна формула u * a > u + a.

#include <iostream>
using namespace std;

int main() {
    int u = 333;
    int a = 888;

    if (u * a > u + a) {
        cout << "Добуток двох чисел більше за суму";
    }
    else {
        cout << "Сума більше ";
    }
    return 0;
}

8. По двум номера будинків взиначити, чи на одній вони знаходяться вулиці, за умови що на одному боці парні номери, а на іншому ні.

Оце було цікаво, бо довелось питати ШІ чого не працює код, адеж все правильно, а виявилось замість =, має бути == дорівнює. Щодо формули логічного ланцюга, то потрібно щоб одним махо перевіряло чи на одному боці вулиці будинки, якщо вони парні, або ні, а розпарки по різні боки. Тож трохи більше довелось подумати, але це простіше ніж перше завдання.

#include <iostream>
using namespace std;

int main() {
    int u = 333;
    int a = 888;

    if (u % 2 == 0 && a % 2 == 0 || u % 2 == 1 && a % 2 == 1 ) {
        cout << "Будинки на одному боці вулиці";
    }
    else {
        cout << "Будинки на різних боках вулиці ";
    }
    return 0;
}

9. Дано число вияснити чи правда що воно більше ніж з чотирьох цифр, чи ділиться на 7 і не ділиться на 3.

Суть як у попередньому тільки один варіант із трьома логічними перевірками одночасно u >= 1000 && u % 7 == 0 && u % 3 != 0.

#include <iostream>
using namespace std;

int main() {
    int u = 1001;

    if (u >= 1000 && u % 7 == 0 && u % 3 != 0) {
        cout << "Відповідає умовам";
    }
    else {
        cout << "Не відповідає умовам";
    }
    return 0;
}

10. Яка цифра у двозначного числа 78 більша перша чи друга?

До цього можна було додуматись (основного принципу), але не хотілось, розумна залізяка підказала рішення.

#include <iostream>
using namespace std;

int main() {
    int number = 78; // Двозначне число
    int firstDigit = number / 10; // Перша цифра
    int secondDigit = number % 10; // Друга цифра

    if (firstDigit > secondDigit) {
        cout << "Перша цифра (" << firstDigit << ") більша за другу цифру (" << secondDigit << ")." << endl;
    } else if (firstDigit < secondDigit) {
        cout << "Друга цифра (" << secondDigit << ") більша за першу цифру (" << firstDigit << ")." << endl;
    } else {
        cout << "Цифри однакові." << endl;
    }

    return 0;
}

Висновок

Завдання з 4 по 9 було легше зрозуміти, по суті для шаблона одного коду, просто змінювати логічні ланцюжки, додавати int та умовних операторів чи зменшувати, зележно від завдання, тож це вийшло майже самостійно, за винятком консультаційних питань та знаходження деяких момилок в синтаксисі, як-то = замість правильного == дорівнює. Останнє наче трохи дійшло (принцип), коли було побачено готовий результат, а перше ще десь на шляху до розуміння, але може й не дійде (ото посміюсь із себе як дізнаюсь правильне рішення).


Цікава знахідка
Здибався сайт W3 для навчання коду, навіть локалізація українською


Запрошую прийняти участь @очищення @зцілення @гармонія (формально для виконання умов)


#ukraine #sec20w4 #sec20w4sergeyk #club5050

Sort:  
Loading...

Congratulations! - Your post has been upvoted through steemcurator06

8.jpg

Curated by : @fantvwiki - Selective Team

 last month 

Дякую ☀️☀️

Coin Marketplace

STEEM 0.19
TRX 0.18
JST 0.041
BTC 90232.95
ETH 3189.81
USDT 1.00
SBD 2.87